From f41a5a91e460f462a7bbac5dac0e7bcf75b6be9f Mon Sep 17 00:00:00 2001 From: Pasukhin Dmitry Date: Thu, 24 Jul 2025 09:49:19 +0100 Subject: [PATCH] Configuration, CMake - Flexible project root (#641) - Replaces all `CMAKE_SOURCE_DIR` references with `OCCT_ROOT_DIR` across CMake files - Updates build templates to use the new root directory variable - Modifies environment variable configurations to use the flexible root path --- CMakeLists.txt | 20 +++++------ adm/cmake/flex.cmake | 8 ++--- adm/cmake/occt_doc.cmake | 46 ++++++++++++------------ adm/cmake/occt_gtest.cmake | 50 +++++++++++++------------- adm/cmake/occt_macros.cmake | 42 +++++++++++----------- adm/cmake/occt_resources.cmake | 10 +++--- adm/cmake/occt_toolkit.cmake | 2 +- adm/cmake/qt_macro.cmake | 8 ++--- adm/templates/DRAWEXE.vcxproj.user.in | 40 ++++++++++----------- adm/templates/custom.build.bat.in | 12 +++---- adm/templates/custom.build.sh.in | 12 +++---- dox/CMakeLists.txt | 4 +-- samples/qt/IESample/CMakeLists.txt | 4 +-- samples/qt/OCCTOverview/CMakeLists.txt | 2 +- samples/qt/Tutorial/CMakeLists.txt | 4 +-- 15 files changed, 132 insertions(+), 132 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index aaec43af87..b1b6e962f3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,8 @@ cmake_minimum_required (VERSION 3.10 FATAL_ERROR) +# Define OCCT root directory as a cache variable - works for both standalone and subproject builds +set(OCCT_ROOT_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE PATH "Root directory of OCCT project" FORCE) + if (NOT DEFINED BUILD_USE_VCPKG) set (BUILD_USE_VCPKG OFF CACHE BOOL "Use vcpkg for 3rdparty libraries.") if (CMAKE_TOOLCHAIN_FILE MATCHES "vcpkg.cmake") @@ -31,7 +34,7 @@ if (BUILD_USE_VCPKG) message(FATAL_ERROR "VCPKG_ROOT is not defined. Please set it to the path of vcpkg root directory.") endif() - set (VCPKG_MANIFEST_DIR "${CMAKE_SOURCE_DIR}/adm/vcpkg/ports/opencascade") + set (VCPKG_MANIFEST_DIR "${OCCT_ROOT_DIR}/adm/vcpkg/ports/opencascade") # Disable default features for vcpkg manifest set (VCPKG_MANIFEST_NO_DEFAULT_FEATURES 1) @@ -58,7 +61,7 @@ else() PROJECT (OCCT) endif() -set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/adm/cmake") +set (CMAKE_MODULE_PATH "${OCCT_ROOT_DIR}/adm/cmake") set (CMAKE_SUPPRESS_REGENERATION TRUE) @@ -86,7 +89,7 @@ set (CMAKE_CXX_STANDARD_REQUIRED ON) # include cmake file macro (OCCT_INCLUDE_CMAKE_FILE BEING_INCLUDED_FILE) - include (${CMAKE_SOURCE_DIR}/${BEING_INCLUDED_FILE}.cmake) + include (${OCCT_ROOT_DIR}/${BEING_INCLUDED_FILE}.cmake) endmacro() # set using memory manager option for TKernel @@ -850,9 +853,6 @@ if (APPLE) occt_set_apple_csf_vars() endif() -# copying clang-format file to the root of the project -file(COPY ${CMAKE_SOURCE_DIR}/.clang-format DESTINATION ${CMAKE_SOURCE_DIR}) - # Get all used variables: OS_WITH_BIT, COMPILER OCCT_MAKE_OS_WITH_BITNESS() OCCT_MAKE_COMPILER_SHORT_NAME() @@ -1192,7 +1192,7 @@ if (${DRAWEXE_INDEX} GREATER -1) OCCT_INSTALL_FILE_OR_DIR ("data/" "${INSTALL_DIR_DATA}") OCCT_INSTALL_FILE_OR_DIR ("samples/tcl" "${INSTALL_DIR_SAMPLES}") - install (FILES "${CMAKE_SOURCE_DIR}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}" + install (FILES "${OCCT_ROOT_DIR}/adm/templates/draw.${SCRIPT_EXT}" DESTINATION "${INSTALL_DIR_SCRIPT}" PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) # copy draw script to CMake binary folder @@ -1470,7 +1470,7 @@ endif() message (STATUS "Info: \(${CURRENT_TIME}\) OCCT toolkits processed") # samples do not support patch usage if (BUILD_SAMPLES_MFC OR BUILD_SAMPLES_QT) - set (OCCT_ROOT ${CMAKE_SOURCE_DIR}) + set (OCCT_ROOT ${OCCT_ROOT_DIR}) endif() if (BUILD_SAMPLES_MFC) @@ -1560,7 +1560,7 @@ foreach (OCCT_CONFIGURATION ${CMAKE_CONFIGURATION_TYPES}) endforeach() set (SET_OpenCASCADE_CMAKE_C_FLAGS "${CMAKE_C_FLAGS_${OCCT_CONFIGURATION_UPPER}}") set (SET_OpenCASCADE_CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS_${OCCT_CONFIGURATION_UPPER}}") - configure_file("${CMAKE_SOURCE_DIR}/adm/templates/OpenCASCADECompileDefinitionsAndFlags.cmake.in" "OpenCASCADECompileDefinitionsAndFlags-${OCCT_CONFIGURATION_LOWER}.cmake" @ONLY) + configure_file("${OCCT_ROOT_DIR}/adm/templates/OpenCASCADECompileDefinitionsAndFlags.cmake.in" "OpenCASCADECompileDefinitionsAndFlags-${OCCT_CONFIGURATION_LOWER}.cmake" @ONLY) endforeach() # install OpenCASCADE config file with compile definitions and C/C++ flags ONLY for current configuration install (CODE "string (TOLOWER \"\${CMAKE_INSTALL_CONFIG_NAME}\" CMAKE_INSTALL_CONFIG_NAME_LOWER)") @@ -1604,7 +1604,7 @@ if (APPLE) endif() # Configure and install cmake config file -configure_file("${CMAKE_SOURCE_DIR}/adm/templates/OpenCASCADEConfig.cmake.in" "OpenCASCADEConfig.cmake" @ONLY) +configure_file("${OCCT_ROOT_DIR}/adm/templates/OpenCASCADEConfig.cmake.in" "OpenCASCADEConfig.cmake" @ONLY) install(FILES "${CMAKE_BINARY_DIR}/OpenCASCADEConfig.cmake" DESTINATION "${INSTALL_DIR_CMAKE}") # Configure cmake version file diff --git a/adm/cmake/flex.cmake b/adm/cmake/flex.cmake index d2b80709d8..e3caa40909 100644 --- a/adm/cmake/flex.cmake +++ b/adm/cmake/flex.cmake @@ -33,11 +33,11 @@ if (NOT FLEX_FOUND OR NOT FLEX_INCLUDE_DIR OR NOT EXISTS "${FLEX_INCLUDE_DIR}/Fl endif() # remove old general version of FlexLexer -if (EXISTS ${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h) - message (STATUS "Info: remove old FLEX header file: ${CMAKE_SOURCE_DIR}/src/FlexLexer/FlexLexer.h") - file(REMOVE ${CMAKE_SOURCE_DIR}/src/FlexLexer/FlexLexer.h) +if (EXISTS ${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/FlexLexer/FlexLexer.h) + message (STATUS "Info: remove old FLEX header file: ${OCCT_ROOT_DIR}/src/FlexLexer/FlexLexer.h") + file(REMOVE ${OCCT_ROOT_DIR}/src/FlexLexer/FlexLexer.h) endif() # install copy of FlexLexer.h locally to allow further building without flex if (FLEX_INCLUDE_DIR AND EXISTS "${FLEX_INCLUDE_DIR}/FlexLexer.h") - configure_file("${FLEX_INCLUDE_DIR}/FlexLexer.h" "${CMAKE_SOURCE_DIR}/src/FlexLexer/FlexLexer.h" @ONLY NEWLINE_STYLE LF) + configure_file("${FLEX_INCLUDE_DIR}/FlexLexer.h" "${OCCT_ROOT_DIR}/src/FlexLexer/FlexLexer.h" @ONLY NEWLINE_STYLE LF) endif() diff --git a/adm/cmake/occt_doc.cmake b/adm/cmake/occt_doc.cmake index f353273a4d..20ff54146f 100644 --- a/adm/cmake/occt_doc.cmake +++ b/adm/cmake/occt_doc.cmake @@ -258,7 +258,7 @@ endfunction() # Function to load file lists for documentation function(OCCT_DOC_LOAD_FILE_LISTS) # Load list of HTML documentation files - set(FILES_HTML_PATH "${CMAKE_SOURCE_DIR}/dox/FILES_HTML.txt") + set(FILES_HTML_PATH "${OCCT_ROOT_DIR}/dox/FILES_HTML.txt") if(EXISTS ${FILES_HTML_PATH}) file(STRINGS ${FILES_HTML_PATH} HTML_FILES REGEX "^[^#]+") set(OCCT_DOC_HTML_FILES ${HTML_FILES} PARENT_SCOPE) @@ -267,7 +267,7 @@ function(OCCT_DOC_LOAD_FILE_LISTS) endif() # Load list of PDF documentation files - set(FILES_PDF_PATH "${CMAKE_SOURCE_DIR}/dox/FILES_PDF.txt") + set(FILES_PDF_PATH "${OCCT_ROOT_DIR}/dox/FILES_PDF.txt") if(EXISTS ${FILES_PDF_PATH}) file(STRINGS ${FILES_PDF_PATH} PDF_FILES REGEX "^[^#]+") set(OCCT_DOC_PDF_FILES ${PDF_FILES} PARENT_SCOPE) @@ -317,9 +317,9 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) # Use existing Doxygen template file as base if(DOC_TYPE STREQUAL "OVERVIEW") - set(TEMPLATE_DOXYFILE "${CMAKE_SOURCE_DIR}/dox/resources/occt_ug_html.doxyfile") + set(TEMPLATE_DOXYFILE "${OCCT_ROOT_DIR}/dox/resources/occt_ug_html.doxyfile") else() - set(TEMPLATE_DOXYFILE "${CMAKE_SOURCE_DIR}/dox/resources/occt_rm.doxyfile") + set(TEMPLATE_DOXYFILE "${OCCT_ROOT_DIR}/dox/resources/occt_rm.doxyfile") endif() # Define Doxygen parameters that need to be overridden from the template @@ -355,7 +355,7 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) # Additional parameters based on the document type if(DOC_TYPE STREQUAL "OVERVIEW") # Settings for Overview documentation - file(APPEND ${DOXYGEN_CONFIG_FILE} "PROJECT_LOGO = ${CMAKE_SOURCE_DIR}/dox/resources/occ_logo.png\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "PROJECT_LOGO = ${OCCT_ROOT_DIR}/dox/resources/occ_logo.png\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "EXTRACT_ALL = NO\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "EXTRACT_PRIVATE = NO\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "EXTRACT_STATIC = NO\n") @@ -374,27 +374,27 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) if(DEFINED OCCT_OVERVIEW_FILES) file(APPEND ${DOXYGEN_CONFIG_FILE} "INPUT = ${OCCT_OVERVIEW_FILES}\n") else() - file(APPEND ${DOXYGEN_CONFIG_FILE} "INPUT = ${CMAKE_SOURCE_DIR}/dox\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "INPUT = ${OCCT_ROOT_DIR}/dox\n") endif() # Collect image directories for overview - set(OVERVIEW_INPUT_DIRS ${CMAKE_SOURCE_DIR}/dox) + set(OVERVIEW_INPUT_DIRS ${OCCT_ROOT_DIR}/dox) OCCT_DOC_COLLECT_IMAGE_DIRS("${OVERVIEW_INPUT_DIRS}" OVERVIEW_IMAGE_DIRS) # Image path for overview if(OVERVIEW_IMAGE_DIRS) string(REPLACE ";" " " OVERVIEW_IMAGE_DIRS_STR "${OVERVIEW_IMAGE_DIRS}") - file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${OVERVIEW_IMAGE_DIRS_STR} ${CMAKE_SOURCE_DIR}/dox/resources\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${OVERVIEW_IMAGE_DIRS_STR} ${OCCT_ROOT_DIR}/dox/resources\n") else() - file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${CMAKE_SOURCE_DIR}/dox/resources\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${OCCT_ROOT_DIR}/dox/resources\n") endif() # Example paths - file(APPEND ${DOXYGEN_CONFIG_FILE} "EXAMPLE_PATH = ${CMAKE_SOURCE_DIR}/src ${CMAKE_SOURCE_DIR}/samples\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "EXAMPLE_PATH = ${OCCT_ROOT_DIR}/src ${OCCT_ROOT_DIR}/samples\n") else() # Settings for Reference Manual file(APPEND ${DOXYGEN_CONFIG_FILE} "PROJECT_NAME = \"Open CASCADE Technology Reference Manual\"\n") - file(APPEND ${DOXYGEN_CONFIG_FILE} "PROJECT_LOGO = ${CMAKE_SOURCE_DIR}/dox/resources/occ_logo.png\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "PROJECT_LOGO = ${OCCT_ROOT_DIR}/dox/resources/occ_logo.png\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "BUILTIN_STL_SUPPORT = YES\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "EXTRACT_PRIVATE = NO\n") file(APPEND ${DOXYGEN_CONFIG_FILE} "EXTRACT_PACKAGE = YES\n") @@ -407,14 +407,14 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) # Input files for reference manual - CRITICAL FOR PROPER GENERATION file(APPEND ${DOXYGEN_CONFIG_FILE} "\n# Input files for reference manual\n") - file(APPEND ${DOXYGEN_CONFIG_FILE} "INPUT = ${CMAKE_SOURCE_DIR}/src\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "INPUT = ${OCCT_ROOT_DIR}/src\n") # If generating documentation for specific modules if(DEFINED OCCT_DOC_MODULES) set(MODULE_PATHS "") foreach(MODULE ${OCCT_DOC_MODULES}) foreach(TOOLKIT ${${MODULE}_TOOLKITS}) - list(APPEND MODULE_PATHS "${CMAKE_SOURCE_DIR}/src/${TOOLKIT}") + list(APPEND MODULE_PATHS "${OCCT_ROOT_DIR}/src/${TOOLKIT}") endforeach() endforeach() string(REPLACE ";" " " MODULE_PATHS_STR "${MODULE_PATHS}") @@ -422,14 +422,14 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) endif() # Configure image path for reference manual - set(REFMAN_INPUT_DIRS ${CMAKE_SOURCE_DIR}/src) + set(REFMAN_INPUT_DIRS ${OCCT_ROOT_DIR}/src) OCCT_DOC_COLLECT_IMAGE_DIRS("${REFMAN_INPUT_DIRS}" REFMAN_IMAGE_DIRS) if(REFMAN_IMAGE_DIRS) string(REPLACE ";" " " REFMAN_IMAGE_DIRS_STR "${REFMAN_IMAGE_DIRS}") - file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${REFMAN_IMAGE_DIRS_STR} ${CMAKE_SOURCE_DIR}/dox/resources\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${REFMAN_IMAGE_DIRS_STR} ${OCCT_ROOT_DIR}/dox/resources\n") else() - file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${CMAKE_SOURCE_DIR}/dox/resources\n") + file(APPEND ${DOXYGEN_CONFIG_FILE} "IMAGE_PATH = ${OCCT_ROOT_DIR}/dox/resources\n") endif() # Add main page file if generated @@ -444,8 +444,8 @@ function(OCCT_DOC_CONFIGURE_DOXYGEN OUTPUT_DIR CONFIG_FILE DOC_TYPE) endif() # Custom CSS - if(EXISTS "${CMAKE_SOURCE_DIR}/dox/resources/custom.css") - file(APPEND ${DOXYGEN_CONFIG_FILE} "HTML_EXTRA_STYLESHEET = ${CMAKE_SOURCE_DIR}/dox/resources/custom.css\n") + if(EXISTS "${OCCT_ROOT_DIR}/dox/resources/custom.css") + file(APPEND ${DOXYGEN_CONFIG_FILE} "HTML_EXTRA_STYLESHEET = ${OCCT_ROOT_DIR}/dox/resources/custom.css\n") endif() # Set paths for dot tool @@ -600,7 +600,7 @@ function(OCCT_SETUP_DOC_TARGETS) file(MAKE_DIRECTORY "${REFMAN_OUTPUT_DIR}/html") # Copy index file to provide fast access to HTML documentation - file(COPY "${CMAKE_SOURCE_DIR}/dox/resources/index.html" DESTINATION "${REFMAN_OUTPUT_DIR}") + file(COPY "${OCCT_ROOT_DIR}/dox/resources/index.html" DESTINATION "${REFMAN_OUTPUT_DIR}") # Generate main page for reference manual OCCT_DOC_GENERATE_MAIN_PAGE(${REFMAN_OUTPUT_DIR} "main_page.dox") @@ -613,7 +613,7 @@ function(OCCT_SETUP_DOC_TARGETS) add_custom_target(RefMan COMMAND ${DOXYGEN_EXECUTABLE} ${REFMAN_OUTPUT_DIR}/Doxyfile COMMENT "Generating Reference Manual with Doxygen" - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + WORKING_DIRECTORY ${OCCT_ROOT_DIR} VERBATIM ) @@ -640,12 +640,12 @@ function(OCCT_SETUP_DOC_TARGETS) add_custom_target(Overview COMMAND ${DOXYGEN_EXECUTABLE} ${OVERVIEW_OUTPUT_DIR}/Doxyfile COMMENT "Generating Overview documentation with Doxygen" - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + WORKING_DIRECTORY ${OCCT_ROOT_DIR} VERBATIM ) # Copy index file to provide fast access to HTML documentation - file(COPY "${CMAKE_SOURCE_DIR}/dox/resources/index.html" DESTINATION "${OVERVIEW_OUTPUT_DIR}") + file(COPY "${OCCT_ROOT_DIR}/dox/resources/index.html" DESTINATION "${OVERVIEW_OUTPUT_DIR}") # Add custom command to copy generated documentation to install location if required if(INSTALL_DOC_Overview) @@ -655,7 +655,7 @@ function(OCCT_SETUP_DOC_TARGETS) # Create overview.html only for windows if(WIN32) - install(FILES "${CMAKE_SOURCE_DIR}/dox/resources/overview.html" + install(FILES "${OCCT_ROOT_DIR}/dox/resources/overview.html" DESTINATION "${INSTALL_DIR_DOC}") endif() endif() diff --git a/adm/cmake/occt_gtest.cmake b/adm/cmake/occt_gtest.cmake index a095bf7df6..036e0bca2b 100644 --- a/adm/cmake/occt_gtest.cmake +++ b/adm/cmake/occt_gtest.cmake @@ -135,29 +135,29 @@ function(OCCT_SET_GTEST_ENVIRONMENT) set(TEST_ENVIRONMENT "CSF_LANGUAGE=us" "MMGT_CLEAR=1" - "CSF_SHMessage=${CMAKE_SOURCE_DIR}/resources/SHMessage" - "CSF_MDTVTexturesDirectory=${CMAKE_SOURCE_DIR}/resources/Textures" - "CSF_ShadersDirectory=${CMAKE_SOURCE_DIR}/resources/Shaders" - "CSF_XSMessage=${CMAKE_SOURCE_DIR}/resources/XSMessage" - "CSF_TObjMessage=${CMAKE_SOURCE_DIR}/resources/TObj" - "CSF_StandardDefaults=${CMAKE_SOURCE_DIR}/resources/StdResource" - "CSF_PluginDefaults=${CMAKE_SOURCE_DIR}/resources/StdResource" - "CSF_XCAFDefaults=${CMAKE_SOURCE_DIR}/resources/StdResource" - "CSF_TObjDefaults=${CMAKE_SOURCE_DIR}/resources/StdResource" - "CSF_StandardLiteDefaults=${CMAKE_SOURCE_DIR}/resources/StdResource" - "CSF_IGESDefaults=${CMAKE_SOURCE_DIR}/resources/XSTEPResource" - "CSF_STEPDefaults=${CMAKE_SOURCE_DIR}/resources/XSTEPResource" - "CSF_XmlOcafResource=${CMAKE_SOURCE_DIR}/resources/XmlOcafResource" - "CSF_MIGRATION_TYPES=${CMAKE_SOURCE_DIR}/resources/StdResource/MigrationSheet.txt" - "CSF_OCCTResourcePath=${CMAKE_SOURCE_DIR}/resources" - "CSF_OCCTDataPath=${CMAKE_SOURCE_DIR}/data" - "CSF_OCCTDocPath=${CMAKE_SOURCE_DIR}/doc" - "CSF_OCCTSamplesPath=${CMAKE_SOURCE_DIR}/samples" - "CSF_OCCTTestsPath=${CMAKE_SOURCE_DIR}/tests" + "CSF_SHMessage=${OCCT_ROOT_DIR}/resources/SHMessage" + "CSF_MDTVTexturesDirectory=${OCCT_ROOT_DIR}/resources/Textures" + "CSF_ShadersDirectory=${OCCT_ROOT_DIR}/resources/Shaders" + "CSF_XSMessage=${OCCT_ROOT_DIR}/resources/XSMessage" + "CSF_TObjMessage=${OCCT_ROOT_DIR}/resources/TObj" + "CSF_StandardDefaults=${OCCT_ROOT_DIR}/resources/StdResource" + "CSF_PluginDefaults=${OCCT_ROOT_DIR}/resources/StdResource" + "CSF_XCAFDefaults=${OCCT_ROOT_DIR}/resources/StdResource" + "CSF_TObjDefaults=${OCCT_ROOT_DIR}/resources/StdResource" + "CSF_StandardLiteDefaults=${OCCT_ROOT_DIR}/resources/StdResource" + "CSF_IGESDefaults=${OCCT_ROOT_DIR}/resources/XSTEPResource" + "CSF_STEPDefaults=${OCCT_ROOT_DIR}/resources/XSTEPResource" + "CSF_XmlOcafResource=${OCCT_ROOT_DIR}/resources/XmlOcafResource" + "CSF_MIGRATION_TYPES=${OCCT_ROOT_DIR}/resources/StdResource/MigrationSheet.txt" + "CSF_OCCTResourcePath=${OCCT_ROOT_DIR}/resources" + "CSF_OCCTDataPath=${OCCT_ROOT_DIR}/data" + "CSF_OCCTDocPath=${OCCT_ROOT_DIR}/doc" + "CSF_OCCTSamplesPath=${OCCT_ROOT_DIR}/samples" + "CSF_OCCTTestsPath=${OCCT_ROOT_DIR}/tests" "CSF_OCCTBinPath=${CMAKE_RUNTIME_OUTPUT_DIRECTORY}" "CSF_OCCTLibPath=${CMAKE_ARCHIVE_OUTPUT_DIRECTORY}" "CSF_OCCTIncludePath=${CMAKE_BINARY_DIR}/${INSTALL_DIR_INCLUDE}" - "CASROOT=${CMAKE_SOURCE_DIR}" + "CASROOT=${OCCT_ROOT_DIR}" ) # Build PATH environment variable @@ -215,12 +215,12 @@ function(OCCT_SET_GTEST_ENVIRONMENT) endif() # Add DrawResources related environment if it exists - if(EXISTS "${CMAKE_SOURCE_DIR}/resources/DrawResources") - list(APPEND TEST_ENVIRONMENT "DRAWHOME=${CMAKE_SOURCE_DIR}/resources/DrawResources") - list(APPEND TEST_ENVIRONMENT "CSF_DrawPluginDefaults=${CMAKE_SOURCE_DIR}/resources/DrawResources") + if(EXISTS "${OCCT_ROOT_DIR}/resources/DrawResources") + list(APPEND TEST_ENVIRONMENT "DRAWHOME=${OCCT_ROOT_DIR}/resources/DrawResources") + list(APPEND TEST_ENVIRONMENT "CSF_DrawPluginDefaults=${OCCT_ROOT_DIR}/resources/DrawResources") - if(EXISTS "${CMAKE_SOURCE_DIR}/resources/DrawResources/DrawDefault") - list(APPEND TEST_ENVIRONMENT "DRAWDEFAULT=${CMAKE_SOURCE_DIR}/resources/DrawResources/DrawDefault") + if(EXISTS "${OCCT_ROOT_DIR}/resources/DrawResources/DrawDefault") + list(APPEND TEST_ENVIRONMENT "DRAWDEFAULT=${OCCT_ROOT_DIR}/resources/DrawResources/DrawDefault") endif() endif() diff --git a/adm/cmake/occt_macros.cmake b/adm/cmake/occt_macros.cmake index e618fba2ab..228a7599e4 100644 --- a/adm/cmake/occt_macros.cmake +++ b/adm/cmake/occt_macros.cmake @@ -34,16 +34,16 @@ endmacro() function (FILE_TO_LIST FILE_NAME FILE_CONTENT) set (LOCAL_FILE_CONTENT) - if (EXISTS "${CMAKE_SOURCE_DIR}/${FILE_NAME}") - file (STRINGS "${CMAKE_SOURCE_DIR}/${FILE_NAME}" LOCAL_FILE_CONTENT) + if (EXISTS "${OCCT_ROOT_DIR}/${FILE_NAME}") + file (STRINGS "${OCCT_ROOT_DIR}/${FILE_NAME}" LOCAL_FILE_CONTENT) endif() set (${FILE_CONTENT} ${LOCAL_FILE_CONTENT} PARENT_SCOPE) endfunction() function(FIND_FOLDER_OR_FILE FILE_OR_FOLDER_NAME RESULT_PATH) - if (EXISTS "${CMAKE_SOURCE_DIR}/${FILE_OR_FOLDER_NAME}") - set (${RESULT_PATH} "${CMAKE_SOURCE_DIR}/${FILE_OR_FOLDER_NAME}" PARENT_SCOPE) + if (EXISTS "${OCCT_ROOT_DIR}/${FILE_OR_FOLDER_NAME}") + set (${RESULT_PATH} "${OCCT_ROOT_DIR}/${FILE_OR_FOLDER_NAME}" PARENT_SCOPE) else() set (${RESULT_PATH} "" PARENT_SCOPE) endif() @@ -156,7 +156,7 @@ function (FIND_SUBDIRECTORY ROOT_DIRECTORY DIRECTORY_SUFFIX SUBDIRECTORY_NAME) endfunction() function (OCCT_ORIGIN_AND_PATCHED_FILES RELATIVE_PATH SEARCH_TEMPLATE RESULT) - file (GLOB ORIGIN_FILES "${CMAKE_SOURCE_DIR}/${RELATIVE_PATH}/${SEARCH_TEMPLATE}") + file (GLOB ORIGIN_FILES "${OCCT_ROOT_DIR}/${RELATIVE_PATH}/${SEARCH_TEMPLATE}") set (${RESULT} ${ORIGIN_FILES} PARENT_SCOPE) endfunction() @@ -213,15 +213,15 @@ function (FIND_PRODUCT_DIR ROOT_DIR PRODUCT_NAME RESULT) endfunction() macro (OCCT_INSTALL_FILE_OR_DIR BEING_INSTALLED_OBJECT DESTINATION_PATH) - if (IS_DIRECTORY "${CMAKE_SOURCE_DIR}/${BEING_INSTALLED_OBJECT}") - install (DIRECTORY "${CMAKE_SOURCE_DIR}/${BEING_INSTALLED_OBJECT}" DESTINATION "${DESTINATION_PATH}") + if (IS_DIRECTORY "${OCCT_ROOT_DIR}/${BEING_INSTALLED_OBJECT}") + install (DIRECTORY "${OCCT_ROOT_DIR}/${BEING_INSTALLED_OBJECT}" DESTINATION "${DESTINATION_PATH}") else() - install (FILES "${CMAKE_SOURCE_DIR}/${BEING_INSTALLED_OBJECT}" DESTINATION "${DESTINATION_PATH}") + install (FILES "${OCCT_ROOT_DIR}/${BEING_INSTALLED_OBJECT}" DESTINATION "${DESTINATION_PATH}") endif() endmacro() macro (OCCT_CONFIGURE_AND_INSTALL BEING_CONGIRUGED_FILE BUILD_NAME INSTALL_NAME DESTINATION_PATH) - configure_file("${CMAKE_SOURCE_DIR}/${BEING_CONGIRUGED_FILE}" "${BUILD_NAME}" @ONLY) + configure_file("${OCCT_ROOT_DIR}/${BEING_CONGIRUGED_FILE}" "${BUILD_NAME}" @ONLY) install(FILES "${OCCT_BINARY_DIR}/${BUILD_NAME}" DESTINATION "${DESTINATION_PATH}" RENAME ${INSTALL_NAME}) endmacro() @@ -343,8 +343,8 @@ endfunction() function (FILE_TO_LIST FILE_NAME FILE_CONTENT) set (LOCAL_FILE_CONTENT) - if (EXISTS "${CMAKE_SOURCE_DIR}/${FILE_NAME}") - file (STRINGS "${CMAKE_SOURCE_DIR}/${FILE_NAME}" LOCAL_FILE_CONTENT) + if (EXISTS "${OCCT_ROOT_DIR}/${FILE_NAME}") + file (STRINGS "${OCCT_ROOT_DIR}/${FILE_NAME}" LOCAL_FILE_CONTENT) endif() set (${FILE_CONTENT} ${LOCAL_FILE_CONTENT} PARENT_SCOPE) @@ -354,7 +354,7 @@ function (COLLECT_AND_INSTALL_OCCT_HEADER_FILES THE_ROOT_TARGET_OCCT_DIR THE_OCC set (OCCT_USED_PACKAGES) # consider patched header.in template - set (TEMPLATE_HEADER_PATH "${CMAKE_SOURCE_DIR}/adm/templates/header.in") + set (TEMPLATE_HEADER_PATH "${OCCT_ROOT_DIR}/adm/templates/header.in") set (OCCT_HEADER_FILES_COMPLETE) foreach(OCCT_TOOLKIT ${THE_OCCT_BUILD_TOOLKITS}) @@ -439,18 +439,18 @@ endfunction() macro (OCCT_COPY_FILE_OR_DIR BEING_COPIED_OBJECT DESTINATION_PATH) # first of all, copy original files - if (EXISTS "${CMAKE_SOURCE_DIR}/${BEING_COPIED_OBJECT}") - file (COPY "${CMAKE_SOURCE_DIR}/${BEING_COPIED_OBJECT}" DESTINATION "${DESTINATION_PATH}") + if (EXISTS "${OCCT_ROOT_DIR}/${BEING_COPIED_OBJECT}") + file (COPY "${OCCT_ROOT_DIR}/${BEING_COPIED_OBJECT}" DESTINATION "${DESTINATION_PATH}") endif() endmacro() macro (OCCT_CONFIGURE BEING_CONGIRUGED_FILE FINAL_NAME) - configure_file("${CMAKE_SOURCE_DIR}/${BEING_CONGIRUGED_FILE}" "${FINAL_NAME}" @ONLY) + configure_file("${OCCT_ROOT_DIR}/${BEING_CONGIRUGED_FILE}" "${FINAL_NAME}" @ONLY) endmacro() macro (OCCT_ADD_SUBDIRECTORY BEING_ADDED_DIRECTORY) - if (EXISTS "${CMAKE_SOURCE_DIR}/${BEING_ADDED_DIRECTORY}/CMakeLists.txt") - add_subdirectory (${CMAKE_SOURCE_DIR}/${BEING_ADDED_DIRECTORY}) + if (EXISTS "${OCCT_ROOT_DIR}/${BEING_ADDED_DIRECTORY}/CMakeLists.txt") + add_subdirectory (${OCCT_ROOT_DIR}/${BEING_ADDED_DIRECTORY}) else() message (STATUS "${BEING_ADDED_DIRECTORY} directory is not included") endif() @@ -518,7 +518,7 @@ macro(OCCT_GET_GIT_HASH) if(GIT_FOUND) execute_process( COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + WORKING_DIRECTORY ${OCCT_ROOT_DIR} OUTPUT_VARIABLE GIT_HASH ERROR_VARIABLE GIT_ERROR OUTPUT_STRIP_TRAILING_WHITESPACE @@ -527,7 +527,7 @@ macro(OCCT_GET_GIT_HASH) # Check if working directory is clean execute_process( COMMAND ${GIT_EXECUTABLE} status --porcelain - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} + WORKING_DIRECTORY ${OCCT_ROOT_DIR} OUTPUT_VARIABLE GIT_STATUS OUTPUT_STRIP_TRAILING_WHITESPACE ) @@ -630,7 +630,7 @@ macro (FLEX_AND_BISON_TARGET_APPLY THE_PACKAGE_NAME RELATIVE_SOURCES_DIR) continue() endif() # Note: files are generated in original source directory (not in patch!) - set (FLEX_BISON_TARGET_DIR "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/${THE_PACKAGE_NAME}") + set (FLEX_BISON_TARGET_DIR "${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/${THE_PACKAGE_NAME}") # choose appropriate extension for generated files: "cxx" if source file contains # instruction to generate C++ code, "c" otherwise set (BISON_OUTPUT_FILE_EXT "c") @@ -664,7 +664,7 @@ macro (FLEX_AND_BISON_TARGET_APPLY THE_PACKAGE_NAME RELATIVE_SOURCES_DIR) file(REMOVE ${FLEX_BISON_TARGET_DIR}/${FLEX_OUTPUT_FILE}) endif() BISON_TARGET (Parser_${CURRENT_BISON_FILE_NAME} ${CURRENT_BISON_FILE} "${FLEX_BISON_TARGET_DIR}/${BISON_OUTPUT_FILE}" - COMPILE_FLAGS "-p ${CURRENT_BISON_FILE_NAME} -l -M ${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/=") + COMPILE_FLAGS "-p ${CURRENT_BISON_FILE_NAME} -l -M ${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/=") FLEX_TARGET (Scanner_${CURRENT_FLEX_FILE_NAME} ${CURRENT_FLEX_FILE} "${FLEX_BISON_TARGET_DIR}/${FLEX_OUTPUT_FILE}" COMPILE_FLAGS "-P${CURRENT_FLEX_FILE_NAME} -L") ADD_FLEX_BISON_DEPENDENCY (Scanner_${CURRENT_FLEX_FILE_NAME} Parser_${CURRENT_BISON_FILE_NAME}) diff --git a/adm/cmake/occt_resources.cmake b/adm/cmake/occt_resources.cmake index b30d152f8d..d1982fa585 100644 --- a/adm/cmake/occt_resources.cmake +++ b/adm/cmake/occt_resources.cmake @@ -3,8 +3,8 @@ macro (OCCT_GENERATE_CONTENT_ONLY CurrentResource) set (RESOURCE_FILES) set (isResDirectory FALSE) - if (IS_DIRECTORY "${CMAKE_SOURCE_DIR}/resources/${CurrentResource}") - file (STRINGS "${CMAKE_SOURCE_DIR}/resources/${CurrentResource}/FILES" RESOURCE_FILES) + if (IS_DIRECTORY "${OCCT_ROOT_DIR}/resources/${CurrentResource}") + file (STRINGS "${OCCT_ROOT_DIR}/resources/${CurrentResource}/FILES" RESOURCE_FILES) set (CurrentResource_Directory "${CurrentResource}") set (isResDirectory TRUE) else() @@ -27,11 +27,11 @@ macro (OCCT_GENERATE_CONTENT_ONLY CurrentResource) string (REPLACE "." "_" CurrentResource_FileName "${CurrentResource_FileName}") set (HEADER_FILE_NAME "${CurrentResource_Directory}_${CurrentResource_FileName}.pxx") - message(STATUS "Info. Generating header file from resource file: ${CMAKE_SOURCE_DIR}/resources/${CurrentResource_Directory}/${RESOURCE_FILE}") + message(STATUS "Info. Generating header file from resource file: ${OCCT_ROOT_DIR}/resources/${CurrentResource_Directory}/${RESOURCE_FILE}") # generate content for header file set (OCCT_HEADER_FILE_CONTENT "// This file has been automatically generated from resource file resources/${CurrentResource_Directory}/${RESOURCE_FILE}\n\n") # read resource file - file (STRINGS "${CMAKE_SOURCE_DIR}/resources/${CurrentResource_Directory}/${RESOURCE_FILE}" RESOURCE_FILE_LINES_LIST) + file (STRINGS "${OCCT_ROOT_DIR}/resources/${CurrentResource_Directory}/${RESOURCE_FILE}" RESOURCE_FILE_LINES_LIST) set (OCCT_HEADER_FILE_CONTENT "${OCCT_HEADER_FILE_CONTENT}static const char ${CurrentResource_Directory}_${CurrentResource_FileName}[] =") foreach (line IN LISTS RESOURCE_FILE_LINES_LIST) string (REPLACE "\"" "\\\"" line "${line}") @@ -43,7 +43,7 @@ macro (OCCT_GENERATE_CONTENT_ONLY CurrentResource) if (EXISTS "${HEADER_FILE}") file (REMOVE "${HEADER_FILE}") endif() - configure_file ("${CMAKE_SOURCE_DIR}/adm/templates/header.in" "${HEADER_FILE}" @ONLY NEWLINE_STYLE LF) + configure_file ("${OCCT_ROOT_DIR}/adm/templates/header.in" "${HEADER_FILE}" @ONLY NEWLINE_STYLE LF) endif() endforeach() endif() diff --git a/adm/cmake/occt_toolkit.cmake b/adm/cmake/occt_toolkit.cmake index 68034fe2f5..2009c66dd0 100644 --- a/adm/cmake/occt_toolkit.cmake +++ b/adm/cmake/occt_toolkit.cmake @@ -96,7 +96,7 @@ string (REGEX REPLACE ";" " " PRECOMPILED_DEFS "${PRECOMPILED_DEFS}") set (USED_RCFILE "") if (MSVC) set (USED_RCFILE "${CMAKE_BINARY_DIR}/resources/${PROJECT_NAME}.rc") - configure_file("${CMAKE_SOURCE_DIR}/adm/templates/occt_toolkit.rc.in" "${USED_RCFILE}" @ONLY) + configure_file("${OCCT_ROOT_DIR}/adm/templates/occt_toolkit.rc.in" "${USED_RCFILE}" @ONLY) endif() set (CURRENT_MODULE) diff --git a/adm/cmake/qt_macro.cmake b/adm/cmake/qt_macro.cmake index ec897384ae..36aec9086f 100644 --- a/adm/cmake/qt_macro.cmake +++ b/adm/cmake/qt_macro.cmake @@ -79,8 +79,8 @@ macro (FIND_AND_WRAP_TS_FILE RESOURCE_FILE_NAME TARGET_FOLDER QM_FILES) endmacro() macro (FIND_AND_INSTALL_QT_RESOURCES OCCT_PACKAGE RESOURCE_FILES) - file (STRINGS "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/FILES" TS_FILES REGEX ".+[.]ts") - file (STRINGS "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/FILES" QRC_FILES REGEX ".+[.]qrc") + file (STRINGS "${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/FILES" TS_FILES REGEX ".+[.]ts") + file (STRINGS "${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/FILES" QRC_FILES REGEX ".+[.]qrc") string (FIND "${OCCT_PACKAGE}" "/" _index) if (_index GREATER -1) @@ -92,7 +92,7 @@ macro (FIND_AND_INSTALL_QT_RESOURCES OCCT_PACKAGE RESOURCE_FILES) #message("QRC files are: ${QRC_FILES} in ${OCCT_PACKAGE}") foreach (QRC_FILE ${QRC_FILES}) - set (QRC_FILE_RELATIVE "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/${QRC_FILE}") + set (QRC_FILE_RELATIVE "${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/${QRC_FILE}") if (EXISTS ${QRC_FILE_RELATIVE}) FIND_AND_WRAP_RESOURCE_FILE(${QRC_FILE_RELATIVE} RCC_FILES) list (APPEND ${RESOURCE_FILES} "${RCC_FILES}") @@ -101,7 +101,7 @@ macro (FIND_AND_INSTALL_QT_RESOURCES OCCT_PACKAGE RESOURCE_FILES) #message("TS files are: ${TS_FILES} in ${OCCT_PACKAGE}") foreach (TS_FILE ${TS_FILES}) - set (TS_FILE_RELATIVE "${CMAKE_SOURCE_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/${TS_FILE}") + set (TS_FILE_RELATIVE "${OCCT_ROOT_DIR}/${RELATIVE_SOURCES_DIR}/${OCCT_PACKAGE}/${TS_FILE}") FIND_AND_WRAP_TS_FILE(${TS_FILE_RELATIVE} "${TARGET_FOLDER}/${CURRENT_MODULE}" QM_FILES) if (EXISTS ${TS_FILE_RELATIVE}) list (APPEND ${RESOURCE_FILES} "${TS_FILE_RELATIVE}") diff --git a/adm/templates/DRAWEXE.vcxproj.user.in b/adm/templates/DRAWEXE.vcxproj.user.in index c9b4cbd4f0..e19f3328ab 100644 --- a/adm/templates/DRAWEXE.vcxproj.user.in +++ b/adm/templates/DRAWEXE.vcxproj.user.in @@ -1,41 +1,41 @@  - CASROOT=@CMAKE_SOURCE_DIR@ + CASROOT=@OCCT_ROOT_DIR@ CSF_FPE=@BUILD_ENABLE_FPE_SIGNAL_HANDLER@ -CSF_OCCTResourcePath=@CMAKE_SOURCE_DIR@/resources -DRAWHOME=@CMAKE_SOURCE_DIR@/resources/DrawResources -CSF_OCCTDataPath=@CMAKE_SOURCE_DIR@/data -CSF_OCCTSamplesPath=@CMAKE_SOURCE_DIR@/samples -CSF_OCCTTestsPath=@CMAKE_SOURCE_DIR@/tests -CSF_OCCTDocPath=@CMAKE_SOURCE_DIR@/doc +CSF_OCCTResourcePath=@OCCT_ROOT_DIR@/resources +DRAWHOME=@OCCT_ROOT_DIR@/resources/DrawResources +CSF_OCCTDataPath=@OCCT_ROOT_DIR@/data +CSF_OCCTSamplesPath=@OCCT_ROOT_DIR@/samples +CSF_OCCTTestsPath=@OCCT_ROOT_DIR@/tests +CSF_OCCTDocPath=@OCCT_ROOT_DIR@/doc PATH=@3RDPARTY_DLL_DIRS_FOR_PATH@;%PATH% WindowsLocalDebugger @CMAKE_BINARY_DIR@ - CASROOT=@CMAKE_SOURCE_DIR@ + CASROOT=@OCCT_ROOT_DIR@ CSF_FPE=@BUILD_ENABLE_FPE_SIGNAL_HANDLER@ -CSF_OCCTResourcePath=@CMAKE_SOURCE_DIR@/resources -CSF_OCCTDataPath=@CMAKE_SOURCE_DIR@/data -CSF_OCCTSamplesPath=@CMAKE_SOURCE_DIR@/samples -CSF_OCCTTestsPath=@CMAKE_SOURCE_DIR@/tests -CSF_OCCTDocPath=@CMAKE_SOURCE_DIR@/doc +CSF_OCCTResourcePath=@OCCT_ROOT_DIR@/resources +CSF_OCCTDataPath=@OCCT_ROOT_DIR@/data +CSF_OCCTSamplesPath=@OCCT_ROOT_DIR@/samples +CSF_OCCTTestsPath=@OCCT_ROOT_DIR@/tests +CSF_OCCTDocPath=@OCCT_ROOT_DIR@/doc PATH=@3RDPARTY_DLL_DIRS_FOR_PATH@;%PATH% WindowsLocalDebugger @CMAKE_BINARY_DIR@ - CASROOT=@CMAKE_SOURCE_DIR@ + CASROOT=@OCCT_ROOT_DIR@ CSF_FPE=@BUILD_ENABLE_FPE_SIGNAL_HANDLER@ -DRAWHOME=@CMAKE_SOURCE_DIR@/resources/DrawResources -CSF_OCCTResourcePath=@CMAKE_SOURCE_DIR@/resources -CSF_OCCTDataPath=@CMAKE_SOURCE_DIR@/data -CSF_OCCTSamplesPath=@CMAKE_SOURCE_DIR@/samples -CSF_OCCTTestsPath=@CMAKE_SOURCE_DIR@/tests -CSF_OCCTDocPath=@CMAKE_SOURCE_DIR@/doc +DRAWHOME=@OCCT_ROOT_DIR@/resources/DrawResources +CSF_OCCTResourcePath=@OCCT_ROOT_DIR@/resources +CSF_OCCTDataPath=@OCCT_ROOT_DIR@/data +CSF_OCCTSamplesPath=@OCCT_ROOT_DIR@/samples +CSF_OCCTTestsPath=@OCCT_ROOT_DIR@/tests +CSF_OCCTDocPath=@OCCT_ROOT_DIR@/doc PATH=@3RDPARTY_DLL_DIRS_FOR_PATH@;%PATH% WindowsLocalDebugger diff --git a/adm/templates/custom.build.bat.in b/adm/templates/custom.build.bat.in index 3343d30bd1..a511fcb43e 100644 --- a/adm/templates/custom.build.bat.in +++ b/adm/templates/custom.build.bat.in @@ -28,13 +28,13 @@ if /I "%VCVER%" == "@COMPILER@" ( @OCCT_CUSTOM_BUILD_BIN_LIB_PATHS@ set "CSF_OCCTIncludePath=@CMAKE_BINARY_DIR@/@INSTALL_DIR_INCLUDE@" - set "CSF_OCCTResourcePath=@CMAKE_SOURCE_DIR@/resources" - set "CSF_OCCTDataPath=@CMAKE_SOURCE_DIR@/data" - set "CSF_OCCTSamplesPath=@CMAKE_SOURCE_DIR@/samples" - set "CSF_OCCTTestsPath=@CMAKE_SOURCE_DIR@/tests" - set "CSF_OCCTDocPath=@CMAKE_SOURCE_DIR@/doc" + set "CSF_OCCTResourcePath=@OCCT_ROOT_DIR@/resources" + set "CSF_OCCTDataPath=@OCCT_ROOT_DIR@/data" + set "CSF_OCCTSamplesPath=@OCCT_ROOT_DIR@/samples" + set "CSF_OCCTTestsPath=@OCCT_ROOT_DIR@/tests" + set "CSF_OCCTDocPath=@OCCT_ROOT_DIR@/doc" rem for compatibility with external application using CASROOT - set "CASROOT=@CMAKE_SOURCE_DIR@" + set "CASROOT=@OCCT_ROOT_DIR@" ) ) diff --git a/adm/templates/custom.build.sh.in b/adm/templates/custom.build.sh.in index 67ee37c2b4..e4352418fb 100644 --- a/adm/templates/custom.build.sh.in +++ b/adm/templates/custom.build.sh.in @@ -25,14 +25,14 @@ if [ "$1" == "@BIN_LETTER@" ]; then # multiple and single configuration builds @OCCT_CUSTOM_BUILD_BIN_LIB_PATHS@ export CSF_OCCTIncludePath="@CMAKE_BINARY_DIR@/@INSTALL_DIR_INCLUDE@" - export CSF_OCCTResourcePath="@CMAKE_SOURCE_DIR@/resources" - export CSF_OCCTDataPath="@CMAKE_SOURCE_DIR@/data" - export CSF_OCCTSamplesPath="@CMAKE_SOURCE_DIR@/samples" - export CSF_OCCTTestsPath="@CMAKE_SOURCE_DIR@/tests" - export CSF_OCCTDocPath="@CMAKE_SOURCE_DIR@/doc" + export CSF_OCCTResourcePath="@OCCT_ROOT_DIR@/resources" + export CSF_OCCTDataPath="@OCCT_ROOT_DIR@/data" + export CSF_OCCTSamplesPath="@OCCT_ROOT_DIR@/samples" + export CSF_OCCTTestsPath="@OCCT_ROOT_DIR@/tests" + export CSF_OCCTDocPath="@OCCT_ROOT_DIR@/doc" # for compatibility with external application using CASROOT - export CASROOT="@CMAKE_SOURCE_DIR@" + export CASROOT="@OCCT_ROOT_DIR@" fi fi diff --git a/dox/CMakeLists.txt b/dox/CMakeLists.txt index 9af54a91e1..d8290c830e 100644 --- a/dox/CMakeLists.txt +++ b/dox/CMakeLists.txt @@ -1,7 +1,7 @@ project (Overview) # directory that contains all raw OCCT overview articles (markdown format) -set (OCCT_OVERVIEW_DIR "${CMAKE_SOURCE_DIR}/dox") +set (OCCT_OVERVIEW_DIR "${OCCT_ROOT_DIR}/dox") # directory that contains resources for the generation of OCCT documentation set (OCCT_OVERVIEW_RESOURCE_DIR "${OCCT_OVERVIEW_DIR}/resources") @@ -43,7 +43,7 @@ configure_file ("${OCCT_OVERVIEW_RESOURCE_DIR}/occt_ug_html.doxyfile" "${OCCT_CO file (APPEND ${OCCT_CONFIG_FOR_DOXYGEN} "\nPROJECT_NUMBER = ${OCC_VERSION_STRING_EXT}") file (APPEND ${OCCT_CONFIG_FOR_DOXYGEN} "\nOUTPUT_DIRECTORY = ${OCCT_GENERATED_OVERVIEW_DIR}/.") file (APPEND ${OCCT_CONFIG_FOR_DOXYGEN} "\nPROJECT_LOGO = ${OCCT_OVERVIEW_DIR}/resources/occ_logo.png") -file (APPEND ${OCCT_CONFIG_FOR_DOXYGEN} "\nEXAMPLE_PATH = ${CMAKE_SOURCE_DIR}/src") +file (APPEND ${OCCT_CONFIG_FOR_DOXYGEN} "\nEXAMPLE_PATH = ${OCCT_ROOT_DIR}/src") set (OCCT_ARTICLE_PARAM_INPUT "INPUT =") set (OCCT_ARTICLE_PARAM_IMAGEPATH "IMAGE_PATH = ${OCCT_OVERVIEW_DIR}/resources/ ") diff --git a/samples/qt/IESample/CMakeLists.txt b/samples/qt/IESample/CMakeLists.txt index d29fa8bae0..a8dffeedcb 100644 --- a/samples/qt/IESample/CMakeLists.txt +++ b/samples/qt/IESample/CMakeLists.txt @@ -1,8 +1,8 @@ project(IESample) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample) -include_directories("${CMAKE_SOURCE_DIR}/${RELATIVE_DIR}/Interface/src") -include_directories("${CMAKE_SOURCE_DIR}/${RELATIVE_DIR}/Common/src") +include_directories("${OCCT_ROOT_DIR}/${RELATIVE_DIR}/Interface/src") +include_directories("${OCCT_ROOT_DIR}/${RELATIVE_DIR}/Common/src") OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample) diff --git a/samples/qt/OCCTOverview/CMakeLists.txt b/samples/qt/OCCTOverview/CMakeLists.txt index e9afaa4f65..27a029d8d1 100644 --- a/samples/qt/OCCTOverview/CMakeLists.txt +++ b/samples/qt/OCCTOverview/CMakeLists.txt @@ -1,7 +1,7 @@ project(OCCTOverview) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample) -include_directories("${CMAKE_SOURCE_DIR}/${RELATIVE_DIR}/../OCCTOverview/code") +include_directories("${OCCT_ROOT_DIR}/${RELATIVE_DIR}/../OCCTOverview/code") OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample) diff --git a/samples/qt/Tutorial/CMakeLists.txt b/samples/qt/Tutorial/CMakeLists.txt index c5b08c52ec..e9f30e2de6 100644 --- a/samples/qt/Tutorial/CMakeLists.txt +++ b/samples/qt/Tutorial/CMakeLists.txt @@ -1,8 +1,8 @@ project(Tutorial) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample) -include_directories("${CMAKE_SOURCE_DIR}/${RELATIVE_DIR}/Interface/src") -include_directories("${CMAKE_SOURCE_DIR}/${RELATIVE_DIR}/Common/src") +include_directories("${OCCT_ROOT_DIR}/${RELATIVE_DIR}/Interface/src") +include_directories("${OCCT_ROOT_DIR}/${RELATIVE_DIR}/Common/src") OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit) OCCT_INCLUDE_CMAKE_FILE (adm/cmake/occt_toolkit_prepare_sample)