diff --git a/Superbuild/BoostExternal.cmake b/Superbuild/BoostExternal.cmake index d11ca0887..05284ee82 100644 --- a/Superbuild/BoostExternal.cmake +++ b/Superbuild/BoostExternal.cmake @@ -28,22 +28,22 @@ # found at https://github.com/maidsafe/MaidSafe/blob/master/cmake_modules/add_boost.cmake # and code borrowed from ITK4 HDFMacros.cmake -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) # disable auto linking # also set in Seg3D? -SET(boost_CXX_Flags "-DBOOST_ALL_NO_LIB=1") -IF(APPLE) - LIST(APPEND boost_CXX_Flag "-DBOOST_LCAST_NO_WCHAR_T" "-DBOOST_THREAD_DONT_USE_ATOMIC") -ENDIF() -IF(WIN32) - LIST(APPEND boost_CXX_Flag "-DBOOST_BIND_ENABLE_STDCALL") -ENDIF() +set(boost_CXX_Flags "-DBOOST_ALL_NO_LIB=1") +if(APPLE) + list(APPEND boost_CXX_Flag "-DBOOST_LCAST_NO_WCHAR_T" "-DBOOST_THREAD_DONT_USE_ATOMIC") +endif() +if(WIN32) + list(APPEND boost_CXX_Flag "-DBOOST_BIND_ENABLE_STDCALL") +endif() -SET( boost_DEPENDENCIES ) +set( boost_DEPENDENCIES ) # explicitly set library list -SET(boost_Libraries +set(boost_Libraries "atomic" "date_time" "exception" @@ -53,27 +53,27 @@ SET(boost_Libraries "thread" CACHE INTERNAL "Boost library name.") -IF(BUILD_WITH_PYTHON) - ADD_DEFINITIONS(-DBOOST_PYTHON_STATIC_LIB=1) - LIST(APPEND boost_Libraries python) - LIST(APPEND boost_DEPENDENCIES Python_external) - LIST(APPEND boost_CXX_Flag "-DBOOST_PYTHON_STATIC_MODULE" "-DBOOST_PYTHON_STATIC_LIB") -ENDIF() +if(BUILD_WITH_PYTHON) + add_definitions(-DBOOST_PYTHON_STATIC_LIB=1) + list(APPEND boost_Libraries python) + list(APPEND boost_DEPENDENCIES Python_external) + list(APPEND boost_CXX_Flag "-DBOOST_PYTHON_STATIC_MODULE" "-DBOOST_PYTHON_STATIC_LIB") +endif() # TODO: set up 64-bit build detection # Boost Jam needs to have 64-bit build explicitly configured -IF(WIN32) - SET(FORCE_64BIT_BUILD ON) - SET(boost_GIT_TAG "origin/v1.67.0") -ELSE() - SET(boost_GIT_TAG "origin/v1.58.0") -ENDIF() +if(WIN32) + set(FORCE_64BIT_BUILD ON) + set(boost_GIT_TAG "origin/v1.67.0") +else() + set(boost_GIT_TAG "origin/v1.58.0") +endif() -SET(boost_GIT_URL "https://github.com/CIBC-Internal/boost.git") +set(boost_GIT_URL "https://github.com/CIBC-Internal/boost.git") -IF(TRAVIS_BUILD) - LIST(APPEND boost_CXX_Flag "-w") -ENDIF() +if(TRAVIS_BUILD) + list(APPEND boost_CXX_Flag "-w") +endif() # TODO: fix install step # @@ -99,24 +99,24 @@ ExternalProject_Add(Boost_external ExternalProject_Get_Property(Boost_external INSTALL_DIR) ExternalProject_Get_Property(Boost_external SOURCE_DIR) -SET(SCI_BOOST_INCLUDE ${SOURCE_DIR}) -SET(SCI_BOOST_LIBRARY_DIR ${SOURCE_DIR}/lib) -SET(SCI_BOOST_USE_FILE ${INSTALL_DIR}/UseBoost.cmake) +set(SCI_BOOST_INCLUDE ${SOURCE_DIR}) +set(SCI_BOOST_LIBRARY_DIR ${SOURCE_DIR}/lib) +set(SCI_BOOST_USE_FILE ${INSTALL_DIR}/UseBoost.cmake) -SET(BOOST_PREFIX "boost_") -SET(THREAD_POSTFIX "-mt") +set(BOOST_PREFIX "boost_") +set(THREAD_POSTFIX "-mt") -SET(SCI_BOOST_LIBRARY) +set(SCI_BOOST_LIBRARY) -FOREACH(lib ${boost_Libraries}) - SET(LIB_NAME "${BOOST_PREFIX}${lib}${THREAD_POSTFIX}") - LIST(APPEND SCI_BOOST_LIBRARY ${LIB_NAME}) -ENDFOREACH() +foreach(lib ${boost_Libraries}) + set(LIB_NAME "${BOOST_PREFIX}${lib}${THREAD_POSTFIX}") + list(APPEND SCI_BOOST_LIBRARY ${LIB_NAME}) +endforeach() # Boost is special case - normally this should be handled in external library repo -CONFIGURE_FILE(${SUPERBUILD_DIR}/BoostConfig.cmake.in ${INSTALL_DIR}/BoostConfig.cmake @ONLY) -CONFIGURE_FILE(${SUPERBUILD_DIR}/UseBoost.cmake ${SCI_BOOST_USE_FILE} COPYONLY) +configure_file(${SUPERBUILD_DIR}/BoostConfig.cmake.in ${INSTALL_DIR}/BoostConfig.cmake @ONLY) +configure_file(${SUPERBUILD_DIR}/UseBoost.cmake ${SCI_BOOST_USE_FILE} COPYONLY) -SET(Boost_DIR ${INSTALL_DIR} CACHE PATH "") +set(Boost_DIR ${INSTALL_DIR} CACHE PATH "") -MESSAGE(STATUS "Boost_DIR: ${Boost_DIR}") +message(STATUS "Boost_DIR: ${Boost_DIR}") diff --git a/Superbuild/CMakeLists.txt b/Superbuild/CMakeLists.txt index 80c65608a..80ed67a4e 100644 --- a/Superbuild/CMakeLists.txt +++ b/Superbuild/CMakeLists.txt @@ -24,17 +24,17 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9 FATAL_ERROR) -#CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12 FATAL_ERROR) -#CMAKE_MINIMUM_REQUIRED(VERSION 3.0 FATAL_ERROR) -IF(POLICY CMP0053) - CMAKE_POLICY(SET CMP0053 OLD) -ENDIF() -IF(POLICY CMP0054) - CMAKE_POLICY(SET CMP0054 NEW) -ENDIF() +cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR) +#cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) +#cmake_minimum_required(VERSION 3.0 FATAL_ERROR) +if(POLICY CMP0053) + cmake_policy(SET CMP0053 OLD) +endif() +if(POLICY CMP0054) + cmake_policy(SET CMP0054 NEW) +endif() -PROJECT(Superbuild) +project(Superbuild) -INCLUDE(${CMAKE_SOURCE_DIR}/Superbuild.cmake) +include(${CMAKE_SOURCE_DIR}/Superbuild.cmake) diff --git a/Superbuild/DataExternal.cmake b/Superbuild/DataExternal.cmake index 422cdccac..0f37f7aca 100644 --- a/Superbuild/DataExternal.cmake +++ b/Superbuild/DataExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(data_GIT_URL "https://github.com/CIBC-Internal/Seg3DData.git") +set(data_GIT_URL "https://github.com/CIBC-Internal/Seg3DData.git") # master should be always be publicly released version -SET(data_GIT_TAG "origin/master") +set(data_GIT_TAG "origin/master") -SET(data_DIR "${SEG3D_BINARY_DIR}/Seg3DData") +set(data_DIR "${SEG3D_BINARY_DIR}/Seg3DData") # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -45,6 +45,6 @@ ExternalProject_Add(Data_external ) # test data location for tests -SET(TEST_INPUT_PATH ${data_DIR} CACHE PATH "Root for all github-based data files") +set(TEST_INPUT_PATH ${data_DIR} CACHE PATH "Root for all github-based data files") -MESSAGE(STATUS "TEST_INPUT_PATH: ${TEST_INPUT_PATH}") +message(STATUS "TEST_INPUT_PATH: ${TEST_INPUT_PATH}") diff --git a/Superbuild/EigenExternal.cmake b/Superbuild/EigenExternal.cmake index 409d7082b..e08a4b90c 100644 --- a/Superbuild/EigenExternal.cmake +++ b/Superbuild/EigenExternal.cmake @@ -24,7 +24,7 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) # TODO: test on Windows ExternalProject_Add(Eigen_external @@ -37,6 +37,6 @@ ExternalProject_Add(Eigen_external ) ExternalProject_Get_Property(Eigen_external SOURCE_DIR) -SET(Eigen_DIR ${SOURCE_DIR} CACHE PATH "") +set(Eigen_DIR ${SOURCE_DIR} CACHE PATH "") -MESSAGE(STATUS "Eigen_DIR: ${Eigen_DIR}") +message(STATUS "Eigen_DIR: ${Eigen_DIR}") diff --git a/Superbuild/FreetypeExternal.cmake b/Superbuild/FreetypeExternal.cmake index fc1ee6414..9e22e49df 100644 --- a/Superbuild/FreetypeExternal.cmake +++ b/Superbuild/FreetypeExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(freetype_GIT_TAG "origin/master") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(freetype_GIT_TAG "origin/master") -IF(TRAVIS_BUILD) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -49,6 +49,6 @@ ExternalProject_Add(Freetype_external ) ExternalProject_Get_Property(Freetype_external BINARY_DIR) -SET(Freetype_DIR ${BINARY_DIR} CACHE PATH "") +set(Freetype_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "Freetype_DIR: ${Freetype_DIR}") +message(STATUS "Freetype_DIR: ${Freetype_DIR}") diff --git a/Superbuild/GlewExternal.cmake b/Superbuild/GlewExternal.cmake index eb65c7356..2aeb21d5b 100644 --- a/Superbuild/GlewExternal.cmake +++ b/Superbuild/GlewExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(glew_GIT_TAG "origin/master") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(glew_GIT_TAG "origin/master") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -49,6 +49,6 @@ ExternalProject_Add(Glew_external ) ExternalProject_Get_Property(Glew_external BINARY_DIR) -SET(Glew_DIR ${BINARY_DIR} CACHE PATH "") +set(Glew_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "Glew_DIR: ${Glew_DIR}") +message(STATUS "Glew_DIR: ${Glew_DIR}") diff --git a/Superbuild/ITKExternal.cmake b/Superbuild/ITKExternal.cmake index ca7b54d4b..ac17639be 100644 --- a/Superbuild/ITKExternal.cmake +++ b/Superbuild/ITKExternal.cmake @@ -24,9 +24,9 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(itk_ARGS +set(itk_ARGS "-DBUILD_SHARED_LIBS:BOOL=OFF" "-DITK_BUILD_SHARED_LIBS:BOOL=OFF" "-DBUILD_EXAMPLES:BOOL=OFF" @@ -35,17 +35,17 @@ SET(itk_ARGS "-DITK_INSTALL_NO_DEVELOPMENT:BOOL=OFF" ) -IF(TRAVIS_BUILD) - LIST(APPEND itk_ARGS +if(TRAVIS_BUILD) + list(APPEND itk_ARGS "-Wno-dev" "-Wno-deprecated" ) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() -SET(itk_CACHE_ARGS +set(itk_CACHE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}" "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}" "-DCMAKE_INSTALL_PREFIX:PATH=" @@ -78,17 +78,17 @@ SET(itk_CACHE_ARGS "-DCMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY:STATIC=${CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY}" ) -IF(BUILD_MOSAIC_TOOLS) - LIST(APPEND itk_CACHE_ARGS +if(BUILD_MOSAIC_TOOLS) + list(APPEND itk_CACHE_ARGS "-DITK_USE_FFTWD:BOOL=ON" "-DITK_USE_FFTWF:BOOL=ON" "-DModule_ITKImageIntensity:BOOL=ON" "-DModule_ITKThresholding:BOOL=ON" "-DModule_ITKTransformFactory:BOOL=ON" ) -ENDIF() +endif() -SET(itk_GIT_TAG "v5.1.2") +set(itk_GIT_TAG "v5.1.2") # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -103,6 +103,6 @@ ExternalProject_Add(ITK_external # hardcoded, since we need this before ITK's configure step ExternalProject_Get_Property(ITK_external INSTALL_DIR) -SET(ITK_DIR "${INSTALL_DIR}/lib/cmake/ITK-5.1" CACHE PATH "") +set(ITK_DIR "${INSTALL_DIR}/lib/cmake/ITK-5.1" CACHE PATH "") -MESSAGE(STATUS "ITK_DIR=${ITK_DIR}") +message(STATUS "ITK_DIR=${ITK_DIR}") diff --git a/Superbuild/ImplicitFunctionExternal.cmake b/Superbuild/ImplicitFunctionExternal.cmake index 699e95062..1d070c919 100644 --- a/Superbuild/ImplicitFunctionExternal.cmake +++ b/Superbuild/ImplicitFunctionExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(implicitFunction_GIT_TAG "origin/master") -SET(implicitFunction_DEPENDENCIES "Tetgen_external;Eigen_external") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(implicitFunction_GIT_TAG "origin/master") +set(implicitFunction_DEPENDENCIES "Tetgen_external;Eigen_external") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -57,6 +57,6 @@ ExternalProject_Add(ImplicitFunction_external ) ExternalProject_Get_Property(ImplicitFunction_external BINARY_DIR) -SET(ImplicitFunction_DIR ${BINARY_DIR} CACHE PATH "") +set(ImplicitFunction_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "ImplicitFunction_DIR: ${ImplicitFunction_DIR}") +message(STATUS "ImplicitFunction_DIR: ${ImplicitFunction_DIR}") diff --git a/Superbuild/LibPNGExternal.cmake b/Superbuild/LibPNGExternal.cmake index 8c3f607be..c604dda0b 100644 --- a/Superbuild/LibPNGExternal.cmake +++ b/Superbuild/LibPNGExternal.cmake @@ -24,14 +24,14 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(libpng_GIT_TAG "origin/master") -SET(libpng_DEPENDENCIES "Zlib_external") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(libpng_GIT_TAG "origin/master") +set(libpng_DEPENDENCIES "Zlib_external") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -54,6 +54,6 @@ ExternalProject_Add(LibPNG_external ) ExternalProject_Get_Property(LibPNG_external BINARY_DIR) -SET(LibPNG_DIR ${BINARY_DIR} CACHE PATH "") +set(LibPNG_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "LibPNG_DIR: ${LibPNG_DIR}") +message(STATUS "LibPNG_DIR: ${LibPNG_DIR}") diff --git a/Superbuild/PythonExternal.cmake b/Superbuild/PythonExternal.cmake index 895ef5878..8d3f35d34 100644 --- a/Superbuild/PythonExternal.cmake +++ b/Superbuild/PythonExternal.cmake @@ -26,59 +26,59 @@ # borrowed liberally from ParaView superbuild -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) # TODO: update when upgrading -SET(PY_MAJOR 3) -SET(PY_MINOR 4) -SET(PY_PATCH 3) -SET(SCI_PYTHON_VERSION "${PY_MAJOR}.${PY_MINOR}.${PY_PATCH}") -SET(SCI_PYTHON_VERSION_SHORT "${PY_MAJOR}.${PY_MINOR}") -SET(SCI_PYTHON_VERSION_SHORT_WIN32 "${PY_MAJOR}${PY_MINOR}") +set(PY_MAJOR 3) +set(PY_MINOR 4) +set(PY_PATCH 3) +set(SCI_PYTHON_VERSION "${PY_MAJOR}.${PY_MINOR}.${PY_PATCH}") +set(SCI_PYTHON_VERSION_SHORT "${PY_MAJOR}.${PY_MINOR}") +set(SCI_PYTHON_VERSION_SHORT_WIN32 "${PY_MAJOR}${PY_MINOR}") # TODO: recheck when upgrading # --with-pydebug -#SET(python_ABIFLAG_PYDEBUG "d") -SET(python_ABIFLAG_PYDEBUG) +#set(python_ABIFLAG_PYDEBUG "d") +set(python_ABIFLAG_PYDEBUG) # --with-pymalloc (default) # if disabling pymalloc (--without-pymalloc) for valgrind or to track other memory problems, # disable this ABI flag -SET(python_ABIFLAG_PYMALLOC "m") -SET(ABIFLAGS "${python_ABIFLAG_PYMALLOC}${python_ABIFLAG_PYDEBUG}") +set(python_ABIFLAG_PYMALLOC "m") +set(ABIFLAGS "${python_ABIFLAG_PYMALLOC}${python_ABIFLAG_PYDEBUG}") -SET(python_GIT_TAG "origin/master") -SET(python_GIT_URL "https://github.com/CIBC-Internal/python.git") +set(python_GIT_TAG "origin/master") +set(python_GIT_URL "https://github.com/CIBC-Internal/python.git") -SET(python_WIN32_ARCH) -SET(python_WIN32_64BIT_DIR) -SET(python_FRAMEWORK_ARCHIVE) +set(python_WIN32_ARCH) +set(python_WIN32_64BIT_DIR) +set(python_FRAMEWORK_ARCHIVE) -IF(UNIX) +if(UNIX) # TODO: figure out pip package - SET(python_CONFIGURE_FLAGS + set(python_CONFIGURE_FLAGS "--prefix=" "--with-threads" "--with-ensurepip=no" ) - IF(APPLE) + if(APPLE) # framework contains *.dylib - LIST(APPEND python_CONFIGURE_FLAGS "--enable-framework=") - SET(python_FRAMEWORK_ARCHIVE "framework.tar") - ELSE() - LIST(APPEND python_CONFIGURE_FLAGS "--enable-shared") - ENDIF() -ELSE() + list(APPEND python_CONFIGURE_FLAGS "--enable-framework=") + set(python_FRAMEWORK_ARCHIVE "framework.tar") + else() + list(APPEND python_CONFIGURE_FLAGS "--enable-shared") + endif() +else() # TODO: 32-bit windows build? - SET(python_WIN32_ARCH "x64") + set(python_WIN32_ARCH "x64") # 64-bit build only # 32-bit build outputs to PCbuild dir - SET(python_WIN32_64BIT_DIR "/amd64") - SET(python_ABIFLAG_PYDEBUG "_d") -ENDIF() + set(python_WIN32_64BIT_DIR "/amd64") + set(python_ABIFLAG_PYDEBUG "_d") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). -IF(UNIX) +if(UNIX) ExternalProject_Add(Python_external GIT_REPOSITORY ${python_GIT_URL} GIT_TAG ${python_GIT_TAG} @@ -86,15 +86,15 @@ IF(UNIX) CONFIGURE_COMMAND /configure ${python_CONFIGURE_FLAGS} PATCH_COMMAND "" ) - IF(APPLE) + if(APPLE) # Preserves links, permissions ExternalProject_Add_Step(Python_external framework_tar_archive COMMAND "${CMAKE_COMMAND}" -E tar cf ${python_FRAMEWORK_ARCHIVE} Python.framework DEPENDEES install WORKING_DIRECTORY ) - ENDIF() -ELSE() + endif() +else() ExternalProject_Add(Python_external GIT_REPOSITORY ${python_GIT_URL} GIT_TAG ${python_GIT_TAG} @@ -113,77 +113,77 @@ ELSE() DEPENDERS install WORKING_DIRECTORY ) -ENDIF() +endif() ExternalProject_Get_Property(Python_external SOURCE_DIR) ExternalProject_Get_Property(Python_external INSTALL_DIR) -SET(SCI_PYTHON_MODULE_PARENT_PATH lib) +set(SCI_PYTHON_MODULE_PARENT_PATH lib) -IF(UNIX) - SET(SCI_PYTHON_NAME python${SCI_PYTHON_VERSION_SHORT}) - IF(APPLE) +if(UNIX) + set(SCI_PYTHON_NAME python${SCI_PYTHON_VERSION_SHORT}) + if(APPLE) # TODO: check Xcode IDE builds... - SET(SCI_PYTHON_FRAMEWORK ${INSTALL_DIR}/Python.framework) - SET(SCI_PYTHON_ROOT_DIR ${SCI_PYTHON_FRAMEWORK}/Versions/${SCI_PYTHON_VERSION_SHORT}) - SET(SCI_PYTHON_INCLUDE ${SCI_PYTHON_ROOT_DIR}/Headers) - SET(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}/lib) - SET(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) - SET(SCI_PYTHON_EXE ${SCI_PYTHON_ROOT_DIR}/bin/${SCI_PYTHON_NAME}) - SET(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}) + set(SCI_PYTHON_FRAMEWORK ${INSTALL_DIR}/Python.framework) + set(SCI_PYTHON_ROOT_DIR ${SCI_PYTHON_FRAMEWORK}/Versions/${SCI_PYTHON_VERSION_SHORT}) + set(SCI_PYTHON_INCLUDE ${SCI_PYTHON_ROOT_DIR}/Headers) + set(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}/lib) + set(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) + set(SCI_PYTHON_EXE ${SCI_PYTHON_ROOT_DIR}/bin/${SCI_PYTHON_NAME}) + set(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}) # required by interpreter interface - SET(PYTHON_MODULE_SEARCH_ROOT Python.framework/Versions/${SCI_PYTHON_VERSION_SHORT}/lib/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) - IF(SEG3D_BUILD_INTERFACE) - SET(PYTHON_MODULE_SEARCH_PATH ../Frameworks/${PYTHON_MODULE_SEARCH_ROOT} CACHE INTERNAL "Python modules." FORCE) - ELSE() - SET(PYTHON_MODULE_SEARCH_PATH ${PYTHON_MODULE_SEARCH_ROOT} CACHE INTERNAL "Python modules." FORCE) - ENDIF() - SET(SCI_PYTHON_FRAMEWORK_ARCHIVE ${INSTALL_DIR}/${python_FRAMEWORK_ARCHIVE}) - ELSE() - SET(SCI_PYTHON_ROOT_DIR ${INSTALL_DIR}) - SET(SCI_PYTHON_INCLUDE ${INSTALL_DIR}/include/${SCI_PYTHON_NAME}${ABIFLAGS}) - SET(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}/lib) - SET(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) - IF(SEG3D_BITS MATCHES 64) - LIST(APPEND SCI_PYTHON_LINK_LIBRARY_DIRS ${INSTALL_DIR}/lib64) - SET(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH ${INSTALL_DIR}/lib64/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) - ENDIF() - SET(SCI_PYTHON_EXE ${INSTALL_DIR}/bin/${SCI_PYTHON_NAME}) - SET(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}${ABIFLAGS}) + set(PYTHON_MODULE_SEARCH_ROOT Python.framework/Versions/${SCI_PYTHON_VERSION_SHORT}/lib/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) + if(SEG3D_BUILD_INTERFACE) + set(PYTHON_MODULE_SEARCH_PATH ../Frameworks/${PYTHON_MODULE_SEARCH_ROOT} CACHE INTERNAL "Python modules." FORCE) + else() + set(PYTHON_MODULE_SEARCH_PATH ${PYTHON_MODULE_SEARCH_ROOT} CACHE INTERNAL "Python modules." FORCE) + endif() + set(SCI_PYTHON_FRAMEWORK_ARCHIVE ${INSTALL_DIR}/${python_FRAMEWORK_ARCHIVE}) + else() + set(SCI_PYTHON_ROOT_DIR ${INSTALL_DIR}) + set(SCI_PYTHON_INCLUDE ${INSTALL_DIR}/include/${SCI_PYTHON_NAME}${ABIFLAGS}) + set(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}/lib) + set(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) + if(SEG3D_BITS MATCHES 64) + list(APPEND SCI_PYTHON_LINK_LIBRARY_DIRS ${INSTALL_DIR}/lib64) + set(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH ${INSTALL_DIR}/lib64/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) + endif() + set(SCI_PYTHON_EXE ${INSTALL_DIR}/bin/${SCI_PYTHON_NAME}) + set(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}${ABIFLAGS}) # required by interpreter interface - SET(PYTHON_MODULE_SEARCH_PATH ${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) - SET(SCI_PYTHON_MODULE_LIBRARY_PATH ${INSTALL_DIR}/${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME}) - ENDIF() -ELSE() + set(PYTHON_MODULE_SEARCH_PATH ${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) + set(SCI_PYTHON_MODULE_LIBRARY_PATH ${INSTALL_DIR}/${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME}) + endif() +else() # Windows does not do install step - SET(SCI_PYTHON_ROOT_DIR ${SOURCE_DIR}/PCbuild) - SET(SCI_PYTHON_INCLUDE ${SOURCE_DIR}/Include) - SET(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}) - SET(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) - SET(SCI_PYTHON_NAME python${SCI_PYTHON_VERSION_SHORT_WIN32}) - - SET(SCI_PYTHON_EXE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/python.exe) - SET(SCI_PYTHON_DEBUG_EXE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/python${python_ABIFLAG_PYDEBUG}.exe) - SET(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}) - SET(SCI_PYTHON_LIBRARY_RELEASE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}.lib) - SET(SCI_PYTHON_LIBRARY_DEBUG ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${python_ABIFLAG_PYDEBUG}.lib) - SET(SCI_PYTHON_DLL_PATH ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}) - SET(SCI_PYTHON_DLL_DEBUG_PATH ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${python_ABIFLAG_PYDEBUG}${CMAKE_SHARED_LIBRARY_SUFFIX}) + set(SCI_PYTHON_ROOT_DIR ${SOURCE_DIR}/PCbuild) + set(SCI_PYTHON_INCLUDE ${SOURCE_DIR}/Include) + set(SCI_PYTHON_LIBRARY_DIR ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}) + set(SCI_PYTHON_LINK_LIBRARY_DIRS ${SCI_PYTHON_LIBRARY_DIR}) + set(SCI_PYTHON_NAME python${SCI_PYTHON_VERSION_SHORT_WIN32}) + + set(SCI_PYTHON_EXE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/python.exe) + set(SCI_PYTHON_DEBUG_EXE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/python${python_ABIFLAG_PYDEBUG}.exe) + set(SCI_PYTHON_LIBRARY ${SCI_PYTHON_NAME}) + set(SCI_PYTHON_LIBRARY_RELEASE ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}.lib) + set(SCI_PYTHON_LIBRARY_DEBUG ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${python_ABIFLAG_PYDEBUG}.lib) + set(SCI_PYTHON_DLL_PATH ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}) + set(SCI_PYTHON_DLL_DEBUG_PATH ${SCI_PYTHON_ROOT_DIR}${python_WIN32_64BIT_DIR}/${SCI_PYTHON_NAME}${python_ABIFLAG_PYDEBUG}${CMAKE_SHARED_LIBRARY_SUFFIX}) # required by interpreter interface - SET(PYTHON_MODULE_SEARCH_PATH ${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) - SET(SCI_PYTHON_MODULE_LIBRARY_PATH ${SOURCE_DIR}/Lib) -ENDIF() + set(PYTHON_MODULE_SEARCH_PATH ${SCI_PYTHON_MODULE_PARENT_PATH}/${SCI_PYTHON_NAME} CACHE INTERNAL "Python modules." FORCE) + set(SCI_PYTHON_MODULE_LIBRARY_PATH ${SOURCE_DIR}/Lib) +endif() -SET(SCI_PYTHON_USE_FILE ${INSTALL_DIR}/UsePython.cmake) +set(SCI_PYTHON_USE_FILE ${INSTALL_DIR}/UsePython.cmake) # Python is special case - normally this should be handled in external library repo -CONFIGURE_FILE(${SUPERBUILD_DIR}/PythonConfig.cmake.in ${INSTALL_DIR}/PythonConfig.cmake @ONLY) -CONFIGURE_FILE(${SUPERBUILD_DIR}/UsePython.cmake ${SCI_PYTHON_USE_FILE} COPYONLY) +configure_file(${SUPERBUILD_DIR}/PythonConfig.cmake.in ${INSTALL_DIR}/PythonConfig.cmake @ONLY) +configure_file(${SUPERBUILD_DIR}/UsePython.cmake ${SCI_PYTHON_USE_FILE} COPYONLY) -SET(Python_DIR ${INSTALL_DIR} CACHE PATH "") +set(Python_DIR ${INSTALL_DIR} CACHE PATH "") -MESSAGE(STATUS "Python_DIR: ${Python_DIR}") +message(STATUS "Python_DIR: ${Python_DIR}") diff --git a/Superbuild/SQLiteExternal.cmake b/Superbuild/SQLiteExternal.cmake index be9867632..bc4462634 100644 --- a/Superbuild/SQLiteExternal.cmake +++ b/Superbuild/SQLiteExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(sqlite_GIT_TAG "origin/master") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(sqlite_GIT_TAG "origin/master") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -49,6 +49,6 @@ ExternalProject_Add(SQLite_external ) ExternalProject_Get_Property(SQLite_external BINARY_DIR) -SET(SQLite_DIR ${BINARY_DIR} CACHE PATH "") +set(SQLite_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "SQLite_DIR: ${SQLite_DIR}") +message(STATUS "SQLite_DIR: ${SQLite_DIR}") diff --git a/Superbuild/Superbuild.cmake b/Superbuild/Superbuild.cmake index 1b7412c13..cb0a5e5b7 100644 --- a/Superbuild/Superbuild.cmake +++ b/Superbuild/Superbuild.cmake @@ -28,39 +28,39 @@ # TODO: build from archive - Git not used ########################################### -SET(compress_type "GIT" CACHE INTERNAL "") -SET(ep_base "${CMAKE_BINARY_DIR}/Externals" CACHE INTERNAL "") +set(compress_type "GIT" CACHE INTERNAL "") +set(ep_base "${CMAKE_BINARY_DIR}/Externals" CACHE INTERNAL "") ########################################### # DETERMINE ARCHITECTURE # In order for the code to depend on the architecture settings ########################################### -IF(CMAKE_SIZEOF_VOID_P MATCHES 8) - SET(SEG3D_BITS 64) -ELSE() - SET(SEG3D_BITS 32) -ENDIF() +if(CMAKE_SIZEOF_VOID_P MATCHES 8) + set(SEG3D_BITS 64) +else() + set(SEG3D_BITS 32) +endif() # Hardcode (unfortunately) minumum OS X version for # productbuild's Distribution.xml -SET(OSX_MINIMUM_OS_VERSION "10.12" CACHE STRING "Set the minimum Mac OS X version for the installer package XML configuration file.") -MARK_AS_ADVANCED(OSX_MINIMUM_OS_VERSION) +set(OSX_MINIMUM_OS_VERSION "10.12" CACHE STRING "Set the minimum Mac OS X version for the installer package XML configuration file.") +mark_as_advanced(OSX_MINIMUM_OS_VERSION) ########################################### # Set default CMAKE_BUILD_TYPE # if empty for Unix Makefile builds ########################################### -IF(CMAKE_GENERATOR MATCHES "Unix Makefiles" OR CMAKE_GENERATOR MATCHES "Ninja" AND NOT CMAKE_BUILD_TYPE) - SET(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE) -ENDIF() +if(CMAKE_GENERATOR MATCHES "Unix Makefiles" OR CMAKE_GENERATOR MATCHES "Ninja" AND NOT CMAKE_BUILD_TYPE) + set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." FORCE) +endif() -FIND_PACKAGE(Git) +find_package(Git) -IF(NOT GIT_FOUND) - MESSAGE(ERROR "Cannot find Git. Git is required for Seg3D's Superbuild") -ENDIF() +if(NOT GIT_FOUND) + message(ERROR "Cannot find Git. Git is required for Seg3D's Superbuild") +endif() ########################################### @@ -69,15 +69,15 @@ ENDIF() # * mosaicing tools ########################################### -OPTION(BUILD_LARGE_VOLUME_TOOLS "Build with large volume (bricked) dataset support." ON) -SET(DEFAULT_MOSAIC_SETTING ON) -IF(WIN32) +option(BUILD_LARGE_VOLUME_TOOLS "Build with large volume (bricked) dataset support." ON) +set(DEFAULT_MOSAIC_SETTING ON) +if(WIN32) # still highly experimental on Windows... - SET(DEFAULT_MOSAIC_SETTING OFF) -ENDIF() -OPTION(BUILD_MOSAIC_TOOLS "Build with mosaicing tool support." ${DEFAULT_MOSAIC_SETTING}) + set(DEFAULT_MOSAIC_SETTING OFF) +endif() +option(BUILD_MOSAIC_TOOLS "Build with mosaicing tool support." ${DEFAULT_MOSAIC_SETTING}) -INCLUDE( ExternalProject ) +include( ExternalProject ) # Compute -G arg for configuring external projects with the same CMake generator: #if(CMAKE_EXTRA_GENERATOR) @@ -91,166 +91,166 @@ INCLUDE( ExternalProject ) # Options for console, headless mode ########################################### -OPTION(BUILD_TESTING "Build with tests." OFF) +option(BUILD_TESTING "Build with tests." OFF) -OPTION(SEG3D_BUILD_INTERFACE "Build the GUI interface to Seg3D" ON) -IF(WIN32) - OPTION(SEG3D_SHOW_CONSOLE "Show console for debugging (Windows GUI build only)" OFF) -ENDIF() +option(SEG3D_BUILD_INTERFACE "Build the GUI interface to Seg3D" ON) +if(WIN32) + option(SEG3D_SHOW_CONSOLE "Show console for debugging (Windows GUI build only)" OFF) +endif() ########################################### # Configure python ########################################### -OPTION(BUILD_WITH_PYTHON "Build with python support." ON) +option(BUILD_WITH_PYTHON "Build with python support." ON) ########################################### # Configure Seg3D library build ########################################### -IF((WIN32) AND (MSVC_VERSION GREATER 1900)) +if((WIN32) AND (MSVC_VERSION GREATER 1900)) - OPTION(BUILD_STANDALONE_LIBRARY "Build with a Seg3D library build." OFF) + option(BUILD_STANDALONE_LIBRARY "Build with a Seg3D library build." OFF) - IF(BUILD_STANDALONE_LIBRARY) - SET(BUILD_TESTING OFF) - SET(BUILD_WITH_PYTHON OFF) - SET(SUPERBUILD_LIBS_SOURCE_DIR ${CMAKE_BINARY_DIR}) - ENDIF() + if(BUILD_STANDALONE_LIBRARY) + set(BUILD_TESTING OFF) + set(BUILD_WITH_PYTHON OFF) + set(SUPERBUILD_LIBS_SOURCE_DIR ${CMAKE_BINARY_DIR}) + endif() -ENDIF() +endif() -OPTION(BUILD_MANUAL_TOOLS_ONLY "Build Seg3D library with only manual tools." OFF) +option(BUILD_MANUAL_TOOLS_ONLY "Build Seg3D library with only manual tools." OFF) ###########################################ß # Travis CI build needs to be as slim as possible ########################################### -OPTION(TRAVIS_BUILD "Slim build for Travis CI" OFF) -MARK_AS_ADVANCED(TRAVIS_BUILD) +option(TRAVIS_BUILD "Slim build for Travis CI" OFF) +mark_as_advanced(TRAVIS_BUILD) -SET(ENABLED_WARNINGS "-Wall") +set(ENABLED_WARNINGS "-Wall") ########################################### # Configure Qt ########################################### -IF(WIN32) - OPTION(DO_ZLIB_MANGLE "Mangle Zlib names" OFF) -ELSE() - OPTION(DO_ZLIB_MANGLE "Mangle Zlib names to avoid conflicts with Qt5 or other external libraries" ON) -ENDIF() +if(WIN32) + option(DO_ZLIB_MANGLE "Mangle Zlib names" OFF) +else() + option(DO_ZLIB_MANGLE "Mangle Zlib names to avoid conflicts with Qt5 or other external libraries" ON) +endif() -IF (TRAVIS_BUILD) - SET(QT_MIN_VERSION "5.9") -ELSE() - SET(QT_MIN_VERSION "5.12") -ENDIF() +if (TRAVIS_BUILD) + set(QT_MIN_VERSION "5.9") +else() + set(QT_MIN_VERSION "5.12") +endif() -IF(SEG3D_BUILD_INTERFACE) - SET(Qt5_PATH "" CACHE PATH "Path to directory where Qt 5 is installed. Directory should contain lib and bin subdirectories.") - #SET(CMAKE_AUTOMOC ON) +if(SEG3D_BUILD_INTERFACE) + set(Qt5_PATH "" CACHE PATH "Path to directory where Qt 5 is installed. Directory should contain lib and bin subdirectories.") + #set(CMAKE_AUTOMOC ON) - FIND_PACKAGE(Qt5 COMPONENTS Core Gui OpenGL Svg REQUIRED HINTS ${Qt5_PATH}) + find_package(Qt5 COMPONENTS Core Gui OpenGL Svg REQUIRED HINTS ${Qt5_PATH}) - IF(Qt5_FOUND) - MESSAGE(STATUS "Found Qt version: ${Qt5_VERSION}") + if(Qt5_FOUND) + message(STATUS "Found Qt version: ${Qt5_VERSION}") - IF(${Qt5_VERSION} VERSION_LESS QT_MIN_VERSION) - MESSAGE(FATAL_ERROR "Qt ${QT_MIN_VERSION} or greater is required for building the Seg3D GUI") - ENDIF() - ELSE() - MESSAGE(FATAL_ERROR "Qt5 is required for building the Seg3D GUI. Set Qt5_PATH to directory where Qt 5 is installed (containing lib and bin subdirectories) or set SEG3D_BUILD_INTERFACE to OFF.") - ENDIF() + if(${Qt5_VERSION} VERSION_LESS QT_MIN_VERSION) + message(FATAL_ERROR "Qt ${QT_MIN_VERSION} or greater is required for building the Seg3D GUI") + endif() + else() + message(FATAL_ERROR "Qt5 is required for building the Seg3D GUI. Set Qt5_PATH to directory where Qt 5 is installed (containing lib and bin subdirectories) or set SEG3D_BUILD_INTERFACE to OFF.") + endif() - IF(APPLE) - SET(MACDEPLOYQT_OUTPUT_LEVEL 0 CACHE STRING "Set macdeployqt output level (0-3)") - MARK_AS_ADVANCED(MACDEPLOYQT_OUTPUT_LEVEL) - ENDIF() + if(APPLE) + set(MACDEPLOYQT_OUTPUT_LEVEL 0 CACHE STRING "Set macdeployqt output level (0-3)") + mark_as_advanced(MACDEPLOYQT_OUTPUT_LEVEL) + endif() -ENDIF() +endif() ########################################### # Configure sample data download ########################################### -OPTION(DOWNLOAD_DATA "Download Seg3D sample and test data repository." ON) +option(DOWNLOAD_DATA "Download Seg3D sample and test data repository." ON) ########################################### # *Nix C++ compiler flags ########################################### -IF(UNIX) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ${ENABLED_WARNINGS}") - IF(APPLE) - SET(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++11") - SET(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++ -ftemplate-depth=256 ${DISABLED_WARNINGS_CLANG}") - SET(CMAKE_CXX_FLAGS_DEBUG "-Wshorten-64-to-32 ${CMAKE_CXX_FLAGS_DEBUG}") - ELSE() - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive ${DISABLED_WARNINGS_GCC}") - SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--no-as-needed -ldl -lrt") - ENDIF() -ENDIF() +if(UNIX) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 ${ENABLED_WARNINGS}") + if(APPLE) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++11") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++ -ftemplate-depth=256 ${DISABLED_WARNINGS_CLANG}") + set(CMAKE_CXX_FLAGS_DEBUG "-Wshorten-64-to-32 ${CMAKE_CXX_FLAGS_DEBUG}") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fpermissive ${DISABLED_WARNINGS_GCC}") + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--no-as-needed -ldl -lrt") + endif() +endif() ########################################### # Microsoft VC compiler flags ########################################### -IF(WIN32 AND MSVC) +if(WIN32 AND MSVC) # Enable Intrinsic Functions - SET(CMAKE_CXX_FLAGS "/Oi ${CMAKE_CXX_FLAGS}") + set(CMAKE_CXX_FLAGS "/Oi ${CMAKE_CXX_FLAGS}") # Build with multiple processes -- speeds up compilation on multi-processor machines. - SET(CMAKE_CXX_FLAGS "/MP ${CMAKE_CXX_FLAGS}") -ENDIF() + set(CMAKE_CXX_FLAGS "/MP ${CMAKE_CXX_FLAGS}") +endif() ########################################### # Configure LaTeX and Doxygen documentation ########################################### -OPTION(BUILD_DOCUMENTATION "Build documentation" OFF) -MARK_AS_ADVANCED(BUILD_DOCUMENTATION) +option(BUILD_DOCUMENTATION "Build documentation" OFF) +mark_as_advanced(BUILD_DOCUMENTATION) -FIND_PACKAGE(LATEX) +find_package(LATEX) -IF(BUILD_DOCUMENTATION AND NOT PDFLATEX_COMPILER) - MESSAGE(WARNING "LaTeX compiler not found. Disabling documentation build.") - SET(BUILD_DOCUMENTATION OFF) -ENDIF() +if(BUILD_DOCUMENTATION AND NOT PDFLATEX_COMPILER) + message(WARNING "LaTeX compiler not found. Disabling documentation build.") + set(BUILD_DOCUMENTATION OFF) +endif() -IF(BUILD_DOCUMENTATION) - OPTION(BUILD_DOXYGEN_DOCUMENTATION "Generate doxygen-based documentation." OFF) - MARK_AS_ADVANCED(BUILD_DOXYGEN_DOCUMENTATION) +if(BUILD_DOCUMENTATION) + option(BUILD_DOXYGEN_DOCUMENTATION "Generate doxygen-based documentation." OFF) + mark_as_advanced(BUILD_DOXYGEN_DOCUMENTATION) - IF(BUILD_DOXYGEN_DOCUMENTATION) - FIND_PACKAGE(Doxygen) + if(BUILD_DOXYGEN_DOCUMENTATION) + find_package(Doxygen) - IF(NOT DOXYGEN_FOUND) - MESSAGE(WARNING "Doxygen not found. Disabling Doxygen documentation build.") - SET(BUILD_DOXYGEN_DOCUMENTATION OFF CACHE BOOL "Generate doxygen-based documentation." FORCE) - ENDIF() - ENDIF() -ENDIF() + if(NOT DOXYGEN_FOUND) + message(WARNING "Doxygen not found. Disabling Doxygen documentation build.") + set(BUILD_DOXYGEN_DOCUMENTATION OFF CACHE BOOL "Generate doxygen-based documentation." FORCE) + endif() + endif() +endif() ########################################### # Configure externals ########################################### -SET( Seg3D_DEPENDENCIES ) +set( Seg3D_DEPENDENCIES ) -MACRO(ADD_EXTERNAL cmake_file external) - INCLUDE( ${cmake_file} ) - LIST(APPEND Seg3D_DEPENDENCIES ${external}) -ENDMACRO() +macro(ADD_EXTERNAL cmake_file external) + include( ${cmake_file} ) + list(APPEND Seg3D_DEPENDENCIES ${external}) +endmacro() -SET(SUPERBUILD_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "" FORCE) -SET(SEG3D_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../src CACHE INTERNAL "" FORCE) -SET(SEG3D_BINARY_DIR ${CMAKE_BINARY_DIR}/Seg3D CACHE INTERNAL "" FORCE) +set(SUPERBUILD_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "" FORCE) +set(SEG3D_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../src CACHE INTERNAL "" FORCE) +set(SEG3D_BINARY_DIR ${CMAKE_BINARY_DIR}/Seg3D CACHE INTERNAL "" FORCE) -IF(DOWNLOAD_DATA) +if(DOWNLOAD_DATA) ADD_EXTERNAL( ${SUPERBUILD_DIR}/DataExternal.cmake Data_external ) -ENDIF() +endif() ADD_EXTERNAL( ${SUPERBUILD_DIR}/ZlibExternal.cmake Zlib_external ) ADD_EXTERNAL( ${SUPERBUILD_DIR}/GlewExternal.cmake Glew_external ) @@ -263,13 +263,13 @@ ADD_EXTERNAL( ${SUPERBUILD_DIR}/TetgenExternal.cmake Tetgen_external ) ADD_EXTERNAL( ${SUPERBUILD_DIR}/EigenExternal.cmake Eigen_external ) ADD_EXTERNAL( ${SUPERBUILD_DIR}/ImplicitFunctionExternal.cmake ImplicitFunction_external ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) ADD_EXTERNAL( ${SUPERBUILD_DIR}/PythonExternal.cmake Python_external ) -ENDIF() +endif() ADD_EXTERNAL( ${SUPERBUILD_DIR}/BoostExternal.cmake Boost_external ) -SET(SEG3D_CACHE_ARGS +set(SEG3D_CACHE_ARGS "-DCMAKE_VERBOSE_MAKEFILE:BOOL=${CMAKE_VERBOSE_MAKEFILE}" "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}" "-DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}" @@ -308,27 +308,27 @@ SET(SEG3D_CACHE_ARGS "-DTetgen_DIR:PATH=${Tetgen_DIR}" ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) # python executable will be release version in IDE builds - LIST(APPEND SEG3D_CACHE_ARGS + list(APPEND SEG3D_CACHE_ARGS "-DPython_DIR:PATH=${Python_DIR}" "-DPYTHON_EXECUTABLE:FILEPATH=${SCI_PYTHON_EXE}" ) -ENDIF() +endif() -IF(BUILD_DOCUMENTATION) - LIST(APPEND SEG3D_CACHE_ARGS +if(BUILD_DOCUMENTATION) + list(APPEND SEG3D_CACHE_ARGS "-DBUILD_DOCUMENTATION:BOOL=${BUILD_DOCUMENTATION}" "-DBUILD_DOXYGEN_DOCUMENTATION:BOOL=${BUILD_DOXYGEN_DOCUMENTATION}" "-DPDFLATEX_COMPILER:FILEPATH=${PDFLATEX_COMPILER}" "-DBIBTEX_COMPILER:FILEPATH=${BIBTEX_COMPILER}" "-DDOXYGEN_EXECUTABLE:FILEPATH=${DOXYGEN_EXECUTABLE}" ) -ENDIF() +endif() -IF(SEG3D_BUILD_INTERFACE) - LIST(APPEND SEG3D_CACHE_ARGS +if(SEG3D_BUILD_INTERFACE) + list(APPEND SEG3D_CACHE_ARGS "-DQt5_PATH:PATH=${Qt5_PATH}" "-DQt5Core_DIR:PATH=${Qt5Core_DIR}" "-DQt5Gui_DIR:PATH=${Qt5Gui_DIR}" @@ -336,7 +336,7 @@ IF(SEG3D_BUILD_INTERFACE) "-DQt5Svg_DIR:PATH=${Qt5Svg_DIR}" "-DMACDEPLOYQT_OUTPUT_LEVEL:STRING=${MACDEPLOYQT_OUTPUT_LEVEL}" ) -ENDIF() +endif() ExternalProject_Add( Seg3D_external DEPENDS ${Seg3D_DEPENDENCIES} diff --git a/Superbuild/TeemExternal.cmake b/Superbuild/TeemExternal.cmake index c4b8974f3..7b762e934 100644 --- a/Superbuild/TeemExternal.cmake +++ b/Superbuild/TeemExternal.cmake @@ -24,14 +24,14 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(teem_GIT_TAG "origin/master") -SET(teem_DEPENDENCIES "Zlib_external;LibPNG_external") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(teem_GIT_TAG "origin/master") +set(teem_DEPENDENCIES "Zlib_external;LibPNG_external") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -55,6 +55,6 @@ ExternalProject_Add(Teem_external ) ExternalProject_Get_Property(Teem_external BINARY_DIR) -SET(Teem_DIR ${BINARY_DIR} CACHE PATH "") +set(Teem_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "Teem_DIR: ${Teem_DIR}") +message(STATUS "Teem_DIR: ${Teem_DIR}") diff --git a/Superbuild/TetgenCMakeLists.txt b/Superbuild/TetgenCMakeLists.txt index 4a43f7c80..b2775af7c 100644 --- a/Superbuild/TetgenCMakeLists.txt +++ b/Superbuild/TetgenCMakeLists.txt @@ -70,49 +70,49 @@ # Copyright (c) 2009 Scientific Computing and Imaging Institute, University of Utah. -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -IF(COMMAND CMAKE_POLICY) - CMAKE_POLICY(VERSION 2.6) -ENDIF(COMMAND CMAKE_POLICY) +cmake_minimum_required(VERSION 2.6) +if(COMMAND CMAKE_POLICY) + cmake_policy(VERSION 2.6) +endif() -PROJECT(tetgen) +project(tetgen) -SET(TETGEN_SRCS +set(TETGEN_SRCS tetgen.cxx predicates.cxx ) -ADD_DEFINITIONS(-DSELF_CHECK) +add_definitions(-DSELF_CHECK) -IF(WIN32 AND MSVC) +if(WIN32 AND MSVC) # Bind application to the current version of the VC libraries - ADD_DEFINITIONS(-D_BIND_TO_CURRENT_VCLIBS_VERSION) + add_definitions(-D_BIND_TO_CURRENT_VCLIBS_VERSION) # MSVC level 3 warnings are a little ridiculous - SET(CMAKE_CXX_WARNING_LEVEL 1) - IF(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") - STRING(REGEX REPLACE "/W[0-4]" "/W1" + set(CMAKE_CXX_WARNING_LEVEL 1) + if(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") + string(REGEX REPLACE "/W[0-4]" "/W1" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") - ELSE(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W1") - ENDIF(CMAKE_CXX_FLAGS MATCHES "/W[0-4]") + else() + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /W1") + endif() - SET_SOURCE_FILES_PROPERTIES(predicates.cxx + set_source_files_properties(predicates.cxx PROPERTIES COMPILE_FLAGS "/Od" ) -ELSE() +else() # Usually we support GCC and MSVC, so we're not likely to run # into trouble with this. - SET_SOURCE_FILES_PROPERTIES(predicates.cxx + set_source_files_properties(predicates.cxx PROPERTIES COMPILE_FLAGS "-O0" ) -ENDIF() +endif() # Tetgen is meant to be built as a static library -ADD_LIBRARY(${TETGEN_LIBRARY} STATIC ${TETGEN_SRCS}) -SET_TARGET_PROPERTIES(${TETGEN_LIBRARY} +add_library(${TETGEN_LIBRARY} STATIC ${TETGEN_SRCS}) +set_target_properties(${TETGEN_LIBRARY} PROPERTIES COMPILE_DEFINITIONS "TETLIBRARY" ) diff --git a/Superbuild/TetgenExternal.cmake b/Superbuild/TetgenExternal.cmake index 279bfd77b..98cf8eb5a 100644 --- a/Superbuild/TetgenExternal.cmake +++ b/Superbuild/TetgenExternal.cmake @@ -24,17 +24,17 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(TETGEN_LIBRARY "tet") +set(TETGEN_LIBRARY "tet") -# IF(TRAVIS_BUILD OR ${CMAKE_VERSION} VERSION_GREATER 3.7.2) +# if(TRAVIS_BUILD OR ${CMAKE_VERSION} VERSION_GREATER 3.7.2) # # allowed since CMake 3.7.2 # # only supporting in CI builds for now, since CMake version is so new - # SET(DOWNLOAD_URL "http://tetgen.org/files/tetgen1.4.3.tar.gz http://www.sci.utah.edu/devbuilds/seg3d/tetgen1.4.3.tar.gz") -# ELSE() - # SET(DOWNLOAD_URL "http://tetgen.org/files/tetgen1.4.3.tar.gz") -# ENDIF() + # set(DOWNLOAD_URL "http://tetgen.org/files/tetgen1.4.3.tar.gz http://www.sci.utah.edu/devbuilds/seg3d/tetgen1.4.3.tar.gz") +# else() + # set(DOWNLOAD_URL "http://tetgen.org/files/tetgen1.4.3.tar.gz") +# endif() # ExternalProject_Add(Tetgen_external # URL ${DOWNLOAD_URL} @@ -48,8 +48,8 @@ SET(TETGEN_LIBRARY "tet") # ) -SET(tetgen_SVN_URL "https://gforge.sci.utah.edu/svn/tetgen") -#SET(sci_data_DIR "${CMAKE_BINARY_DIR}/SCIRunData") +set(tetgen_SVN_URL "https://gforge.sci.utah.edu/svn/tetgen") +#set(sci_data_DIR "${CMAKE_BINARY_DIR}/SCIRunData") ExternalProject_Add(Tetgen_external SVN_REPOSITORY "${tetgen_SVN_URL}" @@ -76,14 +76,14 @@ ExternalProject_Add_Step(Tetgen_external add_cmakelists ExternalProject_Get_Property(Tetgen_external SOURCE_DIR) ExternalProject_Get_Property(Tetgen_external BINARY_DIR) ExternalProject_Get_Property(Tetgen_external INSTALL_DIR) -SET(TETGEN_INCLUDE ${SOURCE_DIR}) -SET(TETGEN_LIBRARY_DIR ${BINARY_DIR}) -SET(TETGEN_USE_FILE ${INSTALL_DIR}/UseTetgen.cmake) +set(TETGEN_INCLUDE ${SOURCE_DIR}) +set(TETGEN_LIBRARY_DIR ${BINARY_DIR}) +set(TETGEN_USE_FILE ${INSTALL_DIR}/UseTetgen.cmake) # see Tetgen CMakeLists.txt file -SET(Tetgen_DIR ${INSTALL_DIR} CACHE PATH "") +set(Tetgen_DIR ${INSTALL_DIR} CACHE PATH "") # Normally this should be handled in external library repo -CONFIGURE_FILE(${SUPERBUILD_DIR}/TetgenConfig.cmake.in ${INSTALL_DIR}/TetgenConfig.cmake @ONLY) -CONFIGURE_FILE(${SUPERBUILD_DIR}/UseTetgen.cmake ${TETGEN_USE_FILE} COPYONLY) +configure_file(${SUPERBUILD_DIR}/TetgenConfig.cmake.in ${INSTALL_DIR}/TetgenConfig.cmake @ONLY) +configure_file(${SUPERBUILD_DIR}/UseTetgen.cmake ${TETGEN_USE_FILE} COPYONLY) -MESSAGE(STATUS "Tetgen_DIR: ${Tetgen_DIR}") +message(STATUS "Tetgen_DIR: ${Tetgen_DIR}") diff --git a/Superbuild/ZlibExternal.cmake b/Superbuild/ZlibExternal.cmake index d149fa8dc..fbcaeb5a3 100644 --- a/Superbuild/ZlibExternal.cmake +++ b/Superbuild/ZlibExternal.cmake @@ -24,13 +24,13 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET_PROPERTY(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) -SET(zlib_GIT_TAG "origin/master") +set_property(DIRECTORY PROPERTY "EP_BASE" ${ep_base}) +set(zlib_GIT_TAG "origin/master") -IF(TRAVIS_BUILD) - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") -ENDIF() +if(TRAVIS_BUILD) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w") + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -w") +endif() # If CMake ever allows overriding the checkout command or adding flags, # git checkout -q will silence message about detached head (harmless). @@ -50,6 +50,6 @@ ExternalProject_Add(Zlib_external ) ExternalProject_Get_Property(Zlib_external BINARY_DIR) -SET(Zlib_DIR ${BINARY_DIR} CACHE PATH "") +set(Zlib_DIR ${BINARY_DIR} CACHE PATH "") -MESSAGE(STATUS "Zlib_DIR: ${Zlib_DIR}") +message(STATUS "Zlib_DIR: ${Zlib_DIR}") diff --git a/src/Application/CMakeLists.txt b/src/Application/CMakeLists.txt index b0e163022..79279124e 100644 --- a/src/Application/CMakeLists.txt +++ b/src/Application/CMakeLists.txt @@ -27,29 +27,29 @@ # -ADD_SUBDIRECTORY(DatabaseManager) -ADD_SUBDIRECTORY(Filters) -ADD_SUBDIRECTORY(InterfaceManager) -ADD_SUBDIRECTORY(Layer) -ADD_SUBDIRECTORY(LayerIO) -ADD_SUBDIRECTORY(PreferencesManager) -ADD_SUBDIRECTORY(Project) -ADD_SUBDIRECTORY(ProjectManager) -ADD_SUBDIRECTORY(Provenance) -ADD_SUBDIRECTORY(Renderer) -ADD_SUBDIRECTORY(StatusBar) -ADD_SUBDIRECTORY(Tool) -ADD_SUBDIRECTORY(ToolManager) -ADD_SUBDIRECTORY(Tools) -ADD_SUBDIRECTORY(Viewer) -ADD_SUBDIRECTORY(ViewerManager) -ADD_SUBDIRECTORY(Clipboard) -ADD_SUBDIRECTORY(UndoBuffer) +add_subdirectory(DatabaseManager) +add_subdirectory(Filters) +add_subdirectory(InterfaceManager) +add_subdirectory(Layer) +add_subdirectory(LayerIO) +add_subdirectory(PreferencesManager) +add_subdirectory(Project) +add_subdirectory(ProjectManager) +add_subdirectory(Provenance) +add_subdirectory(Renderer) +add_subdirectory(StatusBar) +add_subdirectory(Tool) +add_subdirectory(ToolManager) +add_subdirectory(Tools) +add_subdirectory(Viewer) +add_subdirectory(ViewerManager) +add_subdirectory(Clipboard) +add_subdirectory(UndoBuffer) -IF(BUILD_WITH_PYTHON) - ADD_SUBDIRECTORY(Socket) -ENDIF() +if(BUILD_WITH_PYTHON) + add_subdirectory(Socket) +endif() -IF(BUILD_MOSAIC_TOOLS) - ADD_SUBDIRECTORY(ImageRegistrationTools) -ENDIF() +if(BUILD_MOSAIC_TOOLS) + add_subdirectory(ImageRegistrationTools) +endif() diff --git a/src/Application/Clipboard/CMakeLists.txt b/src/Application/Clipboard/CMakeLists.txt index e8a500124..ac930b029 100644 --- a/src/Application/Clipboard/CMakeLists.txt +++ b/src/Application/Clipboard/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(APPLICATION_CLIPBOARD_SRCS +set(APPLICATION_CLIPBOARD_SRCS Clipboard.h Clipboard.cc ClipboardItem.h @@ -42,7 +42,7 @@ SET(APPLICATION_CLIPBOARD_SRCS CORE_ADD_LIBRARY(Application_Clipboard ${APPLICATION_CLIPBOARD_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Clipboard +target_link_libraries(Application_Clipboard Core_Application Core_Utils ${SCI_BOOST_LIBRARY}) diff --git a/src/Application/DatabaseManager/CMakeLists.txt b/src/Application/DatabaseManager/CMakeLists.txt index 6f7d741bb..a7c45a674 100644 --- a/src/Application/DatabaseManager/CMakeLists.txt +++ b/src/Application/DatabaseManager/CMakeLists.txt @@ -31,14 +31,14 @@ # Set sources ################################################## -SET(APPLICATION_DATABASEMANAGER_SRCS +set(APPLICATION_DATABASEMANAGER_SRCS DatabaseManager.h DatabaseManager.cc ) CORE_ADD_LIBRARY(Application_DatabaseManager ${APPLICATION_DATABASEMANAGER_SRCS} ) -TARGET_LINK_LIBRARIES(Application_DatabaseManager +target_link_libraries(Application_DatabaseManager Core_Application Core_Utils ${SCI_BOOST_LIBRARY}) diff --git a/src/Application/Filters/CMakeLists.txt b/src/Application/Filters/CMakeLists.txt index 51eef16ff..d89a7fde6 100644 --- a/src/Application/Filters/CMakeLists.txt +++ b/src/Application/Filters/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(APPLICATION_FILTERS_SRCS +set(APPLICATION_FILTERS_SRCS LayerFilter.h LayerFilter.cc LayerFilterLock.h @@ -55,14 +55,14 @@ SET(APPLICATION_FILTERS_SRCS SingleThresholdFilter.cc ) -SET(APPLICATION_FILTERS_UTILS_SRCS +set(APPLICATION_FILTERS_UTILS_SRCS Utils/PadFilterInternals.h Utils/PadFilterInternals.cc Utils/PadValues.h Utils/PadValues.cc ) -SET(APPLICATION_FILTERS_ACTIONS_SRCS +set(APPLICATION_FILTERS_ACTIONS_SRCS Actions/ActionResample.h Actions/ActionResample.cc Actions/ActionCannyEdgeDetectionFilter.h @@ -153,10 +153,10 @@ SET(APPLICATION_FILTERS_ACTIONS_SRCS Actions/ActionWatershedFilter.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_Filters ${APPLICATION_FILTERS_ACTIONS_SRCS}) - SET(APPLICATION_FILTERS_SRCS ${APPLICATION_FILTERS_SRCS} ${PYTHON_WRAPPER}) -ENDIF() + set(APPLICATION_FILTERS_SRCS ${APPLICATION_FILTERS_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_Filters ${APPLICATION_FILTERS_SRCS} @@ -164,7 +164,7 @@ CORE_ADD_LIBRARY(Application_Filters ${APPLICATION_FILTERS_UTILS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Filters +target_link_libraries(Application_Filters Core_Utils Core_Action Core_State diff --git a/src/Application/ImageRegistrationTools/Actions/Tests/CMakeLists.txt b/src/Application/ImageRegistrationTools/Actions/Tests/CMakeLists.txt index 23c562ee8..ea3935d03 100644 --- a/src/Application/ImageRegistrationTools/Actions/Tests/CMakeLists.txt +++ b/src/Application/ImageRegistrationTools/Actions/Tests/CMakeLists.txt @@ -26,7 +26,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(APPLICATION_IRTOOLS_ACTIONS_TESTS_SRCS +set(APPLICATION_IRTOOLS_ACTIONS_TESTS_SRCS ActionAssembleFilterTests.cc ActionFFTFilterTests.cc ActionRefineTranslateFilterTests.cc @@ -36,7 +36,7 @@ REGISTER_UNIT_TEST(Application_ImageRegistrationTools_Actions_Tests ${APPLICATION_IRTOOLS_ACTIONS_TESTS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_ImageRegistrationTools_Actions_Tests +target_link_libraries(Application_ImageRegistrationTools_Actions_Tests Application_ImageRegistrationTools gtest gtest_main diff --git a/src/Application/ImageRegistrationTools/CMakeLists.txt b/src/Application/ImageRegistrationTools/CMakeLists.txt index 8c170b2e1..fcfea68f6 100644 --- a/src/Application/ImageRegistrationTools/CMakeLists.txt +++ b/src/Application/ImageRegistrationTools/CMakeLists.txt @@ -26,7 +26,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(APPLICATION_IRTOOLS_SRCS +set(APPLICATION_IRTOOLS_SRCS AssembleFilter.cc AssembleFilter.h BlobFeatureEnhancementFilter.cc @@ -49,7 +49,7 @@ SET(APPLICATION_IRTOOLS_SRCS SliceToVolumeFilter.h ) -SET(APPLICATION_IRTOOLS_ACTIONS_SRCS +set(APPLICATION_IRTOOLS_ACTIONS_SRCS Actions/ActionAddTransformsFilter.cc Actions/ActionAddTransformsFilter.h Actions/ActionAssembleFilter.cc @@ -74,10 +74,10 @@ SET(APPLICATION_IRTOOLS_ACTIONS_SRCS Actions/ActionSliceToVolumeFilter.h ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_ImageRegistrationTools ${APPLICATION_IRTOOLS_ACTIONS_SRCS}) - SET(APPLICATION_IRTOOLS_NOREGISTER_SRCS ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_IRTOOLS_NOREGISTER_SRCS ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_ImageRegistrationTools ${APPLICATION_IRTOOLS_NOREGISTER_SRCS} @@ -85,7 +85,7 @@ CORE_ADD_LIBRARY(Application_ImageRegistrationTools ${APPLICATION_IRTOOLS_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_ImageRegistrationTools +target_link_libraries(Application_ImageRegistrationTools Core_Utils Core_Application Core_Interface diff --git a/src/Application/InterfaceManager/CMakeLists.txt b/src/Application/InterfaceManager/CMakeLists.txt index dc036fadc..bda260c20 100644 --- a/src/Application/InterfaceManager/CMakeLists.txt +++ b/src/Application/InterfaceManager/CMakeLists.txt @@ -31,17 +31,17 @@ # Set sources ################################################## -SET(APPLICATION_INTERFACEMANAGER_SRCS +set(APPLICATION_INTERFACEMANAGER_SRCS InterfaceManager.h InterfaceManager.cc ) -SET(APPLICATION_INTERFACEMANAGER_ACTIONS_SRCS) +set(APPLICATION_INTERFACEMANAGER_ACTIONS_SRCS) CORE_ADD_LIBRARY(Application_InterfaceManager ${APPLICATION_INTERFACEMANAGER_SRCS} ${APPLICATION_INTERFACEMANAGER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_InterfaceManager +target_link_libraries(Application_InterfaceManager Core_Utils Core_Application Core_Interface diff --git a/src/Application/Layer/CMakeLists.txt b/src/Application/Layer/CMakeLists.txt index b6a3fc704..eda4f4365 100644 --- a/src/Application/Layer/CMakeLists.txt +++ b/src/Application/Layer/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(APPLICATION_LAYER_SRCS +set(APPLICATION_LAYER_SRCS LayerFWD.h LayerGroup.h LayerGroup.cc @@ -64,7 +64,7 @@ SET(APPLICATION_LAYER_SRCS LargeVolumeLayer.cc ) -SET(APPLICATION_LAYER_ACTIONS_SRCS +set(APPLICATION_LAYER_ACTIONS_SRCS Actions/ActionActivateLayer.h Actions/ActionActivateLayer.cc Actions/ActionShiftActiveLayer.h @@ -103,16 +103,16 @@ SET(APPLICATION_LAYER_ACTIONS_SRCS Actions/ActionReportScriptStatus.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_Layer ${APPLICATION_LAYER_ACTIONS_SRCS}) - SET(APPLICATION_LAYER_SRCS ${APPLICATION_LAYER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_LAYER_SRCS ${APPLICATION_LAYER_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_Layer ${APPLICATION_LAYER_SRCS} ${APPLICATION_LAYER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Layer +target_link_libraries(Application_Layer Core_Action Core_Application Core_Interface diff --git a/src/Application/LayerIO/Actions/Tests/CMakeLists.txt b/src/Application/LayerIO/Actions/Tests/CMakeLists.txt index 3244fef94..acf45f000 100644 --- a/src/Application/LayerIO/Actions/Tests/CMakeLists.txt +++ b/src/Application/LayerIO/Actions/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Application_LayerIO_Tests_SRCS +set(Application_LayerIO_Tests_SRCS ActionExportVectorTests.cc ) @@ -33,7 +33,7 @@ REGISTER_UNIT_TEST(Application_LayerIO_Tests ${Application_LayerIO_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Application_LayerIO_Tests +target_link_libraries(Application_LayerIO_Tests Application_LayerIO Testing_Utils gtest diff --git a/src/Application/LayerIO/CMakeLists.txt b/src/Application/LayerIO/CMakeLists.txt index 411de4fbe..b78244575 100644 --- a/src/Application/LayerIO/CMakeLists.txt +++ b/src/Application/LayerIO/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(APPLICATION_LAYERIO_SRCS +set(APPLICATION_LAYERIO_SRCS LayerExporter.h LayerExporter.cc LayerImporter.h @@ -51,7 +51,7 @@ SET(APPLICATION_LAYERIO_SRCS LayerIO.cc ) -SET(APPLICATION_LAYERIO_ACTIONS_SRCS +set(APPLICATION_LAYERIO_ACTIONS_SRCS Actions/ActionExportLayer.h Actions/ActionExportLayer.cc Actions/ActionExportSegmentation.h @@ -70,11 +70,11 @@ SET(APPLICATION_LAYERIO_ACTIONS_SRCS Actions/ActionImportLargeVolumeLayer.cc ) -SET(APPLICATION_LAYERIO_ACTIONS_SRCS_OTHER +set(APPLICATION_LAYERIO_ACTIONS_SRCS_OTHER Actions/ActionExportVector.h ) -SET(APPLICATION_LAYERIO_IMPORTERS_SRCS +set(APPLICATION_LAYERIO_IMPORTERS_SRCS ITKLayerImporter.h ITKLayerImporter.cc ITKSeriesLayerImporter.h @@ -93,7 +93,7 @@ SET(APPLICATION_LAYERIO_IMPORTERS_SRCS GDCMLayerImporter.cc ) -SET(APPLICATION_LAYERIO_EXPORTERS_SRCS +set(APPLICATION_LAYERIO_EXPORTERS_SRCS ITKDataLayerExporter.h ITKDataLayerExporter.cc ITKMaskLayerExporter.h @@ -106,10 +106,10 @@ SET(APPLICATION_LAYERIO_EXPORTERS_SRCS MatlabLayerExporter.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_LayerIO ${APPLICATION_LAYERIO_ACTIONS_SRCS}) - SET(APPLICATION_LAYERIO_SRCS ${APPLICATION_LAYERIO_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_LAYERIO_SRCS ${APPLICATION_LAYERIO_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_LayerIO ${APPLICATION_LAYERIO_SRCS} ${APPLICATION_LAYERIO_IMPORTERS_SRCS} @@ -118,7 +118,7 @@ CORE_ADD_LIBRARY(Application_LayerIO ${APPLICATION_LAYERIO_SRCS} ${APPLICATION_LAYERIO_ACTIONS_SRCS_OTHER} ) -TARGET_LINK_LIBRARIES(Application_LayerIO +target_link_libraries(Application_LayerIO Core_Utils Core_Geometry Core_DataBlock diff --git a/src/Application/PreferencesManager/CMakeLists.txt b/src/Application/PreferencesManager/CMakeLists.txt index 62a4fd6ad..b7f711827 100644 --- a/src/Application/PreferencesManager/CMakeLists.txt +++ b/src/Application/PreferencesManager/CMakeLists.txt @@ -30,12 +30,12 @@ # Set sources ################################################## -SET(APPLICATION_PREFERENCESMANAGER_SRCS +set(APPLICATION_PREFERENCESMANAGER_SRCS PreferencesManager.h PreferencesManager.cc ) -SET(APPLICATION_PREFERENCESMANAGER_ACTIONS_SRCS +set(APPLICATION_PREFERENCESMANAGER_ACTIONS_SRCS Actions/ActionSavePreferences.h Actions/ActionSavePreferences.cc ) @@ -44,7 +44,7 @@ CORE_ADD_LIBRARY(Application_PreferencesManager ${APPLICATION_PREFERENCESMANAGER ${APPLICATION_PREFERENCESMANAGER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_PreferencesManager +target_link_libraries(Application_PreferencesManager Core_Utils Core_EventHandler Core_Application diff --git a/src/Application/Project/CMakeLists.txt b/src/Application/Project/CMakeLists.txt index 61648203c..0f5a98d20 100644 --- a/src/Application/Project/CMakeLists.txt +++ b/src/Application/Project/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(APPLICATION_PROJECT_SRCS +set(APPLICATION_PROJECT_SRCS DataManager.h DataManager.cc InputFilesImporter.h @@ -43,14 +43,14 @@ SET(APPLICATION_PROJECT_SRCS ProjectNote.h ) -SET(APPLICATION_PROJECT_ACTIONS_SRCS +set(APPLICATION_PROJECT_ACTIONS_SRCS ) CORE_ADD_LIBRARY(Application_Project ${APPLICATION_PROJECT_SRCS} ${APPLICATION_PROJECT_ACTIONS_SRCS} ) -IF(APPLE) -TARGET_LINK_LIBRARIES(Application_Project +if(APPLE) +target_link_libraries(Application_Project Core_Action Core_State Core_Utils @@ -62,8 +62,8 @@ TARGET_LINK_LIBRARIES(Application_Project ${SCI_BOOST_LIBRARY} ${SCI_SQLITE_LIBRARY} /System/Library/Frameworks/CoreServices.framework) -ELSE(APPLE) -TARGET_LINK_LIBRARIES(Application_Project +else() +target_link_libraries(Application_Project Core_Action Core_State Core_Utils @@ -75,5 +75,5 @@ TARGET_LINK_LIBRARIES(Application_Project ${SCI_BOOST_LIBRARY} ${SCI_SQLITE_LIBRARY}) -ENDIF(APPLE) +endif() diff --git a/src/Application/ProjectManager/CMakeLists.txt b/src/Application/ProjectManager/CMakeLists.txt index 030c36e33..cb972e9c7 100644 --- a/src/Application/ProjectManager/CMakeLists.txt +++ b/src/Application/ProjectManager/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(APPLICATION_PROJECTMANAGER_SRCS +set(APPLICATION_PROJECTMANAGER_SRCS AutoSave.h AutoSave.cc ProjectManager.h @@ -38,7 +38,7 @@ SET(APPLICATION_PROJECTMANAGER_SRCS ProjectInfo.h ) -SET(APPLICATION_PROJECTMANAGER_ACTIONS_SRCS +set(APPLICATION_PROJECTMANAGER_ACTIONS_SRCS Actions/ActionAddNote.h Actions/ActionAddNote.cc Actions/ActionAutoSave.h @@ -61,15 +61,15 @@ SET(APPLICATION_PROJECTMANAGER_ACTIONS_SRCS Actions/ActionSaveSession.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_ProjectManager ${APPLICATION_PROJECTMANAGER_ACTIONS_SRCS}) - SET(APPLICATION_PROJECTMANAGER_SRCS ${APPLICATION_PROJECTMANAGER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_PROJECTMANAGER_SRCS ${APPLICATION_PROJECTMANAGER_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_ProjectManager ${APPLICATION_PROJECTMANAGER_SRCS} ${APPLICATION_PROJECTMANAGER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_ProjectManager +target_link_libraries(Application_ProjectManager Core_Utils Core_EventHandler Core_Application diff --git a/src/Application/Provenance/CMakeLists.txt b/src/Application/Provenance/CMakeLists.txt index a89b29aed..047c4a402 100644 --- a/src/Application/Provenance/CMakeLists.txt +++ b/src/Application/Provenance/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(APPLICATION_PROVENANCE_SRCS +set(APPLICATION_PROVENANCE_SRCS Provenance.h Provenance.cc ProvenanceStep.h @@ -40,7 +40,7 @@ SET(APPLICATION_PROVENANCE_SRCS CORE_ADD_LIBRARY(Application_Provenance ${APPLICATION_PROVENANCE_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Provenance +target_link_libraries(Application_Provenance Core_Application Core_Utils ${SCI_BOOST_LIBRARY}) diff --git a/src/Application/Renderer/CMakeLists.txt b/src/Application/Renderer/CMakeLists.txt index 0b67a49ee..db011d7c4 100644 --- a/src/Application/Renderer/CMakeLists.txt +++ b/src/Application/Renderer/CMakeLists.txt @@ -30,7 +30,7 @@ # Import shaders into source files ################################################## -SET(APPLICATION_RENDERER_SHADER_SRCS +set(APPLICATION_RENDERER_SHADER_SRCS Lighting.vert Lighting.frag Fog.vert @@ -51,7 +51,7 @@ CORE_IMPORT_SHADER(APPLICATION_RENDERER_SHADER_STRING_SRCS # Set sources ################################################## -SET(APPLICATION_RENDERER_SRCS +set(APPLICATION_RENDERER_SRCS Renderer.h Renderer.cc SliceShader.h @@ -69,7 +69,7 @@ CORE_ADD_LIBRARY(Application_Renderer ${APPLICATION_RENDERER_SRCS} ${APPLICATION_RENDERER_SHADER_STRING_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Renderer +target_link_libraries(Application_Renderer Core_Utils Core_EventHandler Core_TextRenderer diff --git a/src/Application/Socket/CMakeLists.txt b/src/Application/Socket/CMakeLists.txt index 5681688ad..b6a28ca4f 100644 --- a/src/Application/Socket/CMakeLists.txt +++ b/src/Application/Socket/CMakeLists.txt @@ -31,14 +31,14 @@ # Set sources ################################################## -SET(APPLICATION_SOCKET_SRCS +set(APPLICATION_SOCKET_SRCS ActionSocket.h ActionSocket.cc ) CORE_ADD_LIBRARY(Application_Socket ${APPLICATION_SOCKET_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Socket +target_link_libraries(Application_Socket Core_Python) ADD_TEST_DIR(Tests) diff --git a/src/Application/Socket/Tests/CMakeLists.txt b/src/Application/Socket/Tests/CMakeLists.txt index 8e4b47690..f117c6030 100644 --- a/src/Application/Socket/Tests/CMakeLists.txt +++ b/src/Application/Socket/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Application_Socket_Tests_SRCS +set(Application_Socket_Tests_SRCS ActionSocketTests.cc ) @@ -33,7 +33,7 @@ REGISTER_UNIT_TEST(Application_Socket_Tests ${Application_Socket_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Socket_Tests +target_link_libraries(Application_Socket_Tests Application_Socket Testing_Utils gtest diff --git a/src/Application/StatusBar/CMakeLists.txt b/src/Application/StatusBar/CMakeLists.txt index 627cda6bb..1314cd947 100644 --- a/src/Application/StatusBar/CMakeLists.txt +++ b/src/Application/StatusBar/CMakeLists.txt @@ -31,14 +31,14 @@ # Set sources ################################################## -SET(APPLICATION_STATUSBAR_SRCS +set(APPLICATION_STATUSBAR_SRCS StatusBar.h StatusBar.cc ) CORE_ADD_LIBRARY(Application_StatusBar ${APPLICATION_STATUSBAR_SRCS} ) -TARGET_LINK_LIBRARIES(Application_StatusBar +target_link_libraries(Application_StatusBar Core_Interface Core_Utils ${SCI_BOOST_LIBRARY}) diff --git a/src/Application/Tool/CMakeLists.txt b/src/Application/Tool/CMakeLists.txt index d472d44fc..0e902f061 100644 --- a/src/Application/Tool/CMakeLists.txt +++ b/src/Application/Tool/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(APPLICATION_TOOL_SRCS +set(APPLICATION_TOOL_SRCS GroupTargetTool.h GroupTargetTool.cc SeedPointsTool.h @@ -49,14 +49,14 @@ SET(APPLICATION_TOOL_SRCS ToolInterface.cc ) -SET(APPLICATION_TOOL_ACTIONS_SRCS +set(APPLICATION_TOOL_ACTIONS_SRCS Actions/ActionSaveToolPreferences.h Actions/ActionSaveToolPreferences.cc ) CORE_ADD_LIBRARY(Application_Tool ${APPLICATION_TOOL_SRCS} ${APPLICATION_TOOL_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Tool +target_link_libraries(Application_Tool Core_Utils Core_Application Core_Interface diff --git a/src/Application/ToolManager/CMakeLists.txt b/src/Application/ToolManager/CMakeLists.txt index c8928e3c9..cf0450ad9 100644 --- a/src/Application/ToolManager/CMakeLists.txt +++ b/src/Application/ToolManager/CMakeLists.txt @@ -30,12 +30,12 @@ # Set sources ################################################## -SET(APPLICATION_TOOLMANAGER_SRCS +set(APPLICATION_TOOLMANAGER_SRCS ToolManager.h ToolManager.cc ) -SET(APPLICATION_TOOLMANAGER_ACTIONS_SRCS +set(APPLICATION_TOOLMANAGER_ACTIONS_SRCS Actions/ActionOpenTool.h Actions/ActionOpenTool.cc Actions/ActionCloseTool.h @@ -44,16 +44,16 @@ SET(APPLICATION_TOOLMANAGER_ACTIONS_SRCS Actions/ActionActivateTool.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_ToolManager ${APPLICATION_TOOLMANAGER_ACTIONS_SRCS}) - SET(APPLICATION_TOOLMANAGER_SRCS ${APPLICATION_TOOLMANAGER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_TOOLMANAGER_SRCS ${APPLICATION_TOOLMANAGER_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_ToolManager ${APPLICATION_TOOLMANAGER_SRCS} ${APPLICATION_TOOLMANAGER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_ToolManager +target_link_libraries(Application_ToolManager Core_Utils Core_Application Core_Interface diff --git a/src/Application/Tools/CMakeLists.txt b/src/Application/Tools/CMakeLists.txt index 9d156beea..a7c154841 100644 --- a/src/Application/Tools/CMakeLists.txt +++ b/src/Application/Tools/CMakeLists.txt @@ -30,7 +30,7 @@ # Import shaders into source files ################################################## -SET(APPLICATION_TOOLS_SHADER_SRCS +set(APPLICATION_TOOLS_SHADER_SRCS detail/MaskShader.frag ) @@ -42,7 +42,7 @@ CORE_IMPORT_SHADER(APPLICATION_TOOLS_SHADER_STRING_SRCS # Set sources ################################################## -SET(APPLICATION_TOOLS_SRCS +set(APPLICATION_TOOLS_SRCS PaintTool.h PaintTool.cc InvertTool.h @@ -131,14 +131,14 @@ SET(APPLICATION_TOOLS_SRCS WatershedFilter.cc ) -SET(APPLICATION_TOOLS_NOREGISTER_SRCS +set(APPLICATION_TOOLS_NOREGISTER_SRCS SliceRange.h SliceRange.cc detail/MaskShader.h detail/MaskShader.cc ) -SET(APPLICATION_TOOLS_ACTIONS_SRCS +set(APPLICATION_TOOLS_ACTIONS_SRCS Actions/ActionPaint.h Actions/ActionPaint.cc Actions/ActionPolyline.h @@ -155,10 +155,10 @@ SET(APPLICATION_TOOLS_ACTIONS_SRCS Actions/ActionExtractDataLayer.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_Tools ${APPLICATION_TOOLS_ACTIONS_SRCS}) - SET(APPLICATION_TOOLS_NOREGISTER_SRCS ${APPLICATION_TOOLS_NOREGISTER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_TOOLS_NOREGISTER_SRCS ${APPLICATION_TOOLS_NOREGISTER_SRCS} ${PYTHON_WRAPPER}) +endif() ITK_MODULE_LOAD(ITKCommon) @@ -170,7 +170,7 @@ CORE_ADD_LIBRARY(Application_Tools ${APPLICATION_TOOLS_SHADER_STRING_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Tools +target_link_libraries(Application_Tools Core_Utils Core_Application Core_Interface diff --git a/src/Application/UndoBuffer/CMakeLists.txt b/src/Application/UndoBuffer/CMakeLists.txt index ddaef8630..1960e2fc1 100644 --- a/src/Application/UndoBuffer/CMakeLists.txt +++ b/src/Application/UndoBuffer/CMakeLists.txt @@ -31,30 +31,30 @@ # Set sources ################################################## -SET(APPLICATION_UNDOBUFFER_SRCS +set(APPLICATION_UNDOBUFFER_SRCS UndoBuffer.h UndoBuffer.cc UndoBufferItem.h UndoBufferItem.cc ) -SET(APPLICATION_UNDOBUFFER_ACTIONS_SRCS +set(APPLICATION_UNDOBUFFER_ACTIONS_SRCS Actions/ActionRedo.h Actions/ActionRedo.cc Actions/ActionUndo.h Actions/ActionUndo.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_UndoBuffer ${APPLICATION_UNDOBUFFER_ACTIONS_SRCS}) - SET(APPLICATION_UNDOBUFFER_SRCS ${APPLICATION_UNDOBUFFER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_UNDOBUFFER_SRCS ${APPLICATION_UNDOBUFFER_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_UndoBuffer ${APPLICATION_UNDOBUFFER_SRCS} ${APPLICATION_UNDOBUFFER_ACTIONS_SRCS}) -TARGET_LINK_LIBRARIES(Application_UndoBuffer +target_link_libraries(Application_UndoBuffer Core_Utils Core_Action ${SCI_BOOST_LIBRARY}) diff --git a/src/Application/Viewer/CMakeLists.txt b/src/Application/Viewer/CMakeLists.txt index 8f452005c..0c2f9782a 100644 --- a/src/Application/Viewer/CMakeLists.txt +++ b/src/Application/Viewer/CMakeLists.txt @@ -31,14 +31,14 @@ # Set sources ################################################## -SET(APPLICATION_VIEW_SRCS +set(APPLICATION_VIEW_SRCS Viewer.h Viewer.cc ViewManipulator.h ViewManipulator.cc ) -SET(APPLICATION_VIEW_ACTIONS_SRCS +set(APPLICATION_VIEW_ACTIONS_SRCS Actions/ActionAutoView.h Actions/ActionAutoView.cc Actions/ActionOffsetSlice.h @@ -47,15 +47,15 @@ SET(APPLICATION_VIEW_ACTIONS_SRCS Actions/ActionSnap.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_Viewer ${APPLICATION_VIEW_ACTIONS_SRCS}) - SET(APPLICATION_VIEW_SRCS ${APPLICATION_VIEW_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_VIEW_SRCS ${APPLICATION_VIEW_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_Viewer ${APPLICATION_VIEW_SRCS} ${APPLICATION_VIEW_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_Viewer +target_link_libraries(Application_Viewer Core_Utils Core_DataBlock Core_Volume diff --git a/src/Application/ViewerManager/CMakeLists.txt b/src/Application/ViewerManager/CMakeLists.txt index 70651f70c..96fb31c6f 100644 --- a/src/Application/ViewerManager/CMakeLists.txt +++ b/src/Application/ViewerManager/CMakeLists.txt @@ -30,12 +30,12 @@ # Set sources ################################################## -SET(APPLICATION_VIEWMANAGER_SRCS +set(APPLICATION_VIEWMANAGER_SRCS ViewerManager.h ViewerManager.cc ) -SET(APPLICATION_VIEWMANAGER_ACTIONS_SRCS +set(APPLICATION_VIEWMANAGER_ACTIONS_SRCS Actions/ActionPickPoint.h Actions/ActionPickPoint.cc Actions/ActionNewFeature.h @@ -44,16 +44,16 @@ SET(APPLICATION_VIEWMANAGER_ACTIONS_SRCS Actions/ActionDeleteFeature.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Application_ViewerManager ${APPLICATION_VIEWMANAGER_ACTIONS_SRCS}) - SET(APPLICATION_VIEWMANAGER_SRCS ${APPLICATION_VIEWMANAGER_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(APPLICATION_VIEWMANAGER_SRCS ${APPLICATION_VIEWMANAGER_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Application_ViewerManager ${APPLICATION_VIEWMANAGER_SRCS} ${APPLICATION_VIEWMANAGER_ACTIONS_SRCS} ) -TARGET_LINK_LIBRARIES(Application_ViewerManager +target_link_libraries(Application_ViewerManager Core_Utils Core_Application Core_Interface diff --git a/src/Bootstrap/CMakeLists.txt b/src/Bootstrap/CMakeLists.txt index 92911bb29..d8b0d3766 100644 --- a/src/Bootstrap/CMakeLists.txt +++ b/src/Bootstrap/CMakeLists.txt @@ -26,4 +26,4 @@ # DEALINGS IN THE SOFTWARE. # -ADD_SUBDIRECTORY(ShaderImporter) +add_subdirectory(ShaderImporter) diff --git a/src/Bootstrap/ShaderImporter/CMakeLists.txt b/src/Bootstrap/ShaderImporter/CMakeLists.txt index dc5d7cc33..addc86426 100644 --- a/src/Bootstrap/ShaderImporter/CMakeLists.txt +++ b/src/Bootstrap/ShaderImporter/CMakeLists.txt @@ -26,8 +26,8 @@ # DEALINGS IN THE SOFTWARE. # -SET(SHADER_IMPORTER_SRCS +set(SHADER_IMPORTER_SRCS main.cc ) -ADD_EXECUTABLE(ShaderImporter ${SHADER_IMPORTER_SRCS}) +add_executable(ShaderImporter ${SHADER_IMPORTER_SRCS}) diff --git a/src/CMake/Core.cmake b/src/CMake/Core.cmake index 161855602..177573de7 100644 --- a/src/CMake/Core.cmake +++ b/src/CMake/Core.cmake @@ -26,60 +26,60 @@ # DEALINGS IN THE SOFTWARE. # -OPTION(USE_PRECOMPILED_HEADERS "Use precompiled headers to speed up compilation" OFF) +option(USE_PRECOMPILED_HEADERS "Use precompiled headers to speed up compilation" OFF) -MACRO(CORE_ADD_LIBRARY name) +macro(CORE_ADD_LIBRARY name) - ADD_LIBRARY( ${name} STATIC ${ARGN}) + add_library( ${name} STATIC ${ARGN}) - IF(USE_PRECOMPILED_HEADERS) - IF(${CMAKE_GENERATOR} MATCHES "Xcode") - FILE( MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/Precompiled ) + if(USE_PRECOMPILED_HEADERS) + if(${CMAKE_GENERATOR} MATCHES "Xcode") + file( MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/Precompiled ) - SET_TARGET_PROPERTIES( ${name} PROPERTIES + set_target_properties( ${name} PROPERTIES XCODE_ATTRIBUTE_SHARED_PRECOMPS_DIR ${CMAKE_BINARY_DIR}/Precompiled XCODE_ATTRIBUTE_GCC_PREFIX_HEADER ${CMAKE_SOURCE_DIR}/Configuration/PrefixHeader.h XCODE_ATTRIBUTE_GCC_PRECOMPILE_PREFIX_HEADER YES XCODE_ATTRIBUTE_PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR NO) - ENDIF(${CMAKE_GENERATOR} MATCHES "Xcode") - ENDIF(USE_PRECOMPILED_HEADERS) + endif() + endif() -ENDMACRO(CORE_ADD_LIBRARY) +endmacro() -MACRO (CORE_WRAP_XML outfiles ) +macro (CORE_WRAP_XML outfiles ) -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) -FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) +foreach (it ${ARGN}) + get_filename_component(it ${it} ABSOLUTE) + get_filename_component(outfile ${it} NAME_WE) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfile}.xml.h) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfile}.xml.h) + add_custom_command(OUTPUT ${outfile} COMMAND XmlConverter ARGS ${it} ${outfile} DEPENDS ${it} XmlConverter) - SET(${outfiles} ${${outfiles}} ${outfile}) -ENDFOREACH(it) -ENDMACRO (CORE_WRAP_XML) + set(${outfiles} ${${outfiles}} ${outfile}) +endforeach() +endmacro () # A macro for importing GLSL shaders -MACRO (CORE_IMPORT_SHADER outfiles ) - INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +macro (CORE_IMPORT_SHADER outfiles ) + include_directories(${CMAKE_CURRENT_BINARY_DIR}) - FOREACH (it ${ARGN}) - GET_FILENAME_COMPONENT(it ${it} ABSOLUTE) - GET_FILENAME_COMPONENT(outfile ${it} NAME_WE) - GET_FILENAME_COMPONENT(ext ${it} EXT) + foreach (it ${ARGN}) + get_filename_component(it ${it} ABSOLUTE) + get_filename_component(outfile ${it} NAME_WE) + get_filename_component(ext ${it} EXT) - STRING(LENGTH ${ext} ext_len) - MATH(EXPR ext_len ${ext_len}-1) - STRING(SUBSTRING ${ext} 1 ${ext_len} ext) - SET(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfile}_${ext}) - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} + string(LENGTH ${ext} ext_len) + math(EXPR ext_len ${ext_len}-1) + string(SUBSTRING ${ext} 1 ${ext_len} ext) + set(outfile ${CMAKE_CURRENT_BINARY_DIR}/${outfile}_${ext}) + add_custom_command(OUTPUT ${outfile} COMMAND ShaderImporter ARGS ${it} ${outfile} DEPENDS ${it} ShaderImporter) - SET(${outfiles} ${${outfiles}} ${outfile}) - ENDFOREACH(it) -ENDMACRO (CORE_IMPORT_SHADER) + set(${outfiles} ${${outfiles}} ${outfile}) + endforeach() +endmacro () diff --git a/src/CMake/GenerateActionPythonWrapper.cmake b/src/CMake/GenerateActionPythonWrapper.cmake index 819d913c1..7ad3bd5e2 100644 --- a/src/CMake/GenerateActionPythonWrapper.cmake +++ b/src/CMake/GenerateActionPythonWrapper.cmake @@ -27,59 +27,59 @@ # -SET(ACTION_PYTHON_WRAPPER_REGISTRATION_LIST "" CACHE INTERNAL "list of actions that have python wrappers" FORCE) -SET(ACTION_PYTHON_WRAPPER_TEMPLATE "" CACHE INTERNAL "String template for generating action wrapper functions" FORCE) +set(ACTION_PYTHON_WRAPPER_REGISTRATION_LIST "" CACHE INTERNAL "list of actions that have python wrappers" FORCE) +set(ACTION_PYTHON_WRAPPER_TEMPLATE "" CACHE INTERNAL "String template for generating action wrapper functions" FORCE) -FILE(STRINGS ${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapperFunctionSource.in ACTION_PYTHON_TEMPLATE_STRINGS) -FOREACH(LINE ${ACTION_PYTHON_TEMPLATE_STRINGS}) - SET(ACTION_PYTHON_WRAPPER_TEMPLATE "${ACTION_PYTHON_WRAPPER_TEMPLATE}${LINE}\n") -ENDFOREACH(LINE ${ACTION_PYTHON_TEMPLATE_STRINGS}) +file(STRINGS ${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapperFunctionSource.in ACTION_PYTHON_TEMPLATE_STRINGS) +foreach(LINE ${ACTION_PYTHON_TEMPLATE_STRINGS}) + set(ACTION_PYTHON_WRAPPER_TEMPLATE "${ACTION_PYTHON_WRAPPER_TEMPLATE}${LINE}\n") +endforeach() -MACRO(GENERATE_ACTION_PYTHON_WRAPPER wrapper_file proj) - SET(ACTION_LIST "") - FOREACH(ACTION ${ARGN}) - GET_FILENAME_COMPONENT(ACTIONFILE ${ACTION} NAME_WE) - STRING(LENGTH ${ACTIONFILE} ACTION_NAME_LENGTH) - MATH(EXPR ACTION_NAME_LENGTH "${ACTION_NAME_LENGTH}-6") - STRING(SUBSTRING ${ACTIONFILE} 6 ${ACTION_NAME_LENGTH} ACTION_NAME) - STRING(TOLOWER ${ACTION_NAME} ACTION_NAME) - SET(ACTION_LIST ${ACTION_LIST} ${ACTION_NAME}) - ENDFOREACH(ACTION ${ARGN}) +macro(GENERATE_ACTION_PYTHON_WRAPPER wrapper_file proj) + set(ACTION_LIST "") + foreach(ACTION ${ARGN}) + get_filename_component(ACTIONFILE ${ACTION} NAME_WE) + string(LENGTH ${ACTIONFILE} ACTION_NAME_LENGTH) + math(EXPR ACTION_NAME_LENGTH "${ACTION_NAME_LENGTH}-6") + string(SUBSTRING ${ACTIONFILE} 6 ${ACTION_NAME_LENGTH} ACTION_NAME) + string(TOLOWER ${ACTION_NAME} ACTION_NAME) + set(ACTION_LIST ${ACTION_LIST} ${ACTION_NAME}) + endforeach() - LIST(REMOVE_DUPLICATES ACTION_LIST) - SET(ACTION_PYTHON_WRAPPER_REGISTRATION_LIST ${ACTION_PYTHON_WRAPPER_REGISTRATION_LIST} ${ACTION_LIST} CACHE INTERNAL "") + list(REMOVE_DUPLICATES ACTION_LIST) + set(ACTION_PYTHON_WRAPPER_REGISTRATION_LIST ${ACTION_PYTHON_WRAPPER_REGISTRATION_LIST} ${ACTION_LIST} CACHE INTERNAL "") - SET(WRAPPER_FUNCTIONS "") - SET(WRAPPER_REGISTRATIONS "") + set(WRAPPER_FUNCTIONS "") + set(WRAPPER_REGISTRATIONS "") - FOREACH(ACTION ${ACTION_LIST}) - STRING(CONFIGURE "${ACTION_PYTHON_WRAPPER_TEMPLATE}" WRAPPER_FUNCTION @ONLY) - SET(WRAPPER_FUNCTIONS "${WRAPPER_FUNCTIONS}${WRAPPER_FUNCTION}") + foreach(ACTION ${ACTION_LIST}) + string(CONFIGURE "${ACTION_PYTHON_WRAPPER_TEMPLATE}" WRAPPER_FUNCTION @ONLY) + set(WRAPPER_FUNCTIONS "${WRAPPER_FUNCTIONS}${WRAPPER_FUNCTION}") - STRING(CONFIGURE "void register_action_@ACTION@_python_wrapper()\n{\n\tboost::python::def(\"@ACTION@\", boost::python::raw_function(action_@ACTION@_python_wrapper));\n}\n" + string(CONFIGURE "void register_action_@ACTION@_python_wrapper()\n{\n\tboost::python::def(\"@ACTION@\", boost::python::raw_function(action_@ACTION@_python_wrapper));\n}\n" WRAPPER_REGISTRATION @ONLY) - SET(WRAPPER_REGISTRATIONS "${WRAPPER_REGISTRATIONS}${WRAPPER_REGISTRATION}") - ENDFOREACH(ACTION ${ACTION_LIST}) + set(WRAPPER_REGISTRATIONS "${WRAPPER_REGISTRATIONS}${WRAPPER_REGISTRATION}") + endforeach() - SET(${wrapper_file} ${CMAKE_CURRENT_BINARY_DIR}/${proj}_ActionPythonWrapper.cc) - CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapper.cc.in + set(${wrapper_file} ${CMAKE_CURRENT_BINARY_DIR}/${proj}_ActionPythonWrapper.cc) + configure_file(${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapper.cc.in ${${wrapper_file}} @ONLY) -ENDMACRO(GENERATE_ACTION_PYTHON_WRAPPER) +endmacro() -MACRO(GENERATE_ACTION_PYTHON_WRAPPER_REGISTRATION_FILE) - SET(DECLARATIONS "") - SET(IMPLEMENTATIONS "") +macro(GENERATE_ACTION_PYTHON_WRAPPER_REGISTRATION_FILE) + set(DECLARATIONS "") + set(IMPLEMENTATIONS "") - FOREACH(ACTION ${ACTION_PYTHON_WRAPPER_REGISTRATION_LIST}) - STRING(CONFIGURE "extern void register_action_@ACTION@_python_wrapper();\n" DECLARATION) - SET(DECLARATIONS "${DECLARATIONS}${DECLARATION}") + foreach(ACTION ${ACTION_PYTHON_WRAPPER_REGISTRATION_LIST}) + string(CONFIGURE "extern void register_action_@ACTION@_python_wrapper();\n" DECLARATION) + set(DECLARATIONS "${DECLARATIONS}${DECLARATION}") - STRING(CONFIGURE "\tregister_action_@ACTION@_python_wrapper();\n" IMPLEMENTATION) - SET(IMPLEMENTATIONS "${IMPLEMENTATIONS}${IMPLEMENTATION}") - ENDFOREACH(ACTION ${ACTION_PYTHON_WRAPPER_REGISTRATION_LIST}) + string(CONFIGURE "\tregister_action_@ACTION@_python_wrapper();\n" IMPLEMENTATION) + set(IMPLEMENTATIONS "${IMPLEMENTATIONS}${IMPLEMENTATION}") + endforeach() - CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapperRegistration.h.in + configure_file(${CMAKE_SOURCE_DIR}/Configuration/ActionPythonWrapperRegistration.h.in ${CMAKE_CURRENT_BINARY_DIR}/ActionPythonWrapperRegistration.h @ONLY) -ENDMACRO(GENERATE_ACTION_PYTHON_WRAPPER_REGISTRATION_FILE) +endmacro() diff --git a/src/CMake/RegisterClass.cmake b/src/CMake/RegisterClass.cmake index 198b5b14b..5e88ebe77 100644 --- a/src/CMake/RegisterClass.cmake +++ b/src/CMake/RegisterClass.cmake @@ -26,48 +26,48 @@ # DEALINGS IN THE SOFTWARE. # -SET(CLASS_REGISTRATION_LIBRARY_LIST "" CACHE INTERNAL "list of libraries needed for registration" FORCE) -SET(CLASS_REGISTRATION_LIST "" CACHE INTERNAL "list of classes that need to be registered" FORCE) +set(CLASS_REGISTRATION_LIBRARY_LIST "" CACHE INTERNAL "list of libraries needed for registration" FORCE) +set(CLASS_REGISTRATION_LIST "" CACHE INTERNAL "list of classes that need to be registered" FORCE) -MACRO(REGISTER_LIBRARY_AND_CLASSES library) +macro(REGISTER_LIBRARY_AND_CLASSES library) - SET(CLASS_REGISTRATION_LIBRARY_LIST_TEMP ${CLASS_REGISTRATION_LIBRARY_LIST} ${library}) - SET(CLASS_REGISTRATION_LIBRARY_LIST ${CLASS_REGISTRATION_LIBRARY_LIST_TEMP} CACHE INTERNAL "list of libraries needed for registration") + set(CLASS_REGISTRATION_LIBRARY_LIST_TEMP ${CLASS_REGISTRATION_LIBRARY_LIST} ${library}) + set(CLASS_REGISTRATION_LIBRARY_LIST ${CLASS_REGISTRATION_LIBRARY_LIST_TEMP} CACHE INTERNAL "list of libraries needed for registration") - SET(CLASS_REGISTRATION_LIST_TEMP ${CLASS_REGISTRATION_LIST} ${ARGN}) - SET(CLASS_REGISTRATION_LIST ${CLASS_REGISTRATION_LIST_TEMP} CACHE INTERNAL "list of classes that need to be registered") + set(CLASS_REGISTRATION_LIST_TEMP ${CLASS_REGISTRATION_LIST} ${ARGN}) + set(CLASS_REGISTRATION_LIST ${CLASS_REGISTRATION_LIST_TEMP} CACHE INTERNAL "list of classes that need to be registered") -ENDMACRO(REGISTER_LIBRARY_AND_CLASSES) +endmacro() -MACRO(GENERATE_REGISTRATION_FILES) +macro(GENERATE_REGISTRATION_FILES) - SET(CLASSLIST "") - FOREACH(CLASS ${CLASS_REGISTRATION_LIST}) - GET_FILENAME_COMPONENT(CLASSFILE ${CLASS} NAME_WE) - SET(CLASSLIST ${CLASSLIST} ${CLASSFILE}) - ENDFOREACH(CLASS ${CLASS_REGISTRATION_LIST}) + set(CLASSLIST "") + foreach(CLASS ${CLASS_REGISTRATION_LIST}) + get_filename_component(CLASSFILE ${CLASS} NAME_WE) + set(CLASSLIST ${CLASSLIST} ${CLASSFILE}) + endforeach() - LIST(REMOVE_DUPLICATES CLASSLIST) + list(REMOVE_DUPLICATES CLASSLIST) - SET(DECLARATIONS "") - SET(IMPLEMENTATIONS "") + set(DECLARATIONS "") + set(IMPLEMENTATIONS "") - FOREACH(CLASS ${CLASSLIST}) - STRING(CONFIGURE "extern void register_@CLASS@();\n" DECLARATION) - SET(DECLARATIONS "${DECLARATIONS} ${DECLARATION}") + foreach(CLASS ${CLASSLIST}) + string(CONFIGURE "extern void register_@CLASS@();\n" DECLARATION) + set(DECLARATIONS "${DECLARATIONS} ${DECLARATION}") - STRING(CONFIGURE " register_@CLASS@();\n" IMPLEMENTATION) - SET(IMPLEMENTATIONS "${IMPLEMENTATIONS} ${IMPLEMENTATION}") - ENDFOREACH(CLASS ${CLASSLIST}) + string(CONFIGURE " register_@CLASS@();\n" IMPLEMENTATION) + set(IMPLEMENTATIONS "${IMPLEMENTATIONS} ${IMPLEMENTATION}") + endforeach() - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/Configuration/ClassRegistration.h.in + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/Configuration/ClassRegistration.h.in ${CMAKE_CURRENT_BINARY_DIR}/ClassRegistration.h @ONLY) -ENDMACRO(GENERATE_REGISTRATION_FILES) +endmacro() -MACRO(REGISTERED_TARGET_LINK_LIBRARIES library) -TARGET_LINK_LIBRARIES(${library} ${CLASS_REGISTRATION_LIBRARY_LIST}) +macro(REGISTERED_TARGET_LINK_LIBRARIES library) +target_link_libraries(${library} ${CLASS_REGISTRATION_LIBRARY_LIST}) -ENDMACRO(REGISTERED_TARGET_LINK_LIBRARIES) +endmacro() diff --git a/src/CMake/RegisterUnitTest.cmake b/src/CMake/RegisterUnitTest.cmake index e71ff280e..4cf55cb93 100644 --- a/src/CMake/RegisterUnitTest.cmake +++ b/src/CMake/RegisterUnitTest.cmake @@ -27,14 +27,14 @@ # -MACRO(REGISTER_UNIT_TEST test) - SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) - ADD_EXECUTABLE(${test} ${ARGN}) - ADD_TEST(${test} ${SEG3D_BINARY_DIR}/${test}) -ENDMACRO() +macro(REGISTER_UNIT_TEST test) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) + add_executable(${test} ${ARGN}) + add_test(${test} ${SEG3D_BINARY_DIR}/${test}) +endmacro() -MACRO(ADD_TEST_DIR directory) - IF(BUILD_TESTING) - ADD_SUBDIRECTORY(${directory}) - ENDIF() -ENDMACRO() +macro(ADD_TEST_DIR directory) + if(BUILD_TESTING) + add_subdirectory(${directory}) + endif() +endmacro() diff --git a/src/CMake/RevisionInfo.cmake b/src/CMake/RevisionInfo.cmake index a604884c1..10f6423f9 100644 --- a/src/CMake/RevisionInfo.cmake +++ b/src/CMake/RevisionInfo.cmake @@ -58,7 +58,7 @@ function( GENERATE_REVISION_INFO ) set( INFO_STRING "${INFO_STRING}#define GIT_${PROJECT_UPPERCASE_NAME}_REVISIONINFO \"${PROJECT_NAME} ${GIT_BUILD_INFO}\"\n\n" ) #if( Subversion_FOUND AND EXISTS ${PROJECT_BINARY_DIR}/.svn ) - #else( Subversion_FOUND AND EXISTS ${PROJECT_BINARY_DIR}/.svn ) + #else() # set( INFO_STRING "#define ${PROJECT_UPPERCASE_NAME}_REVISION \"unknown\"\n" ) # set( INFO_STRING "${INFO_STRING}#define ${PROJECT_UPPERCASE_NAME}_DATE \"unknown\"\n" ) # set( INFO_STRING "${INFO_STRING}#define ${PROJECT_UPPERCASE_NAME}_REVISIONINFO \"${PROJECT_NAME} Revision:unknown\"\n\n" ) diff --git a/src/CMake/UseQt4.cmake b/src/CMake/UseQt4.cmake index 938edb69a..9de4ee8ae 100644 --- a/src/CMake/UseQt4.cmake +++ b/src/CMake/UseQt4.cmake @@ -4,88 +4,88 @@ # how to load Qt 4 into your CMake project. -ADD_DEFINITIONS(${QT_DEFINITIONS}) +add_definitions(${QT_DEFINITIONS}) -INCLUDE_DIRECTORIES(${QT_INCLUDE_DIR}) +include_directories(${QT_INCLUDE_DIR}) -SET(QT_LIBRARIES "") +set(QT_LIBRARIES "") -IF (QT_USE_QTMAIN) - IF (WIN32) - SET(QT_LIBRARIES ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY}) - ENDIF (WIN32) -ENDIF (QT_USE_QTMAIN) +if (QT_USE_QTMAIN) + if (WIN32) + set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_QTMAIN_LIBRARY}) + endif () +endif () # Macro for setting up compile flags for Qt modules -MACRO(QT_MODULE_SETUP module) - IF (QT_QT${module}_FOUND) - ADD_DEFINITIONS(-DQT_${module}_LIB) - INCLUDE_DIRECTORIES(${QT_QT${module}_INCLUDE_DIR}) - SET(QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT${module}_LIBRARY}) - SET(QT_LIBRARIES ${QT_LIBRARIES} ${QT_${module}_LIB_DEPENDENCIES}) - ELSE (QT_QT${module}_FOUND) - MESSAGE("Qt ${module} library not found.") - ENDIF (QT_QT${module}_FOUND) -ENDMACRO(QT_MODULE_SETUP) +macro(QT_MODULE_SETUP module) + if (QT_QT${module}_FOUND) + add_definitions(-DQT_${module}_LIB) + include_directories(${QT_QT${module}_INCLUDE_DIR}) + set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_QT${module}_LIBRARY}) + set(QT_LIBRARIES ${QT_LIBRARIES} ${QT_${module}_LIB_DEPENDENCIES}) + else () + message("Qt ${module} library not found.") + endif () +endmacro() # Qt modules (in order of dependence) -IF (QT_USE_QT3SUPPORT) +if (QT_USE_QT3SUPPORT) QT_MODULE_SETUP(3SUPPORT) - ADD_DEFINITIONS(-DQT3_SUPPORT) -ENDIF (QT_USE_QT3SUPPORT) + add_definitions(-DQT3_SUPPORT) +endif () -IF (QT_USE_QTOPENGL) +if (QT_USE_QTOPENGL) QT_MODULE_SETUP(OPENGL) -ENDIF (QT_USE_QTOPENGL) +endif () -IF (QT_USE_QTASSISTANT) +if (QT_USE_QTASSISTANT) QT_MODULE_SETUP(ASSISTANT) -ENDIF (QT_USE_QTASSISTANT) +endif () -IF (QT_USE_QTDESIGNER) +if (QT_USE_QTDESIGNER) QT_MODULE_SETUP(DESIGNER) -ENDIF (QT_USE_QTDESIGNER) +endif () -IF (QT_USE_QTMOTIF) +if (QT_USE_QTMOTIF) QT_MODULE_SETUP(MOTIF) -ENDIF (QT_USE_QTMOTIF) +endif () -IF (QT_USE_QTNSPLUGIN) +if (QT_USE_QTNSPLUGIN) QT_MODULE_SETUP(NSPLUGIN) -ENDIF (QT_USE_QTNSPLUGIN) +endif () -IF (QT_USE_QTSVG) +if (QT_USE_QTSVG) QT_MODULE_SETUP(SVG) -ENDIF (QT_USE_QTSVG) +endif () -IF (QT_USE_QTUITOOLS) +if (QT_USE_QTUITOOLS) QT_MODULE_SETUP(UITOOLS) -ENDIF (QT_USE_QTUITOOLS) +endif () -IF (NOT QT_DONT_USE_QTGUI) +if (NOT QT_DONT_USE_QTGUI) QT_MODULE_SETUP(GUI) -ENDIF (NOT QT_DONT_USE_QTGUI) +endif () -IF (QT_USE_QTTEST) +if (QT_USE_QTTEST) QT_MODULE_SETUP(TEST) -ENDIF (QT_USE_QTTEST) +endif () -IF (QT_USE_QTXML) +if (QT_USE_QTXML) QT_MODULE_SETUP(XML) -ENDIF (QT_USE_QTXML) +endif () -IF (QT_USE_QTSQL) +if (QT_USE_QTSQL) QT_MODULE_SETUP(SQL) -ENDIF (QT_USE_QTSQL) +endif () -IF (QT_USE_QTNETWORK) +if (QT_USE_QTNETWORK) QT_MODULE_SETUP(NETWORK) -ENDIF (QT_USE_QTNETWORK) +endif () -IF (NOT QT_DONT_USE_QTCORE) +if (NOT QT_DONT_USE_QTCORE) QT_MODULE_SETUP(CORE) -ENDIF (NOT QT_DONT_USE_QTCORE) +endif () diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 090c395f7..eb94bc43a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -26,109 +26,109 @@ # DEALINGS IN THE SOFTWARE. # -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.9 FATAL_ERROR) -#CMAKE_MINIMUM_REQUIRED(VERSION 2.8.12 FATAL_ERROR) -#CMAKE_MINIMUM_REQUIRED(VERSION 3.0 FATAL_ERROR) -IF(POLICY CMP0020) - CMAKE_POLICY(SET CMP0020 NEW) -ENDIF() -IF(POLICY CMP0049) - CMAKE_POLICY(SET CMP0049 NEW) -ENDIF() -IF(POLICY CMP0043) - CMAKE_POLICY(SET CMP0043 OLD) -ENDIF() -IF(POLICY CMP0053) - CMAKE_POLICY(SET CMP0053 OLD) -ENDIF() -IF(POLICY CMP0054) - CMAKE_POLICY(SET CMP0054 NEW) -ENDIF() +cmake_minimum_required(VERSION 2.8.9 FATAL_ERROR) +#cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) +#cmake_minimum_required(VERSION 3.0 FATAL_ERROR) +if(POLICY CMP0020) + cmake_policy(SET CMP0020 NEW) +endif() +if(POLICY CMP0049) + cmake_policy(SET CMP0049 NEW) +endif() +if(POLICY CMP0043) + cmake_policy(SET CMP0043 OLD) +endif() +if(POLICY CMP0053) + cmake_policy(SET CMP0053 OLD) +endif() +if(POLICY CMP0054) + cmake_policy(SET CMP0054 NEW) +endif() ########################################### # Verify build directory ########################################### -IF( ${CMAKE_BINARY_DIR} MATCHES ${CMAKE_SOURCE_DIR} ) - MESSAGE( FATAL_ERROR "Please delete the CMakeCache.txt from the src directory and build Seg3D in the bin directory. Run 'rm CMakeCache.txt; cd ../bin; cmake ../src' from the binary directory." ) -ENDIF() +if( ${CMAKE_BINARY_DIR} MATCHES ${CMAKE_SOURCE_DIR} ) + message( FATAL_ERROR "Please delete the CMakeCache.txt from the src directory and build Seg3D in the bin directory. Run 'rm CMakeCache.txt; cd ../bin; cmake ../src' from the binary directory." ) +endif() ########################################### # PROJECT: Seg3D ########################################### -PROJECT(Seg3D) +project(Seg3D) ########################################### # Where to compile executables ########################################### -IF(NOT SEG3D_BINARY_DIR) - SET(SEG3D_BINARY_DIR ${CMAKE_BINARY_DIR}) -ENDIF() +if(NOT SEG3D_BINARY_DIR) + set(SEG3D_BINARY_DIR ${CMAKE_BINARY_DIR}) +endif() ########################################### # DO STANDARD TESTS ########################################### -INCLUDE(CMakeBackwardCompatibilityC) -INCLUDE(CMakeBackwardCompatibilityCXX) -INCLUDE(CheckCSourceCompiles) +include(CMakeBackwardCompatibilityC) +include(CMakeBackwardCompatibilityCXX) +include(CheckCSourceCompiles) ########################################### # Configure testing support. # This should be done before any -# MESSAGE(FATAL_ERROR ...) commands are +# message(FATAL_ERROR ...) commands are # invoked. ########################################### -INCLUDE( CTest ) -IF(BUILD_TESTING) - ENABLE_TESTING() - IF(WIN32) - ADD_DEFINITIONS(-DGTEST_USE_OWN_TR1_TUPLE=0 -D_VARIADIC_MAX=10) - ENDIF() -ENDIF() +include( CTest ) +if(BUILD_TESTING) + enable_testing() + if(WIN32) + add_definitions(-DGTEST_USE_OWN_TR1_TUPLE=0 -D_VARIADIC_MAX=10) + endif() +endif() -INCLUDE(CMake/RegisterUnitTest.cmake) +include(CMake/RegisterUnitTest.cmake) ########################################### # SEG3D VERSION NUMBERS ########################################### -SET(SEG3D_MAJOR_VERSION 2 CACHE INTERNAL "Major version number" FORCE) -SET(SEG3D_MINOR_VERSION 5 CACHE INTERNAL "Minor version number" FORCE) -SET(SEG3D_PATCH_VERSION 0 CACHE INTERNAL "Patch version number" FORCE) +set(SEG3D_MAJOR_VERSION 2 CACHE INTERNAL "Major version number" FORCE) +set(SEG3D_MINOR_VERSION 5 CACHE INTERNAL "Minor version number" FORCE) +set(SEG3D_PATCH_VERSION 0 CACHE INTERNAL "Patch version number" FORCE) ########################################### # APPLICATION Information ########################################### -SET(APPLICATION_NAME "Seg3D2" CACHE INTERNAL "Name of the application" FORCE) -SET(APPLICATION_EXTENSION ".s3d" CACHE INTERNAL "Name of the extension" FORCE) -SET(APPLICATION_URL "www.seg3d.org" CACHE INTERNAL "URL where more information can be found" FORCE) -SET(APPLICATION_VENDOR "SCI" CACHE INTERNAL "Who generated the applicatio" FORCE) -SET(APPLICATION_CONTACT "seg3d-users@sci.utah.edu" CACHE INTERNAL "Contact information" FORCE) -SET(APPLICATION_WINDOWS_ICON "${CMAKE_SOURCE_DIR}/Resources/Icons/seg3d2_32.ico" CACHE INTERNAL "Windows icon" FORCE) -SET(APPLICATION_WINDOWS_RC "${CMAKE_SOURCE_DIR}/Resources/Icons/Seg3D.rc" CACHE INTERNAL "Windows icon" FORCE) -SET(APPLICATION_OSX_ICON_FULL_PATH "${CMAKE_SOURCE_DIR}/Resources/Icons/Seg3D.icns" CACHE INTERNAL "OSX icon" FORCE) -SET(APPLICATION_OSX_ICON "Seg3D.icns" CACHE INTERNAL "OSX icon" FORCE) +set(APPLICATION_NAME "Seg3D2" CACHE INTERNAL "Name of the application" FORCE) +set(APPLICATION_EXTENSION ".s3d" CACHE INTERNAL "Name of the extension" FORCE) +set(APPLICATION_URL "www.seg3d.org" CACHE INTERNAL "URL where more information can be found" FORCE) +set(APPLICATION_VENDOR "SCI" CACHE INTERNAL "Who generated the applicatio" FORCE) +set(APPLICATION_CONTACT "seg3d-users@sci.utah.edu" CACHE INTERNAL "Contact information" FORCE) +set(APPLICATION_WINDOWS_ICON "${CMAKE_SOURCE_DIR}/Resources/Icons/seg3d2_32.ico" CACHE INTERNAL "Windows icon" FORCE) +set(APPLICATION_WINDOWS_RC "${CMAKE_SOURCE_DIR}/Resources/Icons/Seg3D.rc" CACHE INTERNAL "Windows icon" FORCE) +set(APPLICATION_OSX_ICON_FULL_PATH "${CMAKE_SOURCE_DIR}/Resources/Icons/Seg3D.icns" CACHE INTERNAL "OSX icon" FORCE) +set(APPLICATION_OSX_ICON "Seg3D.icns" CACHE INTERNAL "OSX icon" FORCE) ########################################### # PACKAGING Information ########################################### -SET(PACKAGING_README "${CMAKE_CURRENT_SOURCE_DIR}/CMake/ReadMe.txt" CACHE INTERNAL "Where to find the readme file." FORCE ) -SET(PACKAGING_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/CMake/License.txt" CACHE INTERNAL "Where to find the license file." FORCE ) -SET(PACKAGING_RELEASENOTES "${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.txt" CACHE INTERNAL "Where to find the releasenotes file." FORCE ) -SET(PACKAGING_WELCOME "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Welcome.txt" CACHE INTERNAL "Where to find the welcome file." FORCE ) -SET(PACKAGING_ICON "${CMAKE_SOURCE_DIR}/Resources/Icons\\\\seg3d2_256.png" CACHE INTERNAL "Packing icon." FORCE ) +set(PACKAGING_README "${CMAKE_CURRENT_SOURCE_DIR}/CMake/ReadMe.txt" CACHE INTERNAL "Where to find the readme file." FORCE ) +set(PACKAGING_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/CMake/License.txt" CACHE INTERNAL "Where to find the license file." FORCE ) +set(PACKAGING_RELEASENOTES "${CMAKE_CURRENT_SOURCE_DIR}/ReleaseNotes.txt" CACHE INTERNAL "Where to find the releasenotes file." FORCE ) +set(PACKAGING_WELCOME "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Welcome.txt" CACHE INTERNAL "Where to find the welcome file." FORCE ) +set(PACKAGING_ICON "${CMAKE_SOURCE_DIR}/Resources/Icons\\\\seg3d2_256.png" CACHE INTERNAL "Packing icon." FORCE ) ########################################### # DETERMINE ARCHITECTURE @@ -136,37 +136,37 @@ SET(PACKAGING_ICON "${CMAKE_SOURCE_DIR}/Resources/Icons\\\\seg3d2_256.png" CACHE # architecture settings ########################################### -IF(SEG3D_BITS MATCHES 64) - SET(MSVC90_BUILD "amd64") - ADD_DEFINITIONS(-DSCI_64BITS) -ELSE() - SET(MSVC90_BUILD "x86") - ADD_DEFINITIONS(-DSCI_32BITS) -ENDIF() +if(SEG3D_BITS MATCHES 64) + set(MSVC90_BUILD "amd64") + add_definitions(-DSCI_64BITS) +else() + set(MSVC90_BUILD "x86") + add_definitions(-DSCI_32BITS) +endif() -IF(BUILD_STANDALONE_LIBRARY) - MESSAGE("Library build successful") - ADD_DEFINITIONS(-DBUILD_STANDALONE_LIBRARY) -ENDIF() +if(BUILD_STANDALONE_LIBRARY) + message("Library build successful") + add_definitions(-DBUILD_STANDALONE_LIBRARY) +endif() -IF(BUILD_MANUAL_TOOLS_ONLY) - ADD_DEFINITIONS(-DBUILD_MANUAL_TOOLS_ONLY) -ENDIF() +if(BUILD_MANUAL_TOOLS_ONLY) + add_definitions(-DBUILD_MANUAL_TOOLS_ONLY) +endif() ########################################### # Microsoft VC compiler flags ########################################### -IF(WIN32 AND MSVC) - ADD_DEFINITIONS(-D_ALLOW_KEYWORD_MACROS) - ADD_DEFINITIONS(-D_WIN32_WINNT=_WIN32_WINNT_WS03 -DNTDDI_VERSION=NTDDI_WS03SP2) - ADD_DEFINITIONS(-DPSAPI_VERSION=1) +if(WIN32 AND MSVC) + add_definitions(-D_ALLOW_KEYWORD_MACROS) + add_definitions(-D_WIN32_WINNT=_WIN32_WINNT_WS03 -DNTDDI_VERSION=NTDDI_WS03SP2) + add_definitions(-DPSAPI_VERSION=1) # Disable Visual C++ Secure Warnings - ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS) - ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS) - ADD_DEFINITIONS(-D_BIND_TO_CURRENT_VCLIBS_VERSION=1) - ADD_DEFINITIONS(-D_BIND_TO_CURRENT_CRT_VERSION=1) -ENDIF() + add_definitions(-D_SCL_SECURE_NO_WARNINGS) + add_definitions(-D_CRT_SECURE_NO_WARNINGS) + add_definitions(-D_BIND_TO_CURRENT_VCLIBS_VERSION=1) + add_definitions(-D_BIND_TO_CURRENT_CRT_VERSION=1) +endif() ########################################### @@ -174,54 +174,54 @@ ENDIF() # and other extras on OS X ########################################### -SET(OSX_UTILS_DIR "Seg3DUtils") +set(OSX_UTILS_DIR "Seg3DUtils") ############################################ # Set Up External Projects ############################################ -MACRO(CONFIG_STANDARD_EXTERNAL name config_file directory) - FIND_PACKAGE(${name} CONFIGS ${config_file} HINTS ${directory} NO_SYSTEM_ENVIRONMENT_PATH) - IF(NOT ${name}_FOUND) - MESSAGE(FATAL_ERROR "${name} library not found in ${directory}") - ENDIF() -ENDMACRO() +macro(CONFIG_STANDARD_EXTERNAL name config_file directory) + find_package(${name} CONFIGS ${config_file} HINTS ${directory} NO_SYSTEM_ENVIRONMENT_PATH) + if(NOT ${name}_FOUND) + message(FATAL_ERROR "${name} library not found in ${directory}") + endif() +endmacro() CONFIG_STANDARD_EXTERNAL( Zlib ZlibConfig.cmake ${Zlib_DIR} ) -INCLUDE(${ZLIB_USE_FILE}) +include(${ZLIB_USE_FILE}) CONFIG_STANDARD_EXTERNAL( LibPNG LibPNGConfig.cmake ${LibPNG_DIR} ) -INCLUDE(${PNG_USE_FILE}) +include(${PNG_USE_FILE}) CONFIG_STANDARD_EXTERNAL( SQLite SQLiteConfig.cmake ${SQLite_DIR} ) -INCLUDE(${SQLITE_USE_FILE}) +include(${SQLITE_USE_FILE}) CONFIG_STANDARD_EXTERNAL( Teem TeemConfig.cmake ${Teem_DIR} ) -INCLUDE(${Teem_USE_FILE}) +include(${Teem_USE_FILE}) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) CONFIG_STANDARD_EXTERNAL( Python PythonConfig.cmake ${Python_DIR} ) - INCLUDE(${SCI_PYTHON_USE_FILE}) -ENDIF() + include(${SCI_PYTHON_USE_FILE}) +endif() CONFIG_STANDARD_EXTERNAL( Boost BoostConfig.cmake ${Boost_DIR} ) -INCLUDE(${SCI_BOOST_USE_FILE}) +include(${SCI_BOOST_USE_FILE}) CONFIG_STANDARD_EXTERNAL( ITK ITKConfig.cmake ${ITK_DIR} ) -INCLUDE(${ITK_USE_FILE}) +include(${ITK_USE_FILE}) CONFIG_STANDARD_EXTERNAL( Glew GlewConfig.cmake ${Glew_DIR} ) -INCLUDE(${GLEW_USE_FILE}) +include(${GLEW_USE_FILE}) CONFIG_STANDARD_EXTERNAL( Freetype FreetypeConfig.cmake ${Freetype_DIR} ) -INCLUDE(${FREETYPE_USE_FILE}) +include(${FREETYPE_USE_FILE}) CONFIG_STANDARD_EXTERNAL( ImplicitFunction ImplicitFunctionConfig.cmake ${ImplicitFunction_DIR} ) -INCLUDE(${ImplicitFunction_USE_FILE}) +include(${ImplicitFunction_USE_FILE}) CONFIG_STANDARD_EXTERNAL( Tetgen TetgenConfig.cmake ${Tetgen_DIR} ) -INCLUDE(${TETGEN_USE_FILE}) +include(${TETGEN_USE_FILE}) ########################################### @@ -229,26 +229,26 @@ INCLUDE(${TETGEN_USE_FILE}) ########################################### # To force a static build these flags need to be set project wide. -ADD_DEFINITIONS(-DTINYXML_STATIC) -ADD_DEFINITIONS(-DTIXML_USE_STL) +add_definitions(-DTINYXML_STATIC) +add_definitions(-DTIXML_USE_STL) # define z_prefix project wide if zlib was mangled -IF (DO_ZLIB_MANGLE) - ADD_DEFINITIONS(-DZ_PREFIX) -ENDIF() +if (DO_ZLIB_MANGLE) + add_definitions(-DZ_PREFIX) +endif() ########################################### # RPATH settings for Linux ########################################### -IF(UNIX) - MESSAGE(STATUS "Configuring RPATH settings") - SET(CMAKE_SKIP_BUILD_RPATH FALSE) - SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) - SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") - SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) -ENDIF() +if(UNIX) + message(STATUS "Configuring RPATH settings") + set(CMAKE_SKIP_BUILD_RPATH FALSE) + set(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE) + set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib") + set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) +endif() # ########################################### # # Find QT @@ -260,50 +260,50 @@ ENDIF() # # QT distribution. # ########################################### # -IF(SEG3D_BUILD_INTERFACE) +if(SEG3D_BUILD_INTERFACE) # see http://doc.qt.io/qt-5/cmake-manual.html - FIND_PACKAGE(Qt5 COMPONENTS Core Gui OpenGL Widgets Svg REQUIRED HINTS ${Qt5_PATH}) + find_package(Qt5 COMPONENTS Core Gui OpenGL Widgets Svg REQUIRED HINTS ${Qt5_PATH}) - GET_TARGET_PROPERTY(QtCore_location_Release Qt5::Core LOCATION_Release) - #GET_TARGET_PROPERTY(QtCore_location_Debug Qt5::Core LOCATION_Debug) - GET_TARGET_PROPERTY(QtGui_location_Release Qt5::Gui LOCATION_Release) - GET_TARGET_PROPERTY(QtOpenGL_location_Release Qt5::OpenGL LOCATION_Release) - GET_TARGET_PROPERTY(QtWidgets_location_Release Qt5::Widgets LOCATION_Release) - GET_TARGET_PROPERTY(QtSvg_location_Release Qt5::Svg LOCATION_Release) + get_target_property(QtCore_location_Release Qt5::Core LOCATION_Release) + #get_target_property(QtCore_location_Debug Qt5::Core LOCATION_Debug) + get_target_property(QtGui_location_Release Qt5::Gui LOCATION_Release) + get_target_property(QtOpenGL_location_Release Qt5::OpenGL LOCATION_Release) + get_target_property(QtWidgets_location_Release Qt5::Widgets LOCATION_Release) + get_target_property(QtSvg_location_Release Qt5::Svg LOCATION_Release) - IF(NOT Qt5_FOUND) - MESSAGE(FATAL_ERROR "Qt5 is required for building the Seg3D GUI") - ENDIF() + if(NOT Qt5_FOUND) + message(FATAL_ERROR "Qt5 is required for building the Seg3D GUI") + endif() - ADD_DEFINITIONS(-DQT_NO_KEYWORDS) + add_definitions(-DQT_NO_KEYWORDS) # should be in ${Qt5_PATH}/bin - IF(APPLE) - FIND_PROGRAM(MACDEPLOYQT_EXE + if(APPLE) + find_program(MACDEPLOYQT_EXE HINTS ${Qt5_PATH} ${Qt5_PATH}/bin NAMES macdeployqt NO_DEFAULT_PATH ) - IF(MACDEPLOYQT_EXE MATCHES "NOTFOUND") - MESSAGE(FATAL_ERROR "macdeployqt is required to build the Seg3D app bundle. Please ensure it is installed and in your path.") - ENDIF() - SET(MACDEPLOYQT ${MACDEPLOYQT_EXE} CACHE INTERNAL "macdeployqt executable") - MARK_AS_ADVANCED(MACDEPLOYQT) - ELSE() - IF(WIN32) - FIND_PROGRAM(WINDEPLOYQT_EXE + if(MACDEPLOYQT_EXE MATCHES "NOTFOUND") + message(FATAL_ERROR "macdeployqt is required to build the Seg3D app bundle. Please ensure it is installed and in your path.") + endif() + set(MACDEPLOYQT ${MACDEPLOYQT_EXE} CACHE INTERNAL "macdeployqt executable") + mark_as_advanced(MACDEPLOYQT) + else() + if(WIN32) + find_program(WINDEPLOYQT_EXE HINTS ${Qt5_PATH} ${Qt5_PATH}/bin NAMES windeployqt.exe ) - IF (WINDEPLOYQT_EXE MATCHES "NOTFOUND") - MESSAGE(FATAL_ERROR "windeployqt.exe is required to build the Seg3D installer. Please ensure that it is installed and in your path. It should be found within the Qt5 install path.") - ENDIF() - SET(WINDEPLOYQT ${WINDEPLOYQT_EXE} CACHE INTERNAL "windeployqt executable") - MARK_AS_ADVANCED(WINDEPLOYQT) - ENDIF() - ENDIF() + if (WINDEPLOYQT_EXE MATCHES "NOTFOUND") + message(FATAL_ERROR "windeployqt.exe is required to build the Seg3D installer. Please ensure that it is installed and in your path. It should be found within the Qt5 install path.") + endif() + set(WINDEPLOYQT ${WINDEPLOYQT_EXE} CACHE INTERNAL "windeployqt executable") + mark_as_advanced(WINDEPLOYQT) + endif() + endif() -ENDIF() +endif() ########################################### # External packages other than Qt @@ -316,15 +316,15 @@ ENDIF() # versions of Qt. ########################################### -ADD_SUBDIRECTORY(ThirdParty) +add_subdirectory(ThirdParty) ########################################### # Check for "XInitThreads" on X-window # systems. ########################################### -IF(NOT WIN32 AND NOT APPLE) - SET(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} X11) +if(NOT WIN32 AND NOT APPLE) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} X11) CHECK_C_SOURCE_COMPILES( " @@ -338,20 +338,20 @@ IF(NOT WIN32 AND NOT APPLE) " X11_THREADSAFE ) - IF(${X11_THREADSAFE}) - MESSAGE(STATUS "XInitThreads found") - OPTION(MULTITHREADED_RENDERING "Enable multi-threaded rendering." OFF) - IF(MULTITHREADED_RENDERING) - ADD_DEFINITIONS(-DX11_THREADSAFE) - ENDIF() - ENDIF() -ENDIF() + if(${X11_THREADSAFE}) + message(STATUS "XInitThreads found") + option(MULTITHREADED_RENDERING "Enable multi-threaded rendering." OFF) + if(MULTITHREADED_RENDERING) + add_definitions(-DX11_THREADSAFE) + endif() + endif() +endif() ########################################### # Set Revision information for GLP ########################################### -INCLUDE(${CMAKE_SOURCE_DIR}/CMake/RevisionInfo.cmake) +include(${CMAKE_SOURCE_DIR}/CMake/RevisionInfo.cmake) GENERATE_REVISION_INFO() ########################################### @@ -361,21 +361,21 @@ GENERATE_REVISION_INFO() # on which code can depend. ########################################### -CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/Configuration/ApplicationConfiguration.h.in +configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Configuration/ApplicationConfiguration.h.in ${CMAKE_CURRENT_BINARY_DIR}/ApplicationConfiguration.h @ONLY ) -CONFIGURE_FILE (${CMAKE_CURRENT_SOURCE_DIR}/Configuration/InterfaceConfiguration.h.in +configure_file (${CMAKE_CURRENT_SOURCE_DIR}/Configuration/InterfaceConfiguration.h.in ${CMAKE_CURRENT_BINARY_DIR}/InterfaceConfiguration.h @ONLY ) -INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) +include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR}) ########################################### # Set the include paths ########################################### -INCLUDE_DIRECTORIES( +include_directories( ${Qt5Core_INCLUDE_DIRS} ${Qt5Gui_INCLUDE_DIRS} ${Qt5OpenGL_INCLUDE_DIRS} @@ -383,32 +383,32 @@ INCLUDE_DIRECTORIES( ) # TODO: make use files for thirdparty projects -INCLUDE_DIRECTORIES(${SCI_MATLABIO_INCLUDE}) -INCLUDE_DIRECTORIES(${SCI_MRC2000IO_INCLUDE}) -INCLUDE_DIRECTORIES(${SCI_TINYXML_INCLUDE}) +include_directories(${SCI_MATLABIO_INCLUDE}) +include_directories(${SCI_MRC2000IO_INCLUDE}) +include_directories(${SCI_TINYXML_INCLUDE}) -IF(BUILD_WITH_PYTHON) - INCLUDE(CMake/GenerateActionPythonWrapper.cmake) -ENDIF() +if(BUILD_WITH_PYTHON) + include(CMake/GenerateActionPythonWrapper.cmake) +endif() -IF(BUILD_TESTING) - INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/submodules/googletest/googletest/include) - INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/submodules/googletest/googlemock/include) -ENDIF() +if(BUILD_TESTING) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/submodules/googletest/googletest/include) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/submodules/googletest/googlemock/include) +endif() -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}) ########################################### # Generate a variable for registering all # the plugins ########################################### -INCLUDE(CMake/Core.cmake) -INCLUDE(CMake/RegisterClass.cmake) +include(CMake/Core.cmake) +include(CMake/RegisterClass.cmake) ########################################### -SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules") +set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules") ########################################### # Application layers: @@ -424,22 +424,22 @@ SET(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMake/Modules") # Resources - Icons, images, etc. ########################################### -MESSAGE(STATUS "Configuring Seg3D Core") -ADD_SUBDIRECTORY(Core) +message(STATUS "Configuring Seg3D Core") +add_subdirectory(Core) -MESSAGE(STATUS "Configuring Seg3D Application") -ADD_SUBDIRECTORY(Application) +message(STATUS "Configuring Seg3D Application") +add_subdirectory(Application) -IF(BUILD_LARGE_VOLUME_TOOLS) - MESSAGE(STATUS "Configuring Large Volume tools") - ADD_SUBDIRECTORY(LargeVolumeUtils) -ENDIF() +if(BUILD_LARGE_VOLUME_TOOLS) + message(STATUS "Configuring Large Volume tools") + add_subdirectory(LargeVolumeUtils) +endif() -MESSAGE(STATUS "Configuring Seg3D Interface") -IF(SEG3D_BUILD_INTERFACE) - ADD_SUBDIRECTORY(QtUtils) - ADD_SUBDIRECTORY(Interface) -ENDIF() +message(STATUS "Configuring Seg3D Interface") +if(SEG3D_BUILD_INTERFACE) + add_subdirectory(QtUtils) + add_subdirectory(Interface) +endif() ########################################### # Plugins: @@ -450,33 +450,33 @@ ENDIF() # factories. ########################################### -SET(IGNORE_RESOURCES OFF CACHE INTERNAL "Ignore default resources library.") -IF(NOT SEG3D_BUILD_INTERFACE) - SET(IGNORE_RESOURCES ON CACHE INTERNAL "Ignore default resources library.") -ENDIF() +set(IGNORE_RESOURCES OFF CACHE INTERNAL "Ignore default resources library.") +if(NOT SEG3D_BUILD_INTERFACE) + set(IGNORE_RESOURCES ON CACHE INTERNAL "Ignore default resources library.") +endif() -MESSAGE(STATUS "Configuring Seg3D Plugins") -FILE(GLOB PLUGIN_DIRS "Plugins/*" ) +message(STATUS "Configuring Seg3D Plugins") +file(GLOB PLUGIN_DIRS "Plugins/*" ) -INCLUDE_DIRECTORIES("${CMAKE_CURRENT_SOURCE_DIR}/Plugins") +include_directories("${CMAKE_CURRENT_SOURCE_DIR}/Plugins") -FOREACH(DIR ${PLUGIN_DIRS}) - IF(IS_DIRECTORY ${DIR}) - ADD_SUBDIRECTORY(${DIR}) - ENDIF() -ENDFOREACH() +foreach(DIR ${PLUGIN_DIRS}) + if(IS_DIRECTORY ${DIR}) + add_subdirectory(${DIR}) + endif() +endforeach() ########################################### # Resources: # images + icons ########################################### -IF(NOT IGNORE_RESOURCES) - MESSAGE(STATUS "Configuring Seg3D Resources") - IF(SEG3D_BUILD_INTERFACE) - ADD_SUBDIRECTORY(Resources) - ENDIF() -ENDIF() +if(NOT IGNORE_RESOURCES) + message(STATUS "Configuring Seg3D Resources") + if(SEG3D_BUILD_INTERFACE) + add_subdirectory(Resources) + endif() +endif() ########################################### @@ -485,13 +485,13 @@ ENDIF() # plugins ########################################### -IF(SEG3D_BUILD_INTERFACE) - MESSAGE(STATUS "Configuring Seg3D main") - ADD_SUBDIRECTORY(Main) -ELSE() - MESSAGE(STATUS "Configuring Seg3D headless main") - ADD_SUBDIRECTORY(HeadlessMain) -ENDIF() +if(SEG3D_BUILD_INTERFACE) + message(STATUS "Configuring Seg3D main") + add_subdirectory(Main) +else() + message(STATUS "Configuring Seg3D headless main") + add_subdirectory(HeadlessMain) +endif() ########################################### @@ -501,7 +501,7 @@ ENDIF() # factories ########################################### -MESSAGE(STATUS "Configuring Seg3D registered functions") +message(STATUS "Configuring Seg3D registered functions") GENERATE_REGISTRATION_FILES() @@ -509,23 +509,23 @@ GENERATE_REGISTRATION_FILES() # Generate the python functions registration file ########################################### -IF(BUILD_WITH_PYTHON) - MESSAGE(STATUS "Configuring action python wrapper functions") +if(BUILD_WITH_PYTHON) + message(STATUS "Configuring action python wrapper functions") GENERATE_ACTION_PYTHON_WRAPPER_REGISTRATION_FILE() -ENDIF() +endif() ########################################### # Configure LaTeX and Doxygen documentation ########################################### -IF(BUILD_DOCUMENTATION) - ADD_SUBDIRECTORY(Documentation) -ENDIF() +if(BUILD_DOCUMENTATION) + add_subdirectory(Documentation) +endif() -IF(BUILD_DOXYGEN_DOCUMENTATION) - ADD_SUBDIRECTORY(Documentation/Doxygen) -ENDIF() +if(BUILD_DOXYGEN_DOCUMENTATION) + add_subdirectory(Documentation/Doxygen) +endif() ########################################### @@ -534,16 +534,16 @@ ENDIF() # objects into the executable ########################################### -ADD_SUBDIRECTORY(Bootstrap) +add_subdirectory(Bootstrap) ########################################### # Configure testing code ########################################### -IF(BUILD_TESTING) - ADD_SUBDIRECTORY(Testing) -ENDIF() +if(BUILD_TESTING) + add_subdirectory(Testing) +endif() ########################################### @@ -552,54 +552,54 @@ ENDIF() # CPack. ########################################### -MESSAGE(STATUS "Configuring Seg3D packaging") +message(STATUS "Configuring Seg3D packaging") -INCLUDE(InstallRequiredSystemLibraries) +include(InstallRequiredSystemLibraries) -SET(CPACK_PACKAGE_NAME "${APPLICATION_NAME}") +set(CPACK_PACKAGE_NAME "${APPLICATION_NAME}") -SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME}") -SET(CPACK_PACKAGE_VENDOR "${APPLICATION_VENDOR}") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME}") +set(CPACK_PACKAGE_VENDOR "${APPLICATION_VENDOR}") -SET(CPACK_PACKAGE_DESCRIPTION_FILE ${PACKAGING_README} ) -SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME} ${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}.${SEG3D_PATCH_VERSION} is a segmentation program") +set(CPACK_PACKAGE_DESCRIPTION_FILE ${PACKAGING_README} ) +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME} ${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}.${SEG3D_PATCH_VERSION} is a segmentation program") -SET(CPACK_RESOURCE_FILE_LICENSE ${PACKAGING_LICENSE}) -SET(CPACK_RESOURCE_FILE_README ${PACKAGING_RELEASENOTES}) -SET(CPACK_RESOURCE_FILE_WELCOME ${PACKAGING_WELCOME}) +set(CPACK_RESOURCE_FILE_LICENSE ${PACKAGING_LICENSE}) +set(CPACK_RESOURCE_FILE_README ${PACKAGING_RELEASENOTES}) +set(CPACK_RESOURCE_FILE_WELCOME ${PACKAGING_WELCOME}) -SET(CPACK_PACKAGE_VERSION_MAJOR "${SEG3D_MAJOR_VERSION}") -SET(CPACK_PACKAGE_VERSION_MINOR "${SEG3D_MINOR_VERSION}") -SET(CPACK_PACKAGE_VERSION_PATCH "${SEG3D_PATCH_VERSION}") -SET(CPACK_PACKAGE_VERSION "${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}.${SEG3D_PATCH_VERSION}") +set(CPACK_PACKAGE_VERSION_MAJOR "${SEG3D_MAJOR_VERSION}") +set(CPACK_PACKAGE_VERSION_MINOR "${SEG3D_MINOR_VERSION}") +set(CPACK_PACKAGE_VERSION_PATCH "${SEG3D_PATCH_VERSION}") +set(CPACK_PACKAGE_VERSION "${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}.${SEG3D_PATCH_VERSION}") -SET(CPACK_PACKAGE_INSTALL_DIRECTORY "${APPLICATION_NAME}_${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}") +set(CPACK_PACKAGE_INSTALL_DIRECTORY "${APPLICATION_NAME}_${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}") -IF(WIN32 AND NOT UNIX) +if(WIN32 AND NOT UNIX) # There is a bug in NSIS that does not handle full unix paths properly. Make # sure there is at least one set of four (4) backslashes. - SET(CPACK_PACKAGE_ICON "${PACKAGING_ICON}") - - IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - SET(CPACK_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) - SET(CMAKE_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) - ENDIF() - - IF(SEG3D_BITS MATCHES 64) - SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") - ELSE() - SET(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") - ENDIF() - - SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\${APPLICATION_NAME}") - SET(CPACK_NSIS_MUI_ICON "${APPLICATION_WINDOWS_ICON}") - SET(CPACK_NSIS_DISPLAY_NAME "${APPLICATION_NAME} ${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}") - SET(CPACK_NSIS_HELP_LINK "http:\\\\\\\\${APPLICATION_URL}") - SET(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\${APPLICATION_URL}") - SET(CPACK_NSIS_CONTACT ${APPLICATION_CONTACT} ) - SET(CPACK_NSIS_MODIFY_PATH ON) - SET(CPACK_PACKAGE_EXECUTABLES "${APPLICATION_NAME}" "${APPLICATION_NAME}") - SET(CPACK_NSIS_EXTRA_INSTALL_COMMANDS " + set(CPACK_PACKAGE_ICON "${PACKAGING_ICON}") + + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CPACK_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) + set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) + endif() + + if(SEG3D_BITS MATCHES 64) + set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64") + else() + set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES") + endif() + + set(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\${APPLICATION_NAME}") + set(CPACK_NSIS_MUI_ICON "${APPLICATION_WINDOWS_ICON}") + set(CPACK_NSIS_DISPLAY_NAME "${APPLICATION_NAME} ${SEG3D_MAJOR_VERSION}.${SEG3D_MINOR_VERSION}") + set(CPACK_NSIS_HELP_LINK "http:\\\\\\\\${APPLICATION_URL}") + set(CPACK_NSIS_URL_INFO_ABOUT "http:\\\\\\\\${APPLICATION_URL}") + set(CPACK_NSIS_CONTACT ${APPLICATION_CONTACT} ) + set(CPACK_NSIS_MODIFY_PATH ON) + set(CPACK_PACKAGE_EXECUTABLES "${APPLICATION_NAME}" "${APPLICATION_NAME}") + set(CPACK_NSIS_EXTRA_INSTALL_COMMANDS " WriteRegStr HKCR '.nrrd' '' '${APPLICATION_NAME}-nrrd' WriteRegStr HKCR '${APPLICATION_NAME}-nrrd' '' '${APPLICATION_NAME} NRRD File' WriteRegStr HKCR '${APPLICATION_NAME}-nrrd\\\\shell' '' 'open' @@ -625,42 +625,42 @@ IF(WIN32 AND NOT UNIX) WriteRegStr HKCR '${APPLICATION_NAME}\\\\shell\\\\edit\\\\command' '' '$INSTDIR\\\\bin\\\\${APPLICATION_NAME}.exe \\\"%1\\\"' System::Call 'Shell32::SHChangeNotify( i 0x800000, i 0, i 0, i 0)' ") - SET(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS " + set(CPACK_NSIS_EXTRA_UNINSTALL_COMMANDS " DeleteRegKey HKCR '.nrrd' DeleteRegKey HKCR '.nhdr' DeleteRegKey HKCR '${APPLICATION_EXTENSION}' DeleteRegKey HKCR '${APPLICATION_NAME}' ") -ELSE() - IF(APPLE) - SET(CPACK_GENERATOR "productbuild;TGZ") - SET(CPACK_TOPLEVEL_TAG "") - IF(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - SET(CPACK_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) - SET(CMAKE_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) - ENDIF() +else() + if(APPLE) + set(CPACK_GENERATOR "productbuild;TGZ") + set(CPACK_TOPLEVEL_TAG "") + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CPACK_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) + set(CMAKE_INSTALL_PREFIX "/" CACHE PATH "Install path prefix, prepended onto install directories." FORCE) + endif() # productbuild packaging repair hack # call repair_package.sh after running package target in build # Tip: can inspect packages using the pkgutil --expand command - IF(CPACK_GENERATOR MATCHES "productbuild") + if(CPACK_GENERATOR MATCHES "productbuild") # make sure there are paths to packaging tools - FIND_PROGRAM(PKGBUILD_EXE pkgbuild) - FIND_PROGRAM(PRODUCTBUILD_EXE productbuild) - FIND_PROGRAM(PKGUTIL_EXE pkgutil) - SET(PKG_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Darwin") - SET(PKG_BUILD_DIR "${CMAKE_BINARY_DIR}/_CPack_Packages/productbuild/${PKG_FILE_NAME}") - SET(PKG_ROOT_DIR "${PKG_BUILD_DIR}/Applications") - - CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/CMake/Modules/CPack.Distribution.dist.in + find_program(PKGBUILD_EXE pkgbuild) + find_program(PRODUCTBUILD_EXE productbuild) + find_program(PKGUTIL_EXE pkgutil) + set(PKG_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-Darwin") + set(PKG_BUILD_DIR "${CMAKE_BINARY_DIR}/_CPack_Packages/productbuild/${PKG_FILE_NAME}") + set(PKG_ROOT_DIR "${PKG_BUILD_DIR}/Applications") + + configure_file(${CMAKE_SOURCE_DIR}/CMake/Modules/CPack.Distribution.dist.in ${CMAKE_BINARY_DIR}/CPack.Distribution.dist) - CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/CMake/Scripts/repair_package.sh.in + configure_file(${CMAKE_SOURCE_DIR}/CMake/Scripts/repair_package.sh.in ${CMAKE_BINARY_DIR}/repair_package.sh) - ENDIF() - ELSE() - SET(CPACK_STRIP_FILES TRUE) - SET(CPACK_SOURCE_STRIP_FILES TRUE) - SET(CPACK_PACKAGE_EXECUTABLES "${APPLICATION_NAME}" "${APPLICATION_NAME}") - ENDIF() -ENDIF() - -INCLUDE(CPack) + endif() + else() + set(CPACK_STRIP_FILES TRUE) + set(CPACK_SOURCE_STRIP_FILES TRUE) + set(CPACK_PACKAGE_EXECUTABLES "${APPLICATION_NAME}" "${APPLICATION_NAME}") + endif() +endif() + +include(CPack) diff --git a/src/Core/Action/CMakeLists.txt b/src/Core/Action/CMakeLists.txt index 79fe93e96..42a799b6c 100644 --- a/src/Core/Action/CMakeLists.txt +++ b/src/Core/Action/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_ACTION_SRCS +set(CORE_ACTION_SRCS Action.h Action.cc ActionContext.h @@ -55,7 +55,7 @@ SET(CORE_ACTION_SRCS CORE_ADD_LIBRARY(Core_Action ${CORE_ACTION_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Action +target_link_libraries(Core_Action Core_Utils Core_EventHandler Core_Application diff --git a/src/Core/Action/Tests/CMakeLists.txt b/src/Core/Action/Tests/CMakeLists.txt index 527ff0027..c8a90f1b8 100644 --- a/src/Core/Action/Tests/CMakeLists.txt +++ b/src/Core/Action/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Core_Action_Tests_SRCS +set(Core_Action_Tests_SRCS ActionTests.cc ) @@ -33,7 +33,7 @@ REGISTER_UNIT_TEST(Core_Action_Tests ${Core_Action_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Action_Tests +target_link_libraries(Core_Action_Tests Core_Action Testing_Utils ${SCI_TINYXML_LIBRARY} diff --git a/src/Core/Application/CMakeLists.txt b/src/Core/Application/CMakeLists.txt index acf5bc1ba..444dda471 100644 --- a/src/Core/Application/CMakeLists.txt +++ b/src/Core/Application/CMakeLists.txt @@ -30,14 +30,14 @@ # Set sources ################################################## -SET(CORE_APPLICATION_SRCS +set(CORE_APPLICATION_SRCS Application.h Application.cc ) CORE_ADD_LIBRARY(Core_Application ${CORE_APPLICATION_SRCS}) -TARGET_LINK_LIBRARIES(Core_Application +target_link_libraries(Core_Application Core_Utils Core_EventHandler ${SCI_BOOST_LIBRARY} diff --git a/src/Core/Application/Tests/CMakeLists.txt b/src/Core/Application/Tests/CMakeLists.txt index be18b7de4..917d9c8f7 100644 --- a/src/Core/Application/Tests/CMakeLists.txt +++ b/src/Core/Application/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Core_Application_Tests_SRCS +set(Core_Application_Tests_SRCS CommandLineTests.cc ) @@ -33,7 +33,7 @@ REGISTER_UNIT_TEST(Core_Application_Tests ${Core_Application_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Application_Tests +target_link_libraries(Core_Application_Tests Core_Application Core_Utils Core_Geometry diff --git a/src/Core/CMakeLists.txt b/src/Core/CMakeLists.txt index 12ffa7111..45bdbccb1 100644 --- a/src/Core/CMakeLists.txt +++ b/src/Core/CMakeLists.txt @@ -26,32 +26,32 @@ # DEALINGS IN THE SOFTWARE. # -ADD_SUBDIRECTORY(Action) -ADD_SUBDIRECTORY(Application) -ADD_SUBDIRECTORY(DataBlock) -ADD_SUBDIRECTORY(EventHandler) -ADD_SUBDIRECTORY(Geometry) -ADD_SUBDIRECTORY(Interface) -ADD_SUBDIRECTORY(Isosurface) -ADD_SUBDIRECTORY(LargeVolume) -ADD_SUBDIRECTORY(Log) -ADD_SUBDIRECTORY(Parser) -ADD_SUBDIRECTORY(State) -ADD_SUBDIRECTORY(TextRenderer) -ADD_SUBDIRECTORY(Utils) -ADD_SUBDIRECTORY(Viewer) -ADD_SUBDIRECTORY(Volume) +add_subdirectory(Action) +add_subdirectory(Application) +add_subdirectory(DataBlock) +add_subdirectory(EventHandler) +add_subdirectory(Geometry) +add_subdirectory(Interface) +add_subdirectory(Isosurface) +add_subdirectory(LargeVolume) +add_subdirectory(Log) +add_subdirectory(Parser) +add_subdirectory(State) +add_subdirectory(TextRenderer) +add_subdirectory(Utils) +add_subdirectory(Viewer) +add_subdirectory(Volume) # These next three depend on OpenGL and should only be compiled when the renderer is compiled -ADD_SUBDIRECTORY(Graphics) -ADD_SUBDIRECTORY(RenderResources) -ADD_SUBDIRECTORY(Renderer) -ADD_SUBDIRECTORY(VolumeRenderer) +add_subdirectory(Graphics) +add_subdirectory(RenderResources) +add_subdirectory(Renderer) +add_subdirectory(VolumeRenderer) -IF(BUILD_MOSAIC_TOOLS) - ADD_SUBDIRECTORY(ITKCommon) -ENDIF() +if(BUILD_MOSAIC_TOOLS) + add_subdirectory(ITKCommon) +endif() -IF(BUILD_WITH_PYTHON) - ADD_SUBDIRECTORY(Python) -ENDIF() +if(BUILD_WITH_PYTHON) + add_subdirectory(Python) +endif() diff --git a/src/Core/DataBlock/CMakeLists.txt b/src/Core/DataBlock/CMakeLists.txt index a0ec6b9e6..f6059789b 100644 --- a/src/Core/DataBlock/CMakeLists.txt +++ b/src/Core/DataBlock/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(CORE_DATABLOCK_SRCS +set(CORE_DATABLOCK_SRCS DataBlock.h DataBlockFWD.h DataBlock.cc @@ -67,9 +67,9 @@ CORE_ADD_LIBRARY(Core_DataBlock ${CORE_DATABLOCK_SRCS}) ITK_MODULE_LOAD(ITKCommon) -INCLUDE_DIRECTORIES(${ITKCommon_INCLUDE_DIRS}) +include_directories(${ITKCommon_INCLUDE_DIRS}) -TARGET_LINK_LIBRARIES(Core_DataBlock +target_link_libraries(Core_DataBlock Core_Utils Core_Geometry ${ITKCommon_LIBRARIES} @@ -79,7 +79,7 @@ TARGET_LINK_LIBRARIES(Core_DataBlock ${SCI_BOOST_LIBRARY} ) -#SET_TARGET_PROPERTIES(Core_DataBlock +#set_target_properties(Core_DataBlock # PROPERTIES # INCLUDE_DIRECTORIES "${ITKCommon_INCLUDE_DIRS}" #) diff --git a/src/Core/DataBlock/Tests/CMakeLists.txt b/src/Core/DataBlock/Tests/CMakeLists.txt index 2dee4d813..ec837b632 100644 --- a/src/Core/DataBlock/Tests/CMakeLists.txt +++ b/src/Core/DataBlock/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Core_DataBlock_Tests_SRCS +set(Core_DataBlock_Tests_SRCS DataBlockTests.cc NrrdDataTests.cc ) @@ -34,7 +34,7 @@ REGISTER_UNIT_TEST(Core_DataBlock_Tests ${Core_DataBlock_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_DataBlock_Tests +target_link_libraries(Core_DataBlock_Tests Core_DataBlock Testing_Utils ${SCI_ZLIB_LIBRARY} diff --git a/src/Core/EventHandler/CMakeLists.txt b/src/Core/EventHandler/CMakeLists.txt index 82f1f681b..d0867616e 100644 --- a/src/Core/EventHandler/CMakeLists.txt +++ b/src/Core/EventHandler/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_EVENTHANDLER_SRCS +set(CORE_EVENTHANDLER_SRCS Event.h EventFWD.h Event.cc @@ -45,7 +45,7 @@ SET(CORE_EVENTHANDLER_SRCS CORE_ADD_LIBRARY(Core_EventHandler ${CORE_EVENTHANDLER_SRCS} ) -TARGET_LINK_LIBRARIES(Core_EventHandler +target_link_libraries(Core_EventHandler Core_Utils ${SCI_BOOST_LIBRARY}) diff --git a/src/Core/Geometry/CMakeLists.txt b/src/Core/Geometry/CMakeLists.txt index 969841084..8cbdb50ae 100644 --- a/src/Core/Geometry/CMakeLists.txt +++ b/src/Core/Geometry/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_GEOMETRY_SRCS +set(CORE_GEOMETRY_SRCS BBox.h BBox.cc Color.h @@ -71,6 +71,6 @@ SET(CORE_GEOMETRY_SRCS CORE_ADD_LIBRARY(Core_Geometry ${CORE_GEOMETRY_SRCS}) -TARGET_LINK_LIBRARIES(Core_Geometry ${SCI_BOOST_LIBRARY}) +target_link_libraries(Core_Geometry ${SCI_BOOST_LIBRARY}) ADD_TEST_DIR(Tests) diff --git a/src/Core/Geometry/Tests/CMakeLists.txt b/src/Core/Geometry/Tests/CMakeLists.txt index 34ec3cee4..72e4545d6 100644 --- a/src/Core/Geometry/Tests/CMakeLists.txt +++ b/src/Core/Geometry/Tests/CMakeLists.txt @@ -24,7 +24,7 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET(Core_Geometry_Tests_SRCS +set(Core_Geometry_Tests_SRCS GridTransformTests.cc MatrixTests.cc PointTests.cc @@ -36,7 +36,7 @@ REGISTER_UNIT_TEST(Core_Geometry_Tests ${Core_Geometry_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Geometry_Tests +target_link_libraries(Core_Geometry_Tests Core_Geometry Testing_Utils gtest diff --git a/src/Core/Graphics/CMakeLists.txt b/src/Core/Graphics/CMakeLists.txt index 50c611040..89f8d52f4 100644 --- a/src/Core/Graphics/CMakeLists.txt +++ b/src/Core/Graphics/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_GRAPHICS_SRCS +set(CORE_GRAPHICS_SRCS Texture.h Texture.cc Renderbuffer.h @@ -60,7 +60,7 @@ SET(CORE_GRAPHICS_SRCS CORE_ADD_LIBRARY(Core_Graphics ${CORE_GRAPHICS_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Graphics +target_link_libraries(Core_Graphics Core_RenderResources ${SCI_GLEW_LIBRARY} ${SCI_BOOST_LIBRARY}) diff --git a/src/Core/ITKCommon/CMakeLists.txt b/src/Core/ITKCommon/CMakeLists.txt index 5cdccc05e..2f16e82ed 100644 --- a/src/Core/ITKCommon/CMakeLists.txt +++ b/src/Core/ITKCommon/CMakeLists.txt @@ -32,7 +32,7 @@ # Set sources ################################################## -SET(CORE_ITKCOMMON_SRCS +set(CORE_ITKCOMMON_SRCS AsyncMosiacSave.h IRImageLoader.cxx IRImageLoader.hxx @@ -72,14 +72,14 @@ SET(CORE_ITKCOMMON_SRCS visualize.hxx ) -SET(CORE_ITKCOMMON_FILTERING_SRCS +set(CORE_ITKCOMMON_FILTERING_SRCS Filtering/itkNormalizeImageFilterWithMask.h Filtering/itkNormalizeImageFilterWithMask.txx Filtering/itkStatisticsImageFilterWithMask.h Filtering/itkStatisticsImageFilterWithMask.txx ) -SET(CORE_ITKCOMMON_TRANSFORM_SRCS +set(CORE_ITKCOMMON_TRANSFORM_SRCS Transform/IRConnection.cxx Transform/IRConnection.hxx Transform/IRRefineTranslateCanvas.hxx @@ -103,7 +103,7 @@ SET(CORE_ITKCOMMON_TRANSFORM_SRCS Transform/the_grid_transform.hxx ) -SET(CORE_ITKCOMMON_OPTIMIZERS_SRCS +set(CORE_ITKCOMMON_OPTIMIZERS_SRCS Optimizers/itkImageMosaicVarianceMetric.h Optimizers/itkImageMosaicVarianceMetric.txx Optimizers/itkRegularStepGradientDescentOptimizer2.cxx @@ -111,7 +111,7 @@ SET(CORE_ITKCOMMON_OPTIMIZERS_SRCS Optimizers/optimizer_observer.hxx ) -SET(CORE_ITKCOMMON_THREADUTILS_SRCS +set(CORE_ITKCOMMON_THREADUTILS_SRCS ThreadUtils/itk_terminator.hxx ThreadUtils/the_boost_mutex.cxx ThreadUtils/the_boost_mutex.hxx @@ -132,20 +132,20 @@ SET(CORE_ITKCOMMON_THREADUTILS_SRCS ThreadUtils/the_transaction.hxx ) -SET(CORE_ITKCOMMON_FFT_SRCS +set(CORE_ITKCOMMON_FFT_SRCS FFT/fft.cxx FFT/fft.hxx FFT/fft_common.cxx FFT/fft_common.hxx ) -SET(CORE_ITKCOMMON_STOS_SRCS +set(CORE_ITKCOMMON_STOS_SRCS STOS/stos.hxx STOS/stos_common.cxx STOS/stos_common.hxx ) -SET(FFTW_LIBS "fftw3;fftw3f;fftw3f_threads") +set(FFTW_LIBS "fftw3;fftw3f;fftw3f_threads") CORE_ADD_LIBRARY(Core_ITKCommon ${CORE_ITKCOMMON_SRCS} @@ -157,7 +157,7 @@ CORE_ADD_LIBRARY(Core_ITKCommon ${CORE_ITKCOMMON_STOS_SRCS} ) -TARGET_LINK_LIBRARIES(Core_ITKCommon +target_link_libraries(Core_ITKCommon Core_Utils ${ITKCommon_LIBRARIES} ${ITKIOTransformBase_LIBRARIES} diff --git a/src/Core/ITKCommon/Transform/Tests/CMakeLists.txt b/src/Core/ITKCommon/Transform/Tests/CMakeLists.txt index b2fda36ce..ca8a6e3f5 100644 --- a/src/Core/ITKCommon/Transform/Tests/CMakeLists.txt +++ b/src/Core/ITKCommon/Transform/Tests/CMakeLists.txt @@ -26,7 +26,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(CORE_SEG3D_ITKCOMMON_TRANSFORM_TESTS_SRCS +set(CORE_SEG3D_ITKCOMMON_TRANSFORM_TESTS_SRCS ITKTransformTests.cc ) @@ -34,7 +34,7 @@ REGISTER_UNIT_TEST(Core_Seg3D_ITKCommon_Transform_Tests ${CORE_SEG3D_ITKCOMMON_TRANSFORM_TESTS_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Seg3D_ITKCommon_Transform_Tests +target_link_libraries(Core_Seg3D_ITKCommon_Transform_Tests Core_Utils Core_ITKCommon ${ITKCommon_LIBRARIES} diff --git a/src/Core/Interface/CMakeLists.txt b/src/Core/Interface/CMakeLists.txt index 645b68d29..0c42b0489 100644 --- a/src/Core/Interface/CMakeLists.txt +++ b/src/Core/Interface/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_INTERFACE_SRCS +set(CORE_INTERFACE_SRCS InterfaceActionContext.h InterfaceActionContext.cc Interface.h @@ -40,7 +40,7 @@ SET(CORE_INTERFACE_SRCS CORE_ADD_LIBRARY(Core_Interface ${CORE_INTERFACE_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Interface +target_link_libraries(Core_Interface Core_Application Core_Action Core_Utils diff --git a/src/Core/Isosurface/CMakeLists.txt b/src/Core/Isosurface/CMakeLists.txt index d8c4937ae..32719a162 100644 --- a/src/Core/Isosurface/CMakeLists.txt +++ b/src/Core/Isosurface/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_ISOSURFACE_SRCS +set(CORE_ISOSURFACE_SRCS Isosurface.h Isosurface.cc IsosurfaceExporter.h @@ -44,7 +44,7 @@ SET(CORE_ISOSURFACE_SRCS CORE_ADD_LIBRARY(Core_Isosurface ${CORE_ISOSURFACE_SRCS}) -TARGET_LINK_LIBRARIES(Core_Isosurface +target_link_libraries(Core_Isosurface Core_Utils Core_Graphics ${SCI_BOOST_LIBRARY} diff --git a/src/Core/LargeVolume/CMakeLists.txt b/src/Core/LargeVolume/CMakeLists.txt index f63b54f0d..9de62cf03 100644 --- a/src/Core/LargeVolume/CMakeLists.txt +++ b/src/Core/LargeVolume/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_LARGEVOLUME_SRCS +set(CORE_LARGEVOLUME_SRCS LargeVolumeSchema.h LargeVolumeSchema.cc LargeVolumeConverter.h @@ -46,7 +46,7 @@ SET(CORE_LARGEVOLUME_SRCS CORE_ADD_LIBRARY(Core_LargeVolume ${CORE_LARGEVOLUME_SRCS} ) -TARGET_LINK_LIBRARIES(Core_LargeVolume +target_link_libraries(Core_LargeVolume Core_Utils Core_Geometry Core_DataBlock diff --git a/src/Core/Log/CMakeLists.txt b/src/Core/Log/CMakeLists.txt index ce1056f5c..65a4ce0db 100644 --- a/src/Core/Log/CMakeLists.txt +++ b/src/Core/Log/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_LOG_SRCS +set(CORE_LOG_SRCS RolloverLogFile.h RolloverLogFile.cc ) @@ -42,7 +42,7 @@ SET(CORE_LOG_SRCS CORE_ADD_LIBRARY(Core_Log ${CORE_LOG_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Log +target_link_libraries(Core_Log Core_Utils Core_Application ${SCI_BOOST_LIBRARY}) diff --git a/src/Core/Parser/CMakeLists.txt b/src/Core/Parser/CMakeLists.txt index 6f45cee77..2ad6355f5 100644 --- a/src/Core/Parser/CMakeLists.txt +++ b/src/Core/Parser/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_PARSER_SRCS +set(CORE_PARSER_SRCS ArrayMathEngine.h ArrayMathEngine.cc ArrayMathFunction.h @@ -79,7 +79,7 @@ SET(CORE_PARSER_SRCS CORE_ADD_LIBRARY(Core_Parser ${CORE_PARSER_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Parser +target_link_libraries(Core_Parser ${SCI_BOOST_LIBRARY} Core_Utils Core_DataBlock) diff --git a/src/Core/Python/CMakeLists.txt b/src/Core/Python/CMakeLists.txt index cec29abc4..1b088c23a 100644 --- a/src/Core/Python/CMakeLists.txt +++ b/src/Core/Python/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_PYTHON_SRCS +set(CORE_PYTHON_SRCS Util.h Util.cc PythonInterpreter.h @@ -44,31 +44,31 @@ SET(CORE_PYTHON_SRCS PythonCLI.cc ) -IF(WIN32) - ADD_DEFINITIONS(-DPYTHONPATH=L"${SCI_PYTHON_MODULE_PARENT_PATH}" +if(WIN32) + add_definitions(-DPYTHONPATH=L"${SCI_PYTHON_MODULE_PARENT_PATH}" -DPYTHONNAME=L"${SCI_PYTHON_NAME}") -ELSEIF(APPLE) - IF(BUILD_TESTING) - ADD_DEFINITIONS(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}:${APPLICATION_NAME}.app/Contents/Frameworks/${PYTHON_MODULE_SEARCH_ROOT}") - ELSE() - ADD_DEFINITIONS(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}") - ENDIF() - ADD_DEFINITIONS(-DPYTHONLIBDIR=L"${SCI_PYTHON_LIBRARY_DIR}" +elseif(APPLE) + if(BUILD_TESTING) + add_definitions(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}:${APPLICATION_NAME}.app/Contents/Frameworks/${PYTHON_MODULE_SEARCH_ROOT}") + else() + add_definitions(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}") + endif() + add_definitions(-DPYTHONLIBDIR=L"${SCI_PYTHON_LIBRARY_DIR}" -DPYTHONLIB=L"${SCI_PYTHON_LIBRARY}") -ELSE() - ADD_DEFINITIONS(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}") -ENDIF() +else() + add_definitions(-DPYTHONPATH=L"${PYTHON_MODULE_SEARCH_PATH}") +endif() CORE_ADD_LIBRARY(Core_Python ${CORE_PYTHON_SRCS}) -TARGET_LINK_LIBRARIES(Core_Python +target_link_libraries(Core_Python Core_Utils Core_Action ${SCI_PYTHON_LIBRARY} ${SCI_BOOST_LIBRARY} ) -SET_TARGET_PROPERTIES(Core_Python +set_target_properties(Core_Python PROPERTIES COMPILE_DEFINITIONS_DEBUG "BOOST_DEBUG_PYTHON" ) diff --git a/src/Core/Python/Tests/CMakeLists.txt b/src/Core/Python/Tests/CMakeLists.txt index 8d991668c..f94a12682 100644 --- a/src/Core/Python/Tests/CMakeLists.txt +++ b/src/Core/Python/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Core_Python_Tests_SRCS +set(Core_Python_Tests_SRCS PythonInterpreterTests.cc ) @@ -33,7 +33,7 @@ REGISTER_UNIT_TEST(Core_Python_Tests ${Core_Python_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Python_Tests +target_link_libraries(Core_Python_Tests Core_Python Testing_Utils ${SCI_PYTHON_LIBRARY} diff --git a/src/Core/RenderResources/CMakeLists.txt b/src/Core/RenderResources/CMakeLists.txt index 6df718ad4..b8d8c6315 100644 --- a/src/Core/RenderResources/CMakeLists.txt +++ b/src/Core/RenderResources/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(CORE_RENDERRESOURCES_SRCS +set(CORE_RENDERRESOURCES_SRCS RenderResources.h RenderResources.cc RenderResourcesContext.h @@ -43,7 +43,7 @@ SET(CORE_RENDERRESOURCES_SRCS CORE_ADD_LIBRARY(Core_RenderResources ${CORE_RENDERRESOURCES_SRCS}) -TARGET_LINK_LIBRARIES(Core_RenderResources +target_link_libraries(Core_RenderResources ${SCI_GLEW_LIBRARY} ${SCI_BOOST_LIBRARY} ) diff --git a/src/Core/Renderer/CMakeLists.txt b/src/Core/Renderer/CMakeLists.txt index 52c6017ae..ecf7a1f04 100644 --- a/src/Core/Renderer/CMakeLists.txt +++ b/src/Core/Renderer/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_RENDERER_SRCS +set(CORE_RENDERER_SRCS AbstractRenderer.h DummyRenderer.h PickPoint.h @@ -41,7 +41,7 @@ SET(CORE_RENDERER_SRCS CORE_ADD_LIBRARY(Core_Renderer ${CORE_RENDERER_SRCS}) -TARGET_LINK_LIBRARIES(Core_Renderer +target_link_libraries(Core_Renderer Core_Utils Core_EventHandler Core_TextRenderer diff --git a/src/Core/State/CMakeLists.txt b/src/Core/State/CMakeLists.txt index 40e590b76..ee833ddd4 100644 --- a/src/Core/State/CMakeLists.txt +++ b/src/Core/State/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_STATE_SRCS +set(CORE_STATE_SRCS StateBase.cc StateBase.h StateEngine.h @@ -63,7 +63,7 @@ SET(CORE_STATE_SRCS BooleanStateGroup.cc ) -SET(CORE_STATE_ACTIONS_SRCS +set(CORE_STATE_ACTIONS_SRCS Actions/ActionAdd.h Actions/ActionAdd.cc Actions/ActionClear.h @@ -90,17 +90,17 @@ SET(CORE_STATE_ACTIONS_SRCS Actions/ActionSetAt.cc ) -IF(BUILD_WITH_PYTHON) +if(BUILD_WITH_PYTHON) GENERATE_ACTION_PYTHON_WRAPPER(PYTHON_WRAPPER Core_State ${CORE_STATE_ACTIONS_SRCS}) - SET(CORE_STATE_SRCS ${CORE_STATE_SRCS} ${PYTHON_WRAPPER}) -ENDIF(BUILD_WITH_PYTHON) + set(CORE_STATE_SRCS ${CORE_STATE_SRCS} ${PYTHON_WRAPPER}) +endif() CORE_ADD_LIBRARY(Core_State ${CORE_STATE_SRCS} ${CORE_STATE_ACTIONS_SRCS} ${CORE_STATE_ACTIONS_XML_H_SRCS}) -TARGET_LINK_LIBRARIES(Core_State +target_link_libraries(Core_State Core_Utils Core_Application Core_Interface diff --git a/src/Core/TextRenderer/CMakeLists.txt b/src/Core/TextRenderer/CMakeLists.txt index fe769d8bb..22b6bcdfc 100644 --- a/src/Core/TextRenderer/CMakeLists.txt +++ b/src/Core/TextRenderer/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_TEXTRENDERER_SRCS +set(CORE_TEXTRENDERER_SRCS FreeTypeLibrary.h FreeTypeLibrary.cc FreeTypeFace.h @@ -45,7 +45,7 @@ SET(CORE_TEXTRENDERER_SRCS CORE_ADD_LIBRARY(Core_TextRenderer ${CORE_TEXTRENDERER_SRCS}) -TARGET_LINK_LIBRARIES(Core_TextRenderer +target_link_libraries(Core_TextRenderer Core_Utils ${SCI_FREETYPE_LIBRARY} ${SCI_BOOST_LIBRARY}) diff --git a/src/Core/Utils/CMakeLists.txt b/src/Core/Utils/CMakeLists.txt index 7f1e9c933..947cdb969 100644 --- a/src/Core/Utils/CMakeLists.txt +++ b/src/Core/Utils/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(CORE_UTILS_SRCS +set(CORE_UTILS_SRCS AtomicCounter.h ConnectionHandler.h ConnectionHandler.cc @@ -78,6 +78,6 @@ SET(CORE_UTILS_SRCS ################################################## CORE_ADD_LIBRARY(Core_Utils ${CORE_UTILS_SRCS}) -TARGET_LINK_LIBRARIES(Core_Utils ${SCI_BOOST_LIBRARY}) +target_link_libraries(Core_Utils ${SCI_BOOST_LIBRARY}) ADD_TEST_DIR(Tests) diff --git a/src/Core/Utils/Tests/CMakeLists.txt b/src/Core/Utils/Tests/CMakeLists.txt index cc495c07e..78f007b8b 100644 --- a/src/Core/Utils/Tests/CMakeLists.txt +++ b/src/Core/Utils/Tests/CMakeLists.txt @@ -25,7 +25,7 @@ # DEALINGS IN THE SOFTWARE. # -SET(Core_Utils_Tests_SRCS +set(Core_Utils_Tests_SRCS SingletonTests.cc LogTests.cc ) @@ -34,7 +34,7 @@ REGISTER_UNIT_TEST(Core_Utils_Tests ${Core_Utils_Tests_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Utils_Tests +target_link_libraries(Core_Utils_Tests Core_Utils gtest_main gtest diff --git a/src/Core/Viewer/CMakeLists.txt b/src/Core/Viewer/CMakeLists.txt index aa95c7762..a9d2c4c64 100644 --- a/src/Core/Viewer/CMakeLists.txt +++ b/src/Core/Viewer/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_VIEWER_SRCS +set(CORE_VIEWER_SRCS AbstractViewer.h AbstractViewer.cc Mouse.h @@ -44,7 +44,7 @@ SET(CORE_VIEWER_SRCS CORE_ADD_LIBRARY(Core_Viewer ${CORE_VIEWER_SRCS}) -TARGET_LINK_LIBRARIES(Core_Viewer +target_link_libraries(Core_Viewer Core_State Core_Utils Core_Renderer diff --git a/src/Core/Volume/CMakeLists.txt b/src/Core/Volume/CMakeLists.txt index 5c81b1e65..5b47303fe 100644 --- a/src/Core/Volume/CMakeLists.txt +++ b/src/Core/Volume/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_VOLUME_SRCS +set(CORE_VOLUME_SRCS Volume.h Volume.cc DataVolume.h @@ -56,7 +56,7 @@ SET(CORE_VOLUME_SRCS CORE_ADD_LIBRARY(Core_Volume ${CORE_VOLUME_SRCS} ) -TARGET_LINK_LIBRARIES(Core_Volume +target_link_libraries(Core_Volume Core_Utils Core_DataBlock Core_Graphics diff --git a/src/Core/VolumeRenderer/CMakeLists.txt b/src/Core/VolumeRenderer/CMakeLists.txt index 4bad70a0b..dc07dd04c 100644 --- a/src/Core/VolumeRenderer/CMakeLists.txt +++ b/src/Core/VolumeRenderer/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(CORE_VOLUMERENDERER_SHADER_SRCS +set(CORE_VOLUMERENDERER_SHADER_SRCS VolumeShaderSimple.frag VolumeShaderSimple.vert VolumeShaderOcclusion.frag @@ -41,7 +41,7 @@ SET(CORE_VOLUMERENDERER_SHADER_SRCS CORE_IMPORT_SHADER(CORE_VOLUMERENDERER_SHADER_STRING_SRCS ${CORE_VOLUMERENDERER_SHADER_SRCS}) -SET(CORE_VOLUMERENDERER_SRCS +set(CORE_VOLUMERENDERER_SRCS VolumeRendererBase.h VolumeRendererBase.cc VolumeRendererSimple.h @@ -65,7 +65,7 @@ CORE_ADD_LIBRARY(Core_VolumeRenderer ${CORE_VOLUMERENDERER_SHADER_SRCS} ${CORE_VOLUMERENDERER_SHADER_STRING_SRCS}) -TARGET_LINK_LIBRARIES(Core_VolumeRenderer +target_link_libraries(Core_VolumeRenderer Core_Utils Core_Geometry Core_Graphics diff --git a/src/Documentation/CMakeLists.txt b/src/Documentation/CMakeLists.txt index ff966b3aa..e3a745bf1 100644 --- a/src/Documentation/CMakeLists.txt +++ b/src/Documentation/CMakeLists.txt @@ -29,15 +29,15 @@ # Define macros for adding documentation # Migrated from the SCIRun documentation build -CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/seg3d.sty.in ${CMAKE_CURRENT_BINARY_DIR}/seg3d.sty) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/seg3d.sty.in ${CMAKE_CURRENT_BINARY_DIR}/seg3d.sty) -MESSAGE(STATUS "Setting up documentation") +message(STATUS "Setting up documentation") -MACRO(ADD_PDF_DOCUMENT document) +macro(ADD_PDF_DOCUMENT document) - MESSAGE(STATUS "Create ${document} Document") + message(STATUS "Create ${document} Document") - ADD_CUSTOM_COMMAND( + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.aux DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.tex COMMAND ${PDFLATEX_COMPILER} @@ -45,11 +45,11 @@ MACRO(ADD_PDF_DOCUMENT document) COMMENT "PDFLatex ${document} (first pass)" ) - FILE(READ ${CMAKE_CURRENT_SOURCE_DIR}/${document}.tex tex_file) - STRING(REGEX MATCH "bibliography" NEED_BIBTEX ${tex_file}) + file(READ ${CMAKE_CURRENT_SOURCE_DIR}/${document}.tex tex_file) + string(REGEX MATCH "bibliography" NEED_BIBTEX ${tex_file}) - IF(NEED_BIBTEX) - ADD_CUSTOM_COMMAND( + if(NEED_BIBTEX) + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.bbl DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.aux COMMAND ${BIBTEX_COMPILER} @@ -57,7 +57,7 @@ MACRO(ADD_PDF_DOCUMENT document) COMMENT "Bibtex ${document}" ) - ADD_CUSTOM_COMMAND( + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.pdf DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.bbl COMMAND ${PDFLATEX_COMPILER} @@ -65,7 +65,7 @@ MACRO(ADD_PDF_DOCUMENT document) COMMENT "PDFLatex ${document} (second pass)" ) - ADD_CUSTOM_COMMAND( + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.log DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.bbl ${CMAKE_CURRENT_BINARY_DIR}/${document}.pdf @@ -73,8 +73,8 @@ MACRO(ADD_PDF_DOCUMENT document) ARGS -interaction=batchmode ${CMAKE_CURRENT_BINARY_DIR}/${document}.tex COMMENT "PDFLatex ${document} (third pass)" ) - ELSE() - ADD_CUSTOM_COMMAND( + else() + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.pdf DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.aux COMMAND ${PDFLATEX_COMPILER} @@ -82,7 +82,7 @@ MACRO(ADD_PDF_DOCUMENT document) COMMENT "PDFLatex ${document} (second pass)" ) - ADD_CUSTOM_COMMAND( + add_custom_command( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${document}.log DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.pdf COMMAND ${PDFLATEX_COMPILER} @@ -90,37 +90,37 @@ MACRO(ADD_PDF_DOCUMENT document) COMMENT "PDFLatex ${document} (third pass)" ) - ENDIF() + endif() - ADD_CUSTOM_TARGET(${document} ALL + add_custom_target(${document} ALL DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${document}.log) - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${document}.tex ${CMAKE_CURRENT_BINARY_DIR}/${document}.tex COPYONLY) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${document}.tex ${CMAKE_CURRENT_BINARY_DIR}/${document}.tex COPYONLY) - FILE(GLOB_RECURSE png_figures "${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/*.png") + file(GLOB_RECURSE png_figures "${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/*.png") - FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${document}_figures) - FOREACH(png_figure ${png_figures}) - MESSAGE(STATUS "copying ${png_figure}") - GET_FILENAME_COMPONENT(png_name ${png_figure} NAME) - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/${png_name} + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${document}_figures) + foreach(png_figure ${png_figures}) + message(STATUS "copying ${png_figure}") + get_filename_component(png_name ${png_figure} NAME) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/${png_name} ${CMAKE_CURRENT_BINARY_DIR}/${document}_figures/${png_name} COPYONLY) - ENDFOREACH(png_figure ${png_figures}) + endforeach() - FILE(GLOB_RECURSE pdf_figures "${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/*.pdf") - FOREACH(pdf_figure ${pdf_figures}) - GET_FILENAME_COMPONENT(pdf_name ${pdf_figure} NAME) - CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/${pdf_name} + file(GLOB_RECURSE pdf_figures "${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/*.pdf") + foreach(pdf_figure ${pdf_figures}) + get_filename_component(pdf_name ${pdf_figure} NAME) + configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${document}_figures/${pdf_name} ${CMAKE_CURRENT_BINARY_DIR}/${document}_figures/${pdf_name} COPYONLY) - ENDFOREACH(pdf_figure ${pdf_figures}) + endforeach() - IF(APPLE) - INSTALL(FILES ${SEG3D_BINARY_DIR}/Documentation/${document}.pdf + if(APPLE) + install(FILES ${SEG3D_BINARY_DIR}/Documentation/${document}.pdf DESTINATION ${OSX_UTILS_DIR}) - ELSE() - INSTALL(FILES ${SEG3D_BINARY_DIR}/Documentation/${document}.pdf DESTINATION Documentation) - ENDIF() -ENDMACRO() + else() + install(FILES ${SEG3D_BINARY_DIR}/Documentation/${document}.pdf DESTINATION Documentation) + endif() +endmacro() # ADD DOCUMENTS diff --git a/src/Documentation/Doxygen/CMakeLists.txt b/src/Documentation/Doxygen/CMakeLists.txt index 9615bc928..d9c059af6 100644 --- a/src/Documentation/Doxygen/CMakeLists.txt +++ b/src/Documentation/Doxygen/CMakeLists.txt @@ -26,8 +26,8 @@ # DEALINGS IN THE SOFTWARE. # -SET(DOXYFILE ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) -CONFIGURE_FILE(Doxyfile.in ${DOXYFILE} @ONLY NEWLINE_STYLE UNIX) +set(DOXYFILE ${CMAKE_CURRENT_BINARY_DIR}/Doxyfile) +configure_file(Doxyfile.in ${DOXYFILE} @ONLY NEWLINE_STYLE UNIX) # TODO: if generating documentation every time project is built is onerous, remove the ALL keyword -ADD_CUSTOM_TARGET(Doxygen ALL COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE} SOURCES ${DOXYFILE}) +add_custom_target(Doxygen ALL COMMAND ${DOXYGEN_EXECUTABLE} ${DOXYFILE} SOURCES ${DOXYFILE}) diff --git a/src/HeadlessMain/CMakeLists.txt b/src/HeadlessMain/CMakeLists.txt index 8b47bc365..4ea299a63 100644 --- a/src/HeadlessMain/CMakeLists.txt +++ b/src/HeadlessMain/CMakeLists.txt @@ -31,7 +31,7 @@ # Set Seg3D main sources ########################################### -SET(MAIN_SRCS +set(MAIN_SRCS main.cc ) @@ -39,16 +39,16 @@ SET(MAIN_SRCS # Build the Seg3D executable ########################################### -SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) -ADD_DEFINITIONS(-DAPPLICATION_NAME=${APPLICATION_NAME}) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) +add_definitions(-DAPPLICATION_NAME=${APPLICATION_NAME}) -IF(WIN32) - SET(MAIN_SRCS ${MAIN_SRCS} "${APPLICATION_WINDOWS_RC}") -ENDIF() +if(WIN32) + set(MAIN_SRCS ${MAIN_SRCS} "${APPLICATION_WINDOWS_RC}") +endif() -ADD_EXECUTABLE(${APPLICATION_NAME} ${MAIN_SRCS}) +add_executable(${APPLICATION_NAME} ${MAIN_SRCS}) -TARGET_LINK_LIBRARIES(${APPLICATION_NAME} +target_link_libraries(${APPLICATION_NAME} ${SCI_BOOST_LIBRARY} Core_Utils Core_DataBlock @@ -68,34 +68,34 @@ TARGET_LINK_LIBRARIES(${APPLICATION_NAME} ${ImplicitFunction_LIBRARY} ) -IF(WIN32) - TARGET_LINK_LIBRARIES(${APPLICATION_NAME} ) - SET_TARGET_PROPERTIES(${APPLICATION_NAME} +if(WIN32) + target_link_libraries(${APPLICATION_NAME} ) + set_target_properties(${APPLICATION_NAME} PROPERTIES LINK_FLAGS "/INCREMENTAL:NO") -ENDIF(WIN32) +endif() -IF(APPLE) - SET_TARGET_PROPERTIES(${APPLICATION_NAME} +if(APPLE) + set_target_properties(${APPLICATION_NAME} PROPERTIES LINK_FLAGS "-framework CoreGraphics") -ENDIF() +endif() -IF(BUILD_WITH_PYTHON) - TARGET_LINK_LIBRARIES(${APPLICATION_NAME} +if(BUILD_WITH_PYTHON) + target_link_libraries(${APPLICATION_NAME} Core_Python Application_Socket ) -ENDIF() +endif() # add libraries with plug-ins and extensions REGISTERED_TARGET_LINK_LIBRARIES(${APPLICATION_NAME}) -IF(APPLE) - IF(BUILD_WITH_PYTHON) - SET(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) - SET(PYTHON_PATH Python.framework/${VERSION_PATH}) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} +if(APPLE) + if(BUILD_WITH_PYTHON) + set(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) + set(PYTHON_PATH Python.framework/${VERSION_PATH}) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD # macdeployqt puts frameworks in app/Content/Frameworks COMMAND ${CMAKE_COMMAND} ARGS -E tar xf ${SCI_PYTHON_FRAMEWORK_ARCHIVE} @@ -105,37 +105,37 @@ IF(APPLE) # TODO: other executables... COMMAND install_name_tool -change ${SCI_PYTHON_FRAMEWORK}/${VERSION_PATH}/Python @executable_path/../Python ${PYTHON_PATH}/bin/python${SCI_PYTHON_VERSION_SHORT} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() -ELSEIF(WIN32) - IF(BUILD_WITH_PYTHON) + endif() +elseif(WIN32) + if(BUILD_WITH_PYTHON) # TODO: change $ to $ when upgrading to cmake 3 # TODO: copy python dll - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E make_directory $/${PYTHON_MODULE_SEARCH_PATH} COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_MODULE_LIBRARY_PATH} $/${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() -ELSE() - IF(BUILD_WITH_PYTHON) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + endif() +else() + if(BUILD_WITH_PYTHON) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E make_directory ${PYTHON_MODULE_SEARCH_PATH} COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_MODULE_LIBRARY_PATH} ${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - IF(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH AND EXISTS ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH}) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + if(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH AND EXISTS ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH}) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND echo "${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH} ${PYTHON_MODULE_SEARCH_PATH}" COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH} ${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() -# INSTALL(PROGRAMS + endif() +# install(PROGRAMS # ${SCI_PYTHON_DLL_PATH} # DESTINATION bin # ) - ENDIF() + endif() -# INSTALL(TARGETS ${APPLICATION_NAME} RUNTIME DESTINATION bin) -# INSTALL(FILES ${CMAKE_SOURCE_DIR}/ReleaseNotes.txt DESTINATION bin) -ENDIF() +# install(TARGETS ${APPLICATION_NAME} RUNTIME DESTINATION bin) +# install(FILES ${CMAKE_SOURCE_DIR}/ReleaseNotes.txt DESTINATION bin) +endif() diff --git a/src/Interface/Application/CMakeLists.txt b/src/Interface/Application/CMakeLists.txt index 741a170c1..8590542b1 100644 --- a/src/Interface/Application/CMakeLists.txt +++ b/src/Interface/Application/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(INTERFACE_APPLICATION_SRCS +set(INTERFACE_APPLICATION_SRCS ApplicationInterface.cc ColorPickerWidget.cc ControllerInterface.cc @@ -79,7 +79,7 @@ SET(INTERFACE_APPLICATION_SRCS SliceRangeDialog.cc ) -SET(INTERFACE_APPLICATION_MOC_SRCS +set(INTERFACE_APPLICATION_MOC_SRCS ApplicationInterface.h ColorPickerWidget.h ControllerInterface.h @@ -126,12 +126,12 @@ SET(INTERFACE_APPLICATION_MOC_SRCS SliceRangeDialog.h ) -IF(BUILD_WITH_PYTHON) - SET(INTERFACE_APPLICATION_SRCS ${INTERFACE_APPLICATION_SRCS} PythonConsoleWidget.cc) - SET(INTERFACE_APPLICATION_MOC_SRCS ${INTERFACE_APPLICATION_MOC_SRCS} PythonConsoleWidget.h) -ENDIF() +if(BUILD_WITH_PYTHON) + set(INTERFACE_APPLICATION_SRCS ${INTERFACE_APPLICATION_SRCS} PythonConsoleWidget.cc) + set(INTERFACE_APPLICATION_MOC_SRCS ${INTERFACE_APPLICATION_MOC_SRCS} PythonConsoleWidget.h) +endif() -SET(INTERFACE_APPLICATION_NO_MOC_SRCS +set(INTERFACE_APPLICATION_NO_MOC_SRCS ControllerContext.h LayerIOFunctions.h LayerIOFunctions.cc @@ -139,7 +139,7 @@ SET(INTERFACE_APPLICATION_NO_MOC_SRCS StyleSheet.cc ) -SET(INTERFACE_APPLICATION_UI_SRCS +set(INTERFACE_APPLICATION_UI_SRCS ColorPickerWidget.ui ControllerInterface.ui GroupButtonMenu.ui @@ -166,7 +166,7 @@ SET(INTERFACE_APPLICATION_UI_SRCS SliceRangeDialog.ui ) -SET(INTERFACE_APPLICATION_RCC_SRCS +set(INTERFACE_APPLICATION_RCC_SRCS ) @@ -194,7 +194,7 @@ QT5_WRAP_CPP(INTERFACE_APPLICATION_QT_MOC_SRCS ${INTERFACE_APPLICATION_MOC_SRCS} # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -208,8 +208,8 @@ CORE_ADD_LIBRARY(Interface_Application ${INTERFACE_APPLICATION_MOC_SRCS} ${INTERFACE_APPLICATION_QT_RCC_SRCS}) -IF(APPLE) - TARGET_LINK_LIBRARIES(Interface_Application +if(APPLE) + target_link_libraries(Interface_Application Core_Utils Core_EventHandler Core_Action @@ -227,8 +227,8 @@ IF(APPLE) QtUtils_Bridge ${SCI_BOOST_LIBRARY} /System/Library/Frameworks/CoreServices.framework) -ELSE() - TARGET_LINK_LIBRARIES(Interface_Application +else() + target_link_libraries(Interface_Application Core_Utils Core_EventHandler Core_Action @@ -245,8 +245,8 @@ ELSE() QtUtils_Widgets QtUtils_Bridge ${SCI_BOOST_LIBRARY}) -ENDIF() +endif() -IF(BUILD_WITH_PYTHON) - TARGET_LINK_LIBRARIES(Interface_Application Core_Python) -ENDIF() +if(BUILD_WITH_PYTHON) + target_link_libraries(Interface_Application Core_Python) +endif() diff --git a/src/Interface/CMakeLists.txt b/src/Interface/CMakeLists.txt index 34a192754..baeafaba9 100644 --- a/src/Interface/CMakeLists.txt +++ b/src/Interface/CMakeLists.txt @@ -26,6 +26,6 @@ # DEALINGS IN THE SOFTWARE. # -ADD_SUBDIRECTORY(Application) -ADD_SUBDIRECTORY(ToolInterface) -#ADD_SUBDIRECTORY(ImageRegistrationInterface) +add_subdirectory(Application) +add_subdirectory(ToolInterface) +#add_subdirectory(ImageRegistrationInterface) diff --git a/src/Interface/ToolInterface/CMakeLists.txt b/src/Interface/ToolInterface/CMakeLists.txt index 90b2148b7..f9673c3ee 100644 --- a/src/Interface/ToolInterface/CMakeLists.txt +++ b/src/Interface/ToolInterface/CMakeLists.txt @@ -30,7 +30,7 @@ # Set sources ################################################## -SET(INTERFACE_TOOLINTERFACE_SRCS +set(INTERFACE_TOOLINTERFACE_SRCS CropToolInterface.cc PaintToolInterface.cc PolylineToolInterface.cc @@ -76,7 +76,7 @@ SET(INTERFACE_TOOLINTERFACE_SRCS WatershedFilterInterface.cc ) -SET(INTERFACE_TOOLINTERFACE_MOC_SRCS +set(INTERFACE_TOOLINTERFACE_MOC_SRCS CropToolInterface.h InvertToolInterface.h PaintToolInterface.h @@ -126,14 +126,14 @@ SET(INTERFACE_TOOLINTERFACE_MOC_SRCS WatershedFilterInterface.h ) -SET(INTERFACE_TOOLINTERFACE_NO_MOC_SRCS +set(INTERFACE_TOOLINTERFACE_NO_MOC_SRCS detail/MeasurementTableView.cc detail/MeasurementTableModel.cc detail/MeasurementItemDelegate.cc detail/MeasurementTextEdit.cc ) -SET(INTERFACE_TOOLINTERFACE_UI_SRCS +set(INTERFACE_TOOLINTERFACE_UI_SRCS CropToolInterface.ui InvertToolInterface.ui PaintToolInterface.ui @@ -202,7 +202,7 @@ QT5_WRAP_CPP(INTERFACE_TOOLINTERFACE_QT_MOC_SRCS ${INTERFACE_TOOLINTERFACE_MOC_S # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -216,7 +216,7 @@ CORE_ADD_LIBRARY(Interface_ToolInterface ${INTERFACE_TOOLINTERFACE_MOC_SRCS} ) -TARGET_LINK_LIBRARIES(Interface_ToolInterface +target_link_libraries(Interface_ToolInterface Core_Utils Core_EventHandler Core_Application diff --git a/src/LargeVolumeUtils/CMakeLists.txt b/src/LargeVolumeUtils/CMakeLists.txt index 02aee001f..63c4567a8 100644 --- a/src/LargeVolumeUtils/CMakeLists.txt +++ b/src/LargeVolumeUtils/CMakeLists.txt @@ -31,11 +31,11 @@ # Set Utils main sources ########################################### -SET(LV_UTILS_SRCS +set(LV_UTILS_SRCS CreateLargeVolume ) -SET(UTILS_LIBS +set(UTILS_LIBS ${SCI_BOOST_LIBRARY} ${SCI_ZLIB_LIBRARY} ${ITKIOJPEG_LIBRARIES} @@ -57,36 +57,36 @@ SET(UTILS_LIBS Application_Filters ) -IF(BUILD_WITH_PYTHON) - LIST(APPEND UTILS_LIBS Application_Socket) -ENDIF() +if(BUILD_WITH_PYTHON) + list(APPEND UTILS_LIBS Application_Socket) +endif() ########################################### # Build the Seg3D utilities ########################################### -SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) -SET(LV_UTILS_TARGETS "" CACHE INTERNAL "Large volume utilities." FORCE) +set(LV_UTILS_TARGETS "" CACHE INTERNAL "Large volume utilities." FORCE) -FOREACH(UTIL ${LV_UTILS_SRCS}) - ADD_DEFINITIONS(-DAPPLICATION_NAME=${UTIL}) - ADD_EXECUTABLE(${UTIL} ${UTIL}.cc) - TARGET_LINK_LIBRARIES(${UTIL} ${UTILS_LIBS}) - LIST(APPEND LV_UTILS_TARGETS ${UTIL}) +foreach(UTIL ${LV_UTILS_SRCS}) + add_definitions(-DAPPLICATION_NAME=${UTIL}) + add_executable(${UTIL} ${UTIL}.cc) + target_link_libraries(${UTIL} ${UTILS_LIBS}) + list(APPEND LV_UTILS_TARGETS ${UTIL}) # add libraries with plug-ins and extensions REGISTERED_TARGET_LINK_LIBRARIES(${UTIL}) - IF(APPLE) - INSTALL(TARGETS ${UTIL} + if(APPLE) + install(TARGETS ${UTIL} RUNTIME DESTINATION ${OSX_UTILS_DIR} BUNDLE DESTINATION ${OSX_UTILS_DIR}) - IF(BUILD_WITH_PYTHON) - SET(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) - SET(PYTHON_PATH .libs/Python.framework/${VERSION_PATH}) + if(BUILD_WITH_PYTHON) + set(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) + set(PYTHON_PATH .libs/Python.framework/${VERSION_PATH}) - ADD_CUSTOM_COMMAND(TARGET ${UTIL} + add_custom_command(TARGET ${UTIL} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E make_directory ${PYTHON_PATH} # only need python library @@ -96,13 +96,13 @@ FOREACH(UTIL ${LV_UTILS_SRCS}) COMMAND install_name_tool -change ${SCI_PYTHON_FRAMEWORK}/${VERSION_PATH}/Python @executable_path/${PYTHON_PATH}/Python ${UTIL} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - INSTALL(DIRECTORY ${SEG3D_BINARY_DIR}/.libs + install(DIRECTORY ${SEG3D_BINARY_DIR}/.libs DESTINATION Seg3DUtils PATTERN * PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ GROUP_EXECUTE GROUP_READ WORLD_READ WORLD_EXECUTE) - ENDIF() - ELSEIF(WIN32) - INSTALL(TARGETS ${UTIL} RUNTIME DESTINATION bin) - ENDIF() + endif() + elseif(WIN32) + install(TARGETS ${UTIL} RUNTIME DESTINATION bin) + endif() -ENDFOREACH() +endforeach() diff --git a/src/Main/CMakeLists.txt b/src/Main/CMakeLists.txt index d10c568c8..06b4e569e 100644 --- a/src/Main/CMakeLists.txt +++ b/src/Main/CMakeLists.txt @@ -30,7 +30,7 @@ # Set Seg3D main sources ########################################### -SET(MAIN_SRCS +set(MAIN_SRCS main.cc Seg3DBase.h Seg3DBase.cc @@ -44,34 +44,34 @@ SET(MAIN_SRCS # Build the Seg3D executable ########################################### -IF(NOT BUILD_STANDALONE_LIBRARY) - SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) - ADD_DEFINITIONS(-DAPPLICATION_NAME=${APPLICATION_NAME}) - IF(APPLE) - LIST(APPEND MAIN_SRCS ${APPLICATION_OSX_ICON_FULL_PATH}) - SET_SOURCE_FILES_PROPERTIES(${APPLICATION_OSX_ICON_FULL_PATH} +if(NOT BUILD_STANDALONE_LIBRARY) + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${SEG3D_BINARY_DIR}) + add_definitions(-DAPPLICATION_NAME=${APPLICATION_NAME}) + if(APPLE) + list(APPEND MAIN_SRCS ${APPLICATION_OSX_ICON_FULL_PATH}) + set_source_files_properties(${APPLICATION_OSX_ICON_FULL_PATH} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) - ADD_EXECUTABLE(${APPLICATION_NAME} MACOSX_BUNDLE ${MAIN_SRCS}) - SET_TARGET_PROPERTIES(${APPLICATION_NAME} + add_executable(${APPLICATION_NAME} MACOSX_BUNDLE ${MAIN_SRCS}) + set_target_properties(${APPLICATION_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${SEG3D_SOURCE_DIR}/Resources/info.plist MACOSX_BUNDLE_ICON_FILE ${APPLICATION_OSX_ICON} ) - ELSE() - IF(WIN32) - LIST(APPEND MAIN_SRCS ${APPLICATION_WINDOWS_RC}) - IF(SEG3D_SHOW_CONSOLE) - ADD_EXECUTABLE(${APPLICATION_NAME} ${MAIN_SRCS}) - ELSE() - ADD_EXECUTABLE(${APPLICATION_NAME} WIN32 ${MAIN_SRCS}) - ENDIF() - ELSE() - ADD_EXECUTABLE(${APPLICATION_NAME} ${MAIN_SRCS}) - ENDIF() - ENDIF() + else() + if(WIN32) + list(APPEND MAIN_SRCS ${APPLICATION_WINDOWS_RC}) + if(SEG3D_SHOW_CONSOLE) + add_executable(${APPLICATION_NAME} ${MAIN_SRCS}) + else() + add_executable(${APPLICATION_NAME} WIN32 ${MAIN_SRCS}) + endif() + else() + add_executable(${APPLICATION_NAME} ${MAIN_SRCS}) + endif() + endif() -TARGET_LINK_LIBRARIES(${APPLICATION_NAME} +target_link_libraries(${APPLICATION_NAME} ${SCI_BOOST_LIBRARY} Core_Utils Core_DataBlock @@ -96,26 +96,26 @@ TARGET_LINK_LIBRARIES(${APPLICATION_NAME} ${RESOURCES_LIBRARY} ) -IF(WIN32) - TARGET_LINK_LIBRARIES(${APPLICATION_NAME} ${Qt5Core_QTMAIN_LIBRARIES} ) - SET_TARGET_PROPERTIES(${APPLICATION_NAME} +if(WIN32) + target_link_libraries(${APPLICATION_NAME} ${Qt5Core_QTMAIN_LIBRARIES} ) + set_target_properties(${APPLICATION_NAME} PROPERTIES LINK_FLAGS "/INCREMENTAL:NO") -ENDIF() +endif() -IF(APPLE) - SET_TARGET_PROPERTIES(${APPLICATION_NAME} +if(APPLE) + set_target_properties(${APPLICATION_NAME} PROPERTIES LINK_FLAGS "-framework CoreGraphics" ) -ENDIF() +endif() -IF(BUILD_WITH_PYTHON) - TARGET_LINK_LIBRARIES(${APPLICATION_NAME} +if(BUILD_WITH_PYTHON) + target_link_libraries(${APPLICATION_NAME} Core_Python Application_Socket ) -ENDIF() +endif() # add libraries with plug-ins and extensions REGISTERED_TARGET_LINK_LIBRARIES(${APPLICATION_NAME}) @@ -130,18 +130,18 @@ REGISTERED_TARGET_LINK_LIBRARIES(${APPLICATION_NAME}) # operating system ########################################### -IF(APPLE) +if(APPLE) # set up app bundle - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD # configure Qt libs COMMAND ${MACDEPLOYQT} ${APPLICATION_NAME}.app -verbose=${MACDEPLOYQT_OUTPUT_LEVEL} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - IF(BUILD_WITH_PYTHON) - SET(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) - SET(FRAMEWORK_PATH Frameworks/Python.framework) - SET(PYTHON_PATH ${APPLICATION_NAME}.app/Contents/${FRAMEWORK_PATH}/${VERSION_PATH}) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + if(BUILD_WITH_PYTHON) + set(VERSION_PATH Versions/${SCI_PYTHON_VERSION_SHORT}) + set(FRAMEWORK_PATH Frameworks/Python.framework) + set(PYTHON_PATH ${APPLICATION_NAME}.app/Contents/${FRAMEWORK_PATH}/${VERSION_PATH}) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD # macdeployqt puts frameworks in app/Content/Frameworks COMMAND ${CMAKE_COMMAND} ARGS -E chdir ${APPLICATION_NAME}.app/Contents/Frameworks tar xf ${SCI_PYTHON_FRAMEWORK_ARCHIVE} @@ -151,58 +151,58 @@ IF(APPLE) # TODO: other executables... COMMAND install_name_tool -change ${SCI_PYTHON_FRAMEWORK}/${VERSION_PATH}/Python @executable_path/../Python ${PYTHON_PATH}/bin/python${SCI_PYTHON_VERSION_SHORT} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() -ELSEIF(WIN32) - MESSAGE(STATUS "Setting ${WINDEPLOYQT} Command for path ${SEG3D_BINARY_DIR}/$") - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + endif() +elseif(WIN32) + message(STATUS "Setting ${WINDEPLOYQT} Command for path ${SEG3D_BINARY_DIR}/$") + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD # copy Qt libs COMMAND ${WINDEPLOYQT} ARGS --verbose 5 -core -widgets -gui -opengl --libdir ${SEG3D_BINARY_DIR}/$ ${SEG3D_BINARY_DIR}/$/${APPLICATION_NAME}.exe ) - IF(BUILD_WITH_PYTHON) + if(BUILD_WITH_PYTHON) # TODO: change $ to $ when upgrading to cmake 3 # TODO: copy python dll - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E make_directory $/${PYTHON_MODULE_SEARCH_PATH} COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_MODULE_LIBRARY_PATH} $/${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() -ELSE() - IF(BUILD_WITH_PYTHON) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + endif() +else() + if(BUILD_WITH_PYTHON) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E make_directory ${PYTHON_MODULE_SEARCH_PATH} COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_MODULE_LIBRARY_PATH} ${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - IF(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH AND EXISTS ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH}) - ADD_CUSTOM_COMMAND(TARGET ${APPLICATION_NAME} + if(SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH AND EXISTS ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH}) + add_custom_command(TARGET ${APPLICATION_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E copy_directory ${SCI_PYTHON_64BIT_MODULE_LIBRARY_PATH} ${PYTHON_MODULE_SEARCH_PATH} WORKING_DIRECTORY ${SEG3D_BINARY_DIR}) - ENDIF() - ENDIF() -ENDIF() + endif() + endif() +endif() -IF(APPLE) - INSTALL(TARGETS ${APPLICATION_NAME} +if(APPLE) + install(TARGETS ${APPLICATION_NAME} RUNTIME DESTINATION . BUNDLE DESTINATION . ) -ELSE() - GET_FILENAME_COMPONENT(QTCORENAME ${QtCore_location_Release} NAME_WE) - GET_FILENAME_COMPONENT(QTGUINAME ${QtGui_location_Release} NAME_WE) - GET_FILENAME_COMPONENT(QTOPENGLNAME ${QtOpenGL_location_Release} NAME_WE) - GET_FILENAME_COMPONENT(QTWIDGETSNAME ${QtWidgets_location_Release} NAME_WE) - GET_FILENAME_COMPONENT(QTSVGNAME ${QtSvg_location_Release} NAME_WE) +else() + get_filename_component(QTCORENAME ${QtCore_location_Release} NAME_WE) + get_filename_component(QTGUINAME ${QtGui_location_Release} NAME_WE) + get_filename_component(QTOPENGLNAME ${QtOpenGL_location_Release} NAME_WE) + get_filename_component(QTWIDGETSNAME ${QtWidgets_location_Release} NAME_WE) + get_filename_component(QTSVGNAME ${QtSvg_location_Release} NAME_WE) - IF(WIN32) - INSTALL(TARGETS ${APPLICATION_NAME} + if(WIN32) + install(TARGETS ${APPLICATION_NAME} RUNTIME DESTINATION bin ) - INSTALL(PROGRAMS + install(PROGRAMS ${SEG3D_BINARY_DIR}/$/${QTCORENAME}.dll ${SEG3D_BINARY_DIR}/$/${QTGUINAME}.dll ${SEG3D_BINARY_DIR}/$/${QTOPENGLNAME}.dll @@ -211,68 +211,68 @@ ELSE() DESTINATION bin ) - INSTALL(DIRECTORY + install(DIRECTORY ${SEG3D_BINARY_DIR}/\${CMAKE_INSTALL_CONFIG_NAME}/platforms/ DESTINATION bin/platforms ) - INSTALL(DIRECTORY + install(DIRECTORY ${SEG3D_BINARY_DIR}/\${CMAKE_INSTALL_CONFIG_NAME}/translations/ DESTINATION bin/translations ) - INSTALL(DIRECTORY + install(DIRECTORY ${SEG3D_BINARY_DIR}/\${CMAKE_INSTALL_CONFIG_NAME}/imageformats/ DESTINATION bin/imageformats ) - INSTALL(FILES + install(FILES ${CMAKE_SOURCE_DIR}/ReleaseNotes.txt DESTINATION bin ) - IF(BUILD_WITH_PYTHON) - INSTALL(PROGRAMS + if(BUILD_WITH_PYTHON) + install(PROGRAMS ${SCI_PYTHON_DLL_PATH} DESTINATION bin ) - INSTALL(DIRECTORY + install(DIRECTORY "${SCI_PYTHON_MODULE_LIBRARY_PATH}/" DESTINATION bin/${PYTHON_MODULE_SEARCH_PATH} ) - ENDIF() -# ELSE() -# INSTALL(TARGETS ${APPLICATION_NAME} + endif() +# else() +# install(TARGETS ${APPLICATION_NAME} # RUNTIME DESTINATION bin # ) # -# INSTALL(FILES +# install(FILES # ${QT_QTCORE_LIBRARY_RELEASE}.${QT_VERSION} # ${QT_QTGUI_LIBRARY_RELEASE}.${QT_VERSION} # ${QT_QTOPENGL_LIBRARY_RELEASE}.${QT_VERSION} # DESTINATION lib # ) # -# INSTALL(FILES +# install(FILES # ${CMAKE_SOURCE_DIR}/ReleaseNotes.txt # DESTINATION bin # ) # -# IF(BUILD_WITH_PYTHON) -# INSTALL(FILES +# if(BUILD_WITH_PYTHON) +# install(FILES # ${SCI_PYTHON_DLL_PATH} # DESTINATION bin # ) -# INSTALL(DIRECTORY +# install(DIRECTORY # ${SCI_PYTHON_MODULE_LIBRARY_PATH} # DESTINATION bin/${PYTHON_MODULE_SEARCH_PATH} # ) -# ENDIF() - ENDIF() -ENDIF() -ENDIF() +# endif() + endif() +endif() +endif() -IF(BUILD_STANDALONE_LIBRARY) - ADD_SUBDIRECTORY(Seg3DLib) -ENDIF() +if(BUILD_STANDALONE_LIBRARY) + add_subdirectory(Seg3DLib) +endif() diff --git a/src/Main/Seg3DLib/CMakeLists.txt b/src/Main/Seg3DLib/CMakeLists.txt index c38602b37..8cacb9545 100644 --- a/src/Main/Seg3DLib/CMakeLists.txt +++ b/src/Main/Seg3DLib/CMakeLists.txt @@ -30,7 +30,7 @@ # Set Seg3D main sources ########################################### -SET(SEG3DLIB_MAIN_SRCS +set(SEG3DLIB_MAIN_SRCS Seg3DLib_example_main.cc ) @@ -38,10 +38,10 @@ SET(SEG3DLIB_MAIN_SRCS # Build the Seg3D executable ########################################### -ADD_EXECUTABLE(Seg3DLib ${SEG3DLIB_MAIN_SRCS}) +add_executable(Seg3DLib ${SEG3DLIB_MAIN_SRCS}) -TARGET_LINK_LIBRARIES(Seg3DLib +target_link_libraries(Seg3DLib Seg3D_lib ) -ADD_SUBDIRECTORY(Lib) +add_subdirectory(Lib) diff --git a/src/Main/Seg3DLib/Lib/CMakeLists.txt b/src/Main/Seg3DLib/Lib/CMakeLists.txt index 847df8e76..02e09bd9e 100644 --- a/src/Main/Seg3DLib/Lib/CMakeLists.txt +++ b/src/Main/Seg3DLib/Lib/CMakeLists.txt @@ -30,7 +30,7 @@ # Set Seg3D main sources ########################################### -SET(SEG3DLIB_MAIN_SRCS +set(SEG3DLIB_MAIN_SRCS Seg3D_lib.cc ../../Seg3DGui.cc ../../Seg3DBase.cc @@ -40,9 +40,9 @@ SET(SEG3DLIB_MAIN_SRCS # Build the Seg3D executable ########################################### -ADD_LIBRARY(Seg3D_lib ${SEG3DLIB_MAIN_SRCS}) +add_library(Seg3D_lib ${SEG3DLIB_MAIN_SRCS}) -TARGET_LINK_LIBRARIES(Seg3D_lib +target_link_libraries(Seg3D_lib ${SCI_BOOST_LIBRARY} ${SCI_GLEW_LIBRARY} Core_Utils @@ -90,30 +90,30 @@ REGISTERED_TARGET_LINK_LIBRARIES(Seg3D_lib) # Make Seg3D static lib file ######################################################### -SET(ALL_LIBS_DEST_DIR ${CMAKE_BINARY_DIR}/Main/Seg3DLib/Lib/All_Libs) -SET(DEPENDENCIES_DEST_DIR ${ALL_LIBS_DEST_DIR}/../Release) -STRING(REGEX REPLACE "/" "\\\\" ALL_LIBS_DEST_DIR ${ALL_LIBS_DEST_DIR}) -STRING(REGEX REPLACE "/" "\\\\" DEPENDENCIES_DEST_DIR ${DEPENDENCIES_DEST_DIR}) +set(ALL_LIBS_DEST_DIR ${CMAKE_BINARY_DIR}/Main/Seg3DLib/Lib/All_Libs) +set(DEPENDENCIES_DEST_DIR ${ALL_LIBS_DEST_DIR}/../Release) +string(REGEX REPLACE "/" "\\\\" ALL_LIBS_DEST_DIR ${ALL_LIBS_DEST_DIR}) +string(REGEX REPLACE "/" "\\\\" DEPENDENCIES_DEST_DIR ${DEPENDENCIES_DEST_DIR}) -STRING(REGEX REPLACE "/" "\\\\" SUPERBUILD_LIBS_SOURCE_DIR_CMD ${SUPERBUILD_LIBS_SOURCE_DIR}) +string(REGEX REPLACE "/" "\\\\" SUPERBUILD_LIBS_SOURCE_DIR_CMD ${SUPERBUILD_LIBS_SOURCE_DIR}) -SET(ZLIB_FILE ${SUPERBUILD_LIBS_SOURCE_DIR}/Externals/Build/Zlib_external/Release/z.lib) -STRING(REGEX REPLACE "/" "\\\\" ZLIB_FILE ${ZLIB_FILE}) +set(ZLIB_FILE ${SUPERBUILD_LIBS_SOURCE_DIR}/Externals/Build/Zlib_external/Release/z.lib) +string(REGEX REPLACE "/" "\\\\" ZLIB_FILE ${ZLIB_FILE}) get_filename_component(_vs_bin_path "${CMAKE_LINKER}" DIRECTORY) -SET(BATCH_FILE_PATH \"${_vs_bin_path}/../../../../../../../Common7/Tools/VsDevCmd.bat\") -SET(LIB_TOOL_PATH \"${_vs_bin_path}/lib.exe\") -STRING(REGEX REPLACE "/" "\\\\" _vs_bin_path ${_vs_bin_path}) -STRING(REGEX REPLACE "/" "\\\\" LIB_TOOL_PATH ${LIB_TOOL_PATH}) -STRING(REGEX REPLACE "/" "\\\\" BATCH_FILE_PATH ${BATCH_FILE_PATH}) +set(BATCH_FILE_PATH \"${_vs_bin_path}/../../../../../../../Common7/Tools/VsDevCmd.bat\") +set(LIB_TOOL_PATH \"${_vs_bin_path}/lib.exe\") +string(REGEX REPLACE "/" "\\\\" _vs_bin_path ${_vs_bin_path}) +string(REGEX REPLACE "/" "\\\\" LIB_TOOL_PATH ${LIB_TOOL_PATH}) +string(REGEX REPLACE "/" "\\\\" BATCH_FILE_PATH ${BATCH_FILE_PATH}) -CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/CMake/Scripts/build_full_static_lib.bat.in +configure_file(${CMAKE_SOURCE_DIR}/CMake/Scripts/build_full_static_lib.bat.in ${CMAKE_BINARY_DIR}/build_full_static_lib.bat) -SET(BATCH_COMMAND ${CMAKE_BINARY_DIR}/build_full_static_lib.bat) -STRING(REGEX REPLACE "/" "\\\\" BATCH_COMMAND ${BATCH_COMMAND}) +set(BATCH_COMMAND ${CMAKE_BINARY_DIR}/build_full_static_lib.bat) +string(REGEX REPLACE "/" "\\\\" BATCH_COMMAND ${BATCH_COMMAND}) -ADD_CUSTOM_COMMAND(TARGET Seg3D_lib +add_custom_command(TARGET Seg3D_lib POST_BUILD COMMAND cmd /c ${BATCH_COMMAND} ) diff --git a/src/QtUtils/Bridge/CMakeLists.txt b/src/QtUtils/Bridge/CMakeLists.txt index 9b659ef9b..ea47fa1cb 100644 --- a/src/QtUtils/Bridge/CMakeLists.txt +++ b/src/QtUtils/Bridge/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(QTUTILS_BRIDGE_SRCS +set(QTUTILS_BRIDGE_SRCS QtBridge.cc QtConnection.cc detail/QtGroupBoxConnector.cc @@ -60,7 +60,7 @@ SET(QTUTILS_BRIDGE_SRCS detail/QtTextMatrixConnector.cc ) -SET(QTUTILS_BRIDGE_MOC_SRCS +set(QTUTILS_BRIDGE_MOC_SRCS detail/QtConnectorBase.h detail/QtGroupBoxConnector.h detail/QtComboBoxConnector.h @@ -88,7 +88,7 @@ SET(QTUTILS_BRIDGE_MOC_SRCS detail/QtTextMatrixConnector.h ) -SET(QTUTILS_BRIDGE_NO_MOC_SRCS +set(QTUTILS_BRIDGE_NO_MOC_SRCS QtBridge.h QtConnection.h ) @@ -105,7 +105,7 @@ QT5_WRAP_CPP(QTUTILS_BRIDGE_QT_MOC_SRCS ${QTUTILS_BRIDGE_MOC_SRCS}) # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -118,7 +118,7 @@ CORE_ADD_LIBRARY(QtUtils_Bridge ${QTUTILS_BRIDGE_NO_MOC_SRCS} ) -TARGET_LINK_LIBRARIES(QtUtils_Bridge +target_link_libraries(QtUtils_Bridge Core_Utils Core_Interface QtUtils_Widgets diff --git a/src/QtUtils/CMakeLists.txt b/src/QtUtils/CMakeLists.txt index 1d12e004f..1490f8e32 100644 --- a/src/QtUtils/CMakeLists.txt +++ b/src/QtUtils/CMakeLists.txt @@ -27,6 +27,6 @@ # -ADD_SUBDIRECTORY(Utils) -ADD_SUBDIRECTORY(Widgets) -ADD_SUBDIRECTORY(Bridge) +add_subdirectory(Utils) +add_subdirectory(Widgets) +add_subdirectory(Bridge) diff --git a/src/QtUtils/Utils/CMakeLists.txt b/src/QtUtils/Utils/CMakeLists.txt index 0f5c6da1f..230846542 100644 --- a/src/QtUtils/Utils/CMakeLists.txt +++ b/src/QtUtils/Utils/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(QTUTILS_UTILS_SRCS +set(QTUTILS_UTILS_SRCS QtApplication.cc QtEventHandler.cc QtRenderResources.cc @@ -39,18 +39,18 @@ SET(QTUTILS_UTILS_SRCS QtTransferFunctionWidget.cc ) -SET(QTUTILS_UTILS_MOC_SRCS +set(QTUTILS_UTILS_MOC_SRCS QtEventHandler.h QtRenderWidget.h QtTransferFunctionWidget.h ) -SET(QTUTILS_UTILS_NO_MOC_SRCS +set(QTUTILS_UTILS_NO_MOC_SRCS QtApplication.h QtRenderResources.h ) -SET(QTUTILS_UTILS_UI_SRCS +set(QTUTILS_UTILS_UI_SRCS ) ################################################## @@ -71,7 +71,7 @@ QT5_WRAP_CPP(QTUTILS_UTILS_QT_MOC_SRCS ${QTUTILS_UTILS_MOC_SRCS}) # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -85,7 +85,7 @@ CORE_ADD_LIBRARY(QtUtils_Utils ${QTUTILS_UTILS_NO_MOC_SRCS} ) -TARGET_LINK_LIBRARIES(QtUtils_Utils +target_link_libraries(QtUtils_Utils Core_Utils Core_EventHandler Core_Graphics diff --git a/src/QtUtils/Widgets/CMakeLists.txt b/src/QtUtils/Widgets/CMakeLists.txt index dd688e8af..9e8802026 100644 --- a/src/QtUtils/Widgets/CMakeLists.txt +++ b/src/QtUtils/Widgets/CMakeLists.txt @@ -31,7 +31,7 @@ # Set sources ################################################## -SET(QTUTILS_WIDGETS_SRCS +set(QTUTILS_WIDGETS_SRCS QtColorBarWidget.cc QtColorButton.cc QtCustomDialog.cc @@ -55,7 +55,7 @@ SET(QTUTILS_WIDGETS_SRCS QtTransferFunctionView.cc ) -SET(QTUTILS_WIDGETS_MOC_SRCS +set(QTUTILS_WIDGETS_MOC_SRCS QtColorBarWidget.h QtColorButton.h QtCustomDialog.h @@ -79,10 +79,10 @@ SET(QTUTILS_WIDGETS_MOC_SRCS QtTransferFunctionView.h ) -SET(QTUTILS_WIDGETS_NO_MOC_SRCS +set(QTUTILS_WIDGETS_NO_MOC_SRCS ) -SET(QTUTILS_WIDGETS_UI_SRCS +set(QTUTILS_WIDGETS_UI_SRCS QtColorBarWidget.ui QtHistogramWidget.ui QtSliderDoubleCombo.ui @@ -107,7 +107,7 @@ QT5_WRAP_CPP(QTUTILS_WIDGETS_QT_MOC_SRCS ${QTUTILS_WIDGETS_MOC_SRCS}) # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -121,7 +121,7 @@ CORE_ADD_LIBRARY( QtUtils_Widgets ${QTUTILS_WIDGETS_NO_MOC_SRCS} ) -TARGET_LINK_LIBRARIES( QtUtils_Widgets +target_link_libraries( QtUtils_Widgets Core_Utils Core_Geometry ${Qt5Core_LIBRARIES} diff --git a/src/Resources/CMakeLists.txt b/src/Resources/CMakeLists.txt index b3806237e..84a04f818 100644 --- a/src/Resources/CMakeLists.txt +++ b/src/Resources/CMakeLists.txt @@ -31,21 +31,21 @@ # Set sources ################################################## -SET(RESOURCES_QTRESOURCES_SRCS +set(RESOURCES_QTRESOURCES_SRCS QtResources.cc ) -SET(RESOURCES_QTRESOURCES_MOC_SRCS +set(RESOURCES_QTRESOURCES_MOC_SRCS ) -SET(RESOURCES_QTRESOURCES_NO_MOC_SRCS +set(RESOURCES_QTRESOURCES_NO_MOC_SRCS QtResources.h ) -SET(RESOURCES_QTRESOURCES_UI_SRCS +set(RESOURCES_QTRESOURCES_UI_SRCS ) -SET(RESOURCES_QTRESOURCES_RCC_SRCS +set(RESOURCES_QTRESOURCES_RCC_SRCS QtResources.qrc ) @@ -72,7 +72,7 @@ QT5_WRAP_CPP(RESOURCES_QTRESOURCES_QT_MOC_SRCS ${RESOURCES_QTRESOURCES_MOC_SRCS} # by the moc and ui builder ################################################## -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +include_directories(${CMAKE_CURRENT_BINARY_DIR}) ################################################## # Build the Components library @@ -87,9 +87,9 @@ CORE_ADD_LIBRARY(Resources_QtResources ${RESOURCES_QTRESOURCES_QT_RCC_SRCS} ) -TARGET_LINK_LIBRARIES(Resources_QtResources +target_link_libraries(Resources_QtResources ) target_link_libraries(Resources_QtResources Qt5::Core) -SET(RESOURCES_LIBRARY Resources_QtResources CACHE INTERNAL "Resources library." FORCE) +set(RESOURCES_LIBRARY Resources_QtResources CACHE INTERNAL "Resources library." FORCE) diff --git a/src/Testing/CMakeLists.txt b/src/Testing/CMakeLists.txt index 09629baf9..b70f9ba04 100644 --- a/src/Testing/CMakeLists.txt +++ b/src/Testing/CMakeLists.txt @@ -25,10 +25,10 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET(TEST_OUTPUT_PATH ${CMAKE_BINARY_DIR}/TestOutput CACHE PATH "Location for files written by tests." FORCE) -FILE(MAKE_DIRECTORY ${TEST_OUTPUT_PATH}) +set(TEST_OUTPUT_PATH ${CMAKE_BINARY_DIR}/TestOutput CACHE PATH "Location for files written by tests." FORCE) +file(MAKE_DIRECTORY ${TEST_OUTPUT_PATH}) -ADD_DEFINITIONS(-DTEST_OUTPUT_PATH="${TEST_OUTPUT_PATH}" -DBUILD_TESTING) -ADD_DEFINITIONS(-DTEST_INPUT_PATH="${TEST_INPUT_PATH}" -DBUILD_TESTING) +add_definitions(-DTEST_OUTPUT_PATH="${TEST_OUTPUT_PATH}" -DBUILD_TESTING) +add_definitions(-DTEST_INPUT_PATH="${TEST_INPUT_PATH}" -DBUILD_TESTING) -ADD_SUBDIRECTORY(Utils) +add_subdirectory(Utils) diff --git a/src/Testing/Utils/CMakeLists.txt b/src/Testing/Utils/CMakeLists.txt index eea1e7f12..afa669727 100644 --- a/src/Testing/Utils/CMakeLists.txt +++ b/src/Testing/Utils/CMakeLists.txt @@ -25,7 +25,7 @@ # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER # DEALINGS IN THE SOFTWARE. -SET(TESTING_UTILS_SRCS +set(TESTING_UTILS_SRCS DataBlockSource.h DataBlockSource.cc FilesystemPaths.h @@ -35,7 +35,7 @@ SET(TESTING_UTILS_SRCS CORE_ADD_LIBRARY(Testing_Utils ${TESTING_UTILS_SRCS} ) -TARGET_LINK_LIBRARIES(Testing_Utils +target_link_libraries(Testing_Utils Core_DataBlock Core_Geometry ${SCI_BOOST_LIBRARY} diff --git a/src/ThirdParty/CMakeLists.txt b/src/ThirdParty/CMakeLists.txt index 9f27cb112..0629b1706 100644 --- a/src/ThirdParty/CMakeLists.txt +++ b/src/ThirdParty/CMakeLists.txt @@ -29,31 +29,31 @@ # ADDING TINYXML ################################################## -MESSAGE(STATUS "Configuring tinyxml") -ADD_SUBDIRECTORY(tinyxml) +message(STATUS "Configuring tinyxml") +add_subdirectory(tinyxml) ################################################## # ADDING MATLABIO ################################################## -MESSAGE(STATUS "Configuring MatlabIO") -ADD_SUBDIRECTORY(MatlabIO) +message(STATUS "Configuring MatlabIO") +add_subdirectory(MatlabIO) ################################################## # ADDING MRC2000 ################################################## -MESSAGE(STATUS "Configuring MRC2000") -ADD_SUBDIRECTORY(MRC2000IO) +message(STATUS "Configuring MRC2000") +add_subdirectory(MRC2000IO) ################################################## # ADD GOOGLETEST ################################################## -IF(BUILD_TESTING) - MESSAGE(STATUS "Configuring Google Test") - ADD_SUBDIRECTORY(submodules) -ENDIF() +if(BUILD_TESTING) + message(STATUS "Configuring Google Test") + add_subdirectory(submodules) +endif() diff --git a/src/ThirdParty/MRC2000IO/CMakeLists.txt b/src/ThirdParty/MRC2000IO/CMakeLists.txt index 93ffb3a91..2780f934d 100644 --- a/src/ThirdParty/MRC2000IO/CMakeLists.txt +++ b/src/ThirdParty/MRC2000IO/CMakeLists.txt @@ -29,19 +29,19 @@ ########################################### # MRC2000 IO project -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -PROJECT(MRC2000IO) +cmake_minimum_required(VERSION 2.6) +project(MRC2000IO) -SET(MRC2000IO_SRCS +set(MRC2000IO_SRCS mrcheader.h MRCUtil.h MRCUtil.cc ) -ADD_LIBRARY(MRC2000IO STATIC ${MRC2000IO_SRCS}) +add_library(MRC2000IO STATIC ${MRC2000IO_SRCS}) ########################################### # Set the name of the library -SET(SCI_MRC2000IO_LIBRARY MRC2000IO CACHE INTERNAL "MRC2000IO library name." FORCE) -SET(SCI_MRC2000IO_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "MRC2000IO include directories." FORCE) +set(SCI_MRC2000IO_LIBRARY MRC2000IO CACHE INTERNAL "MRC2000IO library name." FORCE) +set(SCI_MRC2000IO_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "MRC2000IO include directories." FORCE) diff --git a/src/ThirdParty/MatlabIO/CMakeLists.txt b/src/ThirdParty/MatlabIO/CMakeLists.txt index fba502dcf..5eba3883c 100644 --- a/src/ThirdParty/MatlabIO/CMakeLists.txt +++ b/src/ThirdParty/MatlabIO/CMakeLists.txt @@ -31,10 +31,10 @@ ########################################### # ZLib project -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -PROJECT(MATLABIO) +cmake_minimum_required(VERSION 2.6) +project(MATLABIO) -SET(MatlabIO_SRCS +set(MatlabIO_SRCS matfile.h matfilebase.h matfiledefs.h @@ -47,20 +47,20 @@ SET(MatlabIO_SRCS matlabfile.cc ) -FIND_PACKAGE(Zlib CONFIGS ZlibConfig.cmake HINTS ${Zlib_DIR} NO_SYSTEM_ENVIRONMENT_PATH) -IF(NOT Zlib_FOUND) - MESSAGE(FATAL_ERROR "Zlib library not found in ${Zlib_DIR}") -ENDIF() -INCLUDE(${ZLIB_USE_FILE}) +find_package(Zlib CONFIGS ZlibConfig.cmake HINTS ${Zlib_DIR} NO_SYSTEM_ENVIRONMENT_PATH) +if(NOT Zlib_FOUND) + message(FATAL_ERROR "Zlib library not found in ${Zlib_DIR}") +endif() +include(${ZLIB_USE_FILE}) -ADD_LIBRARY(MatlabIO STATIC ${MatlabIO_SRCS}) +add_library(MatlabIO STATIC ${MatlabIO_SRCS}) -TARGET_LINK_LIBRARIES(MatlabIO +target_link_libraries(MatlabIO ${SCI_ZLIB_LIBRARY} ) ########################################### # Set the name of the library -SET(SCI_MATLABIO_LIBRARY MatlabIO CACHE INTERNAL "MatlabIO library name." FORCE) -SET(SCI_MATLABIO_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "MatlabIO include directories." FORCE) +set(SCI_MATLABIO_LIBRARY MatlabIO CACHE INTERNAL "MatlabIO library name." FORCE) +set(SCI_MATLABIO_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "MatlabIO include directories." FORCE) diff --git a/src/ThirdParty/submodules/CMakeLists.txt b/src/ThirdParty/submodules/CMakeLists.txt index db86ef689..8b3fa20c8 100644 --- a/src/ThirdParty/submodules/CMakeLists.txt +++ b/src/ThirdParty/submodules/CMakeLists.txt @@ -26,7 +26,7 @@ # DEALINGS IN THE SOFTWARE. # -MESSAGE(STATUS "Configuring Submodules") +message(STATUS "Configuring Submodules") find_package(Git QUIET) if(GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/../.git") @@ -47,5 +47,5 @@ if(NOT EXISTS "${PROJECT_SOURCE_DIR}/ThirdParty/submodules/googletest/CMakeLists message(FATAL_ERROR "The submodules were not downloaded! GIT_SUBMODULE was turned off or failed. Please update submodules and try again.") endif() -SET(gtest_force_shared_crt ON) -ADD_SUBDIRECTORY(googletest) +set(gtest_force_shared_crt ON) +add_subdirectory(googletest) diff --git a/src/ThirdParty/tinyxml/CMakeLists.txt b/src/ThirdParty/tinyxml/CMakeLists.txt index 1856f8e33..31fb19595 100755 --- a/src/ThirdParty/tinyxml/CMakeLists.txt +++ b/src/ThirdParty/tinyxml/CMakeLists.txt @@ -2,18 +2,18 @@ ########################################### # TinyXML project -CMAKE_MINIMUM_REQUIRED(VERSION 2.6) -PROJECT(TinyXML) +cmake_minimum_required(VERSION 2.6) +project(TinyXML) ########################################### # Test for some required system information. -INCLUDE (CMakeBackwardCompatibilityC) +include (CMakeBackwardCompatibilityC) ########################################### # Source files for zlib -SET(TINYXML_SRCS +set(TINYXML_SRCS tinystr.cpp tinystr.h tinyxml.cpp @@ -25,24 +25,24 @@ SET(TINYXML_SRCS ########################################### # Set the name of the library -SET(SCI_TINYXML_LIBRARY tinyxml CACHE INTERNAL "TinyXML library name." FORCE) +set(SCI_TINYXML_LIBRARY tinyxml CACHE INTERNAL "TinyXML library name." FORCE) ########################################### # Include directory of tinyxml -SET(SCI_TINYXML_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} +set(SCI_TINYXML_INCLUDE ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "TinyXML include directories." FORCE) -INCLUDE_DIRECTORIES(${SCI_TINYXML_INCLUDE}) +include_directories(${SCI_TINYXML_INCLUDE}) ########################################### # Ensure it uses STL -ADD_DEFINITIONS(-DTIXML_USE_STL) +add_definitions(-DTIXML_USE_STL) ########################################### # Add the library -ADD_LIBRARY(${SCI_TINYXML_LIBRARY} STATIC ${TINYXML_SRCS}) +add_library(${SCI_TINYXML_LIBRARY} STATIC ${TINYXML_SRCS}) ########################################### # Set Windows options (Visual Studio) @@ -51,13 +51,13 @@ ADD_LIBRARY(${SCI_TINYXML_LIBRARY} STATIC ${TINYXML_SRCS}) # Options for Visual Studio to limit # the number of warnings. -IF(WIN32) - ADD_DEFINITIONS(-D_BIND_TO_CURRENT_VCLIBS_VERSION=1) +if(WIN32) + add_definitions(-D_BIND_TO_CURRENT_VCLIBS_VERSION=1) - IF(NOT UNIX AND NOT BORLAND AND NOT MINGW) -# SET_TARGET_PROPERTIES(${SCI_TINYXML_LIBRARY} + if(NOT UNIX AND NOT BORLAND AND NOT MINGW) +# set_target_properties(${SCI_TINYXML_LIBRARY} # PROPERTIES # COMPILE_FLAGS "/Ob1 /Gy /GF -W3 -wd4267 -wd4244" # LINK_FLAGS "/DYNAMICBASE:NO") - ENDIF(NOT UNIX AND NOT BORLAND AND NOT MINGW) -ENDIF(WIN32) + endif() +endif()