From 0f857283e85d8966e6fa5cade76baf15804ca0b5 Mon Sep 17 00:00:00 2001 From: Stinkfist0 Date: Mon, 8 Aug 2016 01:40:26 +0300 Subject: [PATCH] CMakeLists.txt: append possible extra libraries to OPENCASCADE_LIBRARIES before the variable is used for any target. --- cmake/CMakeLists.txt | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt index 0d89016828..201b3e8fd5 100644 --- a/cmake/CMakeLists.txt +++ b/cmake/CMakeLists.txt @@ -244,6 +244,17 @@ IF(COLLADA_SUPPORT) ENDIF() ENDIF() +# Make sure cross-referenced symbols between static OCC libraries get +# resolved. Also add thread and rt libraries. +get_filename_component(libTKernelExt ${libTKernel} EXT) +if("${libTKernelExt}" STREQUAL ".a") + find_package(Threads) + if (NOT APPLE) + set(LIB_RT "rt") + endif() + set(OPENCASCADE_LIBRARIES ${OPENCASCADE_LIBRARIES} ${OPENCASCADE_LIBRARIES} ${OPENCASCADE_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${LIB_RT} dl) +endif() + # TODO Are these needed on other platforms still or can these be removed for good? IF (NOT WIN32) INCLUDE(CheckIncludeFileCXX) @@ -474,17 +485,6 @@ if (IFCCONVERT_DOUBLE_PRECISION) set_target_properties(IfcConvert PROPERTIES COMPILE_FLAGS -DIFCCONVERT_DOUBLE_PRECISION) endif() -# Make sure cross-referenced symbols between static OCC libraries get -# resolved. Also add thread and rt libraries. -get_filename_component(libTKernelExt ${libTKernel} EXT) -if("${libTKernelExt}" STREQUAL ".a") - find_package(Threads) - if (NOT APPLE) - set(LIB_RT "rt") - endif() - set(OPENCASCADE_LIBRARIES ${OPENCASCADE_LIBRARIES} ${OPENCASCADE_LIBRARIES} ${OPENCASCADE_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} ${LIB_RT} dl) -endif() - TARGET_LINK_LIBRARIES(IfcConvert ${IFCOPENSHELL_LIBRARIES} ${OPENCASCADE_LIBRARIES} ${Boost_LIBRARIES} ${OPENCOLLADA_LIBRARIES} ${ICU_LIBRARIES}) if (NOT WIN32) SET_INSTALL_RPATHS(IfcConvert "${IFCOPENSHELL_LIBARY_DIR};${OCC_LIBRARY_DIR};${Boost_LIBRARY_DIRS};${OPENCOLLADA_LIBRARY_DIR};${ICU_LIBRARY_DIR}")