Skip to content

Commit

Permalink
External project specific variable can be automatically added to CTKC…
Browse files Browse the repository at this point in the history
…onfig

* Variables like VTK_DIR, Log4Qt_DIR .. will be prefixed by "CTK_" and added
to CTKConfig.cmake
  • Loading branch information
jcfr committed Oct 6, 2011
1 parent 10e5186 commit 1cff2a3
Show file tree
Hide file tree
Showing 17 changed files with 199 additions and 169 deletions.
16 changes: 8 additions & 8 deletions CMakeExternals/CTKData.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,24 +3,24 @@
#
SET(CTKData_DEPENDS)
IF(BUILD_TESTING)

# Sanity checks
IF(DEFINED CTKData_DIR AND NOT EXISTS ${CTKData_DIR})
MESSAGE(FATAL_ERROR "CTKData_DIR variable is defined but corresponds to non-existing directory")
ENDIF()

SET(proj CTKData)
set(proj_DEPENDENCIES)

SET(CTKData_DEPENDS ${proj})

IF(NOT DEFINED CTKData_DIR)

SET(revision_tag cc07f1ff391b7828459c)
IF(${proj}_REVISION_TAG)
SET(revision_tag ${${proj}_REVISION_TAG})
ENDIF()

# MESSAGE(STATUS "Adding project:${proj}")
ExternalProject_Add(${proj}
SOURCE_DIR ${CMAKE_BINARY_DIR}/${proj}
Expand All @@ -39,6 +39,6 @@ IF(BUILD_TESTING)
ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DCTKData_DIR:PATH=${CTKData_DIR})

LIST(APPEND CTK_SUPERBUILD_EP_VARS CTKData_DIR:PATH)
ENDIF()
20 changes: 10 additions & 10 deletions CMakeExternals/DCMTK.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@
SET(DCMTK_DEPENDS)
ctkMacroShouldAddExternalProject(DCMTK_LIBRARIES add_project)
IF(${add_project})

# Sanity checks
IF(DEFINED DCMTK_DIR AND NOT EXISTS ${DCMTK_DIR})
MESSAGE(FATAL_ERROR "DCMTK_DIR variable is defined but corresponds to non-existing directory")
ENDIF()

SET(DCMTK_enabling_variable DCMTK_LIBRARIES)

SET(proj DCMTK)
SET(proj_DEPENDENCIES)

SET(DCMTK_DEPENDS ${proj})

IF(NOT DEFINED DCMTK_DIR)
SET(revision_tag 085525e643cab5ac82)
IF(${proj}_REVISION_TAG)
Expand Down Expand Up @@ -52,7 +52,7 @@ IF(${add_project})
-DDCMTK_WITH_PNG:BOOL=OFF # see github issue #25
-DDCMTK_WITH_TIFF:BOOL=OFF # see github issue #25
-DDCMTK_WITH_XML:BOOL=OFF # see github issue #25
-DDCMTK_FORCE_FPIC_ON_UNIX:BOOL=ON
-DDCMTK_FORCE_FPIC_ON_UNIX:BOOL=ON
${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
#-DBUILD_TESTING:BOOL=OFF # Not used
-DDCMTK_OVERWRITE_WIN32_COMPILER_FLAGS:BOOL=OFF
Expand All @@ -71,15 +71,15 @@ IF(${add_project})
# DEPENDS
# ${proj_DEPENDENCIES}
# )
# Since DCMTK is statically build, there is not need to add its corresponding

# Since DCMTK is statically build, there is not need to add its corresponding
# library output directory to CTK_EXTERNAL_LIBRARY_DIRS

ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DDCMTK_DIR:PATH=${DCMTK_DIR})

LIST(APPEND CTK_SUPERBUILD_EP_VARS DCMTK_DIR:PATH)

SET(${DCMTK_enabling_variable}_INCLUDE_DIRS DCMTK_INCLUDE_DIR)
SET(${DCMTK_enabling_variable}_FIND_PACKAGE_CMD DCMTK)
Expand Down
20 changes: 10 additions & 10 deletions CMakeExternals/ITK.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -10,19 +10,19 @@ IF(${add_project})
ENDIF()

SET(ITK_enabling_variable ITK_LIBRARIES)

SET(proj ITK)
SET(proj_DEPENDENCIES)

SET(ITK_DEPENDS ${proj})

IF(NOT DEFINED ITK_DIR)

SET(revision_tag "v3.20.0")
IF(${proj}_REVISION_TAG)
SET(revision_tag ${${proj}_REVISION_TAG})
ENDIF()

# Set CMake OSX variable to pass down the external project
set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
if(APPLE)
Expand Down Expand Up @@ -62,16 +62,16 @@ IF(${add_project})
${proj_DEPENDENCIES}
)
SET(ITK_DIR ${CMAKE_BINARY_DIR}/${proj}-build)
# Since the link directories associated with ITK is used, it makes sens to

# Since the link directories associated with ITK is used, it makes sens to
# update CTK_EXTERNAL_LIBRARY_DIRS with its associated library output directory
LIST(APPEND CTK_EXTERNAL_LIBRARY_DIRS ${ITK_DIR}/bin)

ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DITK_DIR:PATH=${ITK_DIR})

LIST(APPEND CTK_SUPERBUILD_EP_VARS ITK_DIR:PATH)

SET(${ITK_enabling_variable}_LIBRARY_DIRS ITK_LIBRARY_DIRS)
SET(${ITK_enabling_variable}_INCLUDE_DIRS ITK_INCLUDE_DIRS)
Expand Down
20 changes: 10 additions & 10 deletions CMakeExternals/KWStyle.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@
#
SET(kwstyle_DEPENDS)
IF(CTK_USE_KWSTYLE)

# Sanity checks
IF(DEFINED CTK_KWSTYLE_EXECUTABLE AND NOT EXISTS ${CTK_KWSTYLE_EXECUTABLE})
MESSAGE(FATAL_ERROR "CTK_KWSTYLE_EXECUTABLE variable is defined but corresponds to non-existing executable")
ENDIF()

SET(proj KWStyle-CVSHEAD)
SET(proj_DEPENDENCIES)

SET(kwstyle_DEPENDS ${proj})

IF(NOT DEFINED CTK_KWSTYLE_EXECUTABLE)
# Set CMake OSX variable to pass down the external project
set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
Expand Down Expand Up @@ -42,14 +42,14 @@ IF(CTK_USE_KWSTYLE)
DEPENDS
${proj_DEPENDENCIES}
)
SET(CTK_KWSTYLE_EXECUTABLE ${ep_install_dir}/bin/KWStyle)
# Since KWStyle is an executable, there is not need to add its corresponding
SET(KWSTYLE_EXECUTABLE ${ep_install_dir}/bin/KWStyle)

# Since KWStyle is an executable, there is not need to add its corresponding
# library output directory to CTK_EXTERNAL_LIBRARY_DIRS
ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DCTK_KWSTYLE_EXECUTABLE:FILEPATH=${CTK_KWSTYLE_EXECUTABLE})

LIST(APPEND CTK_SUPERBUILD_EP_VARS KWSTYLE_EXECUTABLE:PATH)

ENDIF()
20 changes: 10 additions & 10 deletions CMakeExternals/Log4Qt.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,19 @@ IF(${add_project})
ENDIF()

SET(Log4Qt_enabling_variable Log4Qt_LIBRARIES)

SET(proj Log4Qt)
SET(proj_DEPENDENCIES)

SET(Log4Qt_DEPENDS ${proj})

IF(NOT DEFINED Log4Qt_DIR)

SET(revision_tag 8d3558b0f636cbf8ff83)
IF(${proj}_REVISION_TAG)
SET(revision_tag ${${proj}_REVISION_TAG})
ENDIF()

# Set CMake OSX variable to pass down the external project
set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
if(APPLE)
Expand Down Expand Up @@ -54,15 +54,15 @@ IF(${add_project})
${proj_DEPENDENCIES}
)
SET(Log4Qt_DIR ${CMAKE_BINARY_DIR}/${proj}-build)
# Since Log4Qt is statically build, there is not need to add its corresponding

# Since Log4Qt is statically build, there is not need to add its corresponding
# library output directory to CTK_EXTERNAL_LIBRARY_DIRS

ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DLog4Qt_DIR:PATH=${Log4Qt_DIR})

LIST(APPEND CTK_SUPERBUILD_EP_VARS Log4Qt_DIR:PATH)

SET(${Log4Qt_enabling_variable}_INCLUDE_DIRS Log4Qt_INCLUDE_DIRS)
SET(${Log4Qt_enabling_variable}_FIND_PACKAGE_CMD Log4Qt)
Expand Down
20 changes: 10 additions & 10 deletions CMakeExternals/OpenIGTLink.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@
SET (OpenIGTLink_DEPENDS)
ctkMacroShouldAddExternalProject(OpenIGTLink_LIBRARIES add_project)
IF(${add_project})

# Sanity checks
IF(DEFINED OpenIGTLink_DIR AND NOT EXISTS ${OpenIGTLink_DIR})
MESSAGE(FATAL_ERROR "OpenIGTLink_DIR variable is defined but corresponds to non-existing directory")
ENDIF()

SET(OpenIGTLink_enabling_variable OpenIGTLink_LIBRARIES)

SET(proj OpenIGTLink)
SET(proj_DEPENDENCIES)

SET(OpenIGTLink_DEPENDS ${proj})

IF(NOT DEFINED OpenIGTLink_DIR)
# Set CMake OSX variable to pass down the external project
set(CMAKE_OSX_EXTERNAL_PROJECT_ARGS)
Expand Down Expand Up @@ -45,15 +45,15 @@ IF(${add_project})
${proj_DEPENDENCIES}
)
SET(OpenIGTLink_DIR ${CMAKE_BINARY_DIR}/${proj}-build)

ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS -DOpenIGTLink_DIR:PATH=${OpenIGTLink_DIR})

LIST(APPEND CTK_SUPERBUILD_EP_VARS OpenIGTLink_DIR:PATH)

SET(${OpenIGTLink_enabling_variable}_LIBRARY_DIRS OpenIGTLink_LIBRARY_DIRS)
SET(${OpenIGTLink_enabling_variable}_INCLUDE_DIRS OpenIGTLink_INCLUDE_DIRS)
SET(${OpenIGTLink_enabling_variable}_FIND_PACKAGE_CMD OpenIGTLink)

ENDIF()
36 changes: 18 additions & 18 deletions CMakeExternals/PythonQt.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,31 @@
SET(PythonQt_DEPENDS)
ctkMacroShouldAddExternalProject(PYTHONQT_LIBRARIES add_project)
IF(${add_project})

# Sanity checks
IF(DEFINED PYTHONQT_INSTALL_DIR AND NOT EXISTS ${PYTHONQT_INSTALL_DIR})
MESSAGE(FATAL_ERROR "PYTHONQT_INSTALL_DIR variable is defined but corresponds to non-existing directory")
ENDIF()

SET(PythonQt_enabling_variable PYTHONQT_LIBRARIES)

SET(proj PythonQt)
SET(proj_DEPENDENCIES)

SET(PythonQt_DEPENDS ${proj})

IF(NOT DEFINED PYTHONQT_INSTALL_DIR)
# MESSAGE(STATUS "Adding project:${proj}")

SET(ep_PythonQt_args)
# Should PythonQt use VTK

# Should PythonQt use VTK
IF(CTK_LIB_Scripting/Python/Core_PYTHONQT_USE_VTK)
LIST(APPEND proj_DEPENDENCIES VTK)
LIST(APPEND ep_PythonQt_args -DVTK_DIR:PATH=${VTK_DIR})
ENDIF()
LIST(APPEND ep_PythonQt_args -DPythonQt_USE_VTK:BOOL=${CTK_LIB_Scripting/Python/Core_PYTHONQT_USE_VTK})

# Enable Qt libraries PythonQt wrapping if required
foreach(qtlib core gui network opengl sql svg uitools webkit xml xmlpatterns)
STRING(TOUPPER ${qtlib} qtlib_uppercase)
Expand All @@ -49,7 +49,7 @@ IF(${add_project})
-DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}
-DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET})
endif()

SET(revision_tag 3171a94e16ba9bfee137)
IF(${proj}_REVISION_TAG)
SET(revision_tag ${${proj}_REVISION_TAG})
Expand Down Expand Up @@ -78,19 +78,19 @@ IF(${add_project})
${proj_DEPENDENCIES}
)
SET(PYTHONQT_INSTALL_DIR ${ep_install_dir})
# Since the full path of PythonQt library is used, there is not need to add

# Since the full path of PythonQt library is used, there is not need to add
# its corresponding library output directory to CTK_EXTERNAL_LIBRARY_DIRS

ELSE()
ctkMacroEmptyExternalProject(${proj} "${proj_DEPENDENCIES}")
ENDIF()
LIST(APPEND CTK_SUPERBUILD_EP_ARGS
-DPYTHONQT_INSTALL_DIR:PATH=${PYTHONQT_INSTALL_DIR}
-DPYTHON_EXECUTABLE:FILEPATH=${PYTHON_EXECUTABLE} # FindPythonInterp expects PYTHON_EXECUTABLE variable to be defined
-DPYTHON_INCLUDE_DIR:PATH=${PYTHON_INCLUDE_DIR} # FindPythonQt expects PYTHON_INCLUDE_DIR variable to be defined
-DPYTHON_LIBRARY:FILEPATH=${PYTHON_LIBRARY} # FindPythonQt expects PYTHON_LIBRARY variable to be defined

LIST(APPEND CTK_SUPERBUILD_EP_VARS
PYTHONQT_INSTALL_DIR:PATH
PYTHON_EXECUTABLE:FILEPATH # FindPythonInterp expects PYTHON_EXECUTABLE variable to be defined
PYTHON_INCLUDE_DIR:PATH # FindPythonQt expects PYTHON_INCLUDE_DIR variable to be defined
PYTHON_LIBRARY:FILEPATH # FindPythonQt expects PYTHON_LIBRARY variable to be defined
)

SET(${PythonQt_enabling_variable}_INCLUDE_DIRS PYTHONQT_INCLUDE_DIR PYTHON_INCLUDE_DIRS)
Expand Down
Loading

0 comments on commit 1cff2a3

Please sign in to comment.