foreach (ALL_VAR ${ALL_VARS})
string (REGEX MATCH "^3RDPARTY_([^_]*)_DLL$" DLL_FOUND ${ALL_VAR})
if (DLL_FOUND)
+ set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}CREATE_IMPORTED_TARGET (${CMAKE_MATCH_1} ${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}_DLL}\" TRUE)\n")
set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_${CMAKE_MATCH_1}_DLL_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}_DLL}\")\n")
endif()
string (REGEX MATCH "^3RDPARTY_([^_]*)_LIBRARY$" LIB_FOUND ${ALL_VAR})
if (LIB_FOUND)
+ set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}CREATE_IMPORTED_TARGET (${CMAKE_MATCH_1} ${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}_LIBRARY}\" FALSE)\n")
set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_${CMAKE_MATCH_1}_LIBRARY_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}_LIBRARY}\")\n")
endif()
string (REGEX MATCH "^3RDPARTY_([^_]*_INCLUDE_DIR$)" INC_FOUND ${ALL_VAR})
if (INC_FOUND2)
set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_${CMAKE_MATCH_1}_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}}\")\n")
endif()
- string (REGEX MATCH "^3RDPARTY_VTK_DLL_DIR$" VTK_DLLDIR_FOUND ${ALL_VAR})
- if (VTK_DLLDIR_FOUND)
- set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_VTK_DLL_DIR_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_VTK_DLL_DIR}\")\n")
+ string (REGEX MATCH "^3RDPARTY_([^_]*_DLL_DIR$)" DLLDIR_FOUND ${ALL_VAR})
+ if (DLLDIR_FOUND)
+ set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_${CMAKE_MATCH_1}_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}}\")\n")
endif()
- string (REGEX MATCH "^3RDPARTY_VTK_LIBRARY_DIR$" VTK_LIBDIR_FOUND ${ALL_VAR})
- if (${VTK_LIBDIR_FOUND})
- set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_VTK_LIBRARY_DIR_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_VTK_LIBRARY_DIR}\")\n")
+ string (REGEX MATCH "^3RDPARTY_([^_]*_LIBRARY_DIR$)" LIBDIR_FOUND ${ALL_VAR})
+ if (LIBDIR_FOUND)
+ set (SET_OpenCASCADE_3RDPARTY "${SET_OpenCASCADE_3RDPARTY}set (3RDPARTY_${CMAKE_MATCH_1}_${OCCT_CONFIGURATION_UPPER} \"${3RDPARTY_${CMAKE_MATCH_1}}\")\n")
endif()
endforeach()
configure_file("${CMAKE_SOURCE_DIR}/adm/templates/OpenCASCADECompileDefinitionsAndFlags.cmake.in" "OpenCASCADECompileDefinitionsAndFlags-${OCCT_CONFIGURATION_LOWER}.cmake" @ONLY)
# This file is configured by OpenCASCADE.
#
+macro (CREATE_IMPORTED_TARGET TARGET_NAME CONFIGURATION TARGET_LIBRARY_FILE_PATH IS_DYNAMIC_LIBRARY)
+ # Create imported target
+ if (NOT TARGET ${TARGET_NAME})
+ add_library(${TARGET_NAME} SHARED IMPORTED)
+ endif()
+
+ # Append new configuration to the target
+ get_property (TARGET_IMPORTED_CONFIGURATIONS TARGET ${TARGET_NAME} PROPERTY IMPORTED_CONFIGURATIONS)
+ list (FIND TARGET_IMPORTED_CONFIGURATIONS ${CONFIGURATION} IS_ALREADY_ADDED)
+ if (${IS_ALREADY_ADDED} EQUAL -1)
+ set_property(TARGET ${TARGET_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${CONFIGURATION})
+ endif()
+
+ if (IS_DYNAMIC_LIBRARY)
+ # Add *.dll(Windows)/*.so(Linux)/*.dylib(MacOS) library to the target
+ if (NOT "${TARGET_LIBRARY_FILE_PATH}" STREQUAL "")
+ set_target_properties(${TARGET_NAME} PROPERTIES IMPORTED_LOCATION_${CONFIGURATION} "${TARGET_LIBRARY_FILE_PATH}")
+ list(APPEND _IMPORT_CHECK_FILES_FOR_${TARGET_NAME} "${TARGET_LIBRARY_FILE_PATH}" )
+ endif()
+ else()
+ # Add library *.lib to the target for Windows platform
+ if (WIN32)
+ if (NOT "${TARGET_LIBRARY_FILE_PATH}" STREQUAL "")
+ set_target_properties(${TARGET_NAME} PROPERTIES IMPORTED_IMPLIB_${CONFIGURATION} "${TARGET_LIBRARY_FILE_PATH}")
+ list(APPEND _IMPORT_CHECK_FILES_FOR_${TARGET_NAME} "${TARGET_LIBRARY_FILE_PATH}")
+ endif()
+ endif()
+ endif()
+endmacro()
+
@SET_OpenCASCADE_3RDPARTY@
\ No newline at end of file