[CMake] race condition with target_objects
Juan E. Sanchez
juan.e.sanchez at gmail.com
Mon Jun 25 15:09:32 EDT 2018
Hi,
I am getting a race condition when I do a parallel build.
Having an OBJECT library in one directory:
ADD_LIBRARY(symdiff_objects OBJECT ${CXX_SRCS} ${MC_SRCS})
set_property(TARGET symdiff_objects PROPERTY POSITION_INDEPENDENT_CODE ON)
And then having that object library being used in another directory:
TARGET_LINK_LIBRARIES (symdiff_tcl $<TARGET_OBJECTS:symdiff_objects>
${TCL_ARCHIVE})
Results in this error with a parallel build:
15%] Building CXX object
src/engine/CMakeFiles/symdiff_static.dir/EquationObject.o
make[2]: *** No rule to make target
`src/engine/CMakeFiles/symdiff_objects.dir/EquationObject.o', needed by
`src/tclcomp/libsymdifftcl.dylib'. Stop.
make[2]: *** Waiting for unfinished jobs....
Serial builds work fine. How do I tell cmake to wait? This is cmake
3.9.0-rc4 running on os x with the makefile generator.
Regards,
Juan
More information about the CMake
mailing list