Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F820
cpack.patch
Public
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Authored By
zelzer
Apr 12 2012, 7:52 PM
2012-04-12 19:52:13 (UTC+2)
Size
3 KB
Referenced Files
None
Subscribers
None
cpack.patch
View Options
diff --git a/CMakeLists.txt b/CMakeLists.txt
index feac085..b841516 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -730,9 +730,9 @@ include("${CMAKE_CURRENT_SOURCE_DIR}/Applications/AppList.cmake")
# default CPack configuration. Otherwise that apps configuration
# will be used, if present.
-set( activated_apps_no 0 )
-set( use_project_cpack NOT ${MITK_BUILD_ALL_APPS} )
-set( use_default_config ON )
+set(activated_apps_no 0)
+set(use_default_config ON)
+list(LENGTH MITK_APPS app_count)
foreach(mitk_app ${MITK_APPS})
# extract option_name
@@ -741,12 +741,19 @@ foreach(mitk_app ${MITK_APPS})
list(GET target_info_list 1 option_name)
# check if the application is enabled
if(${option_name})
- MATH( EXPR activated_apps_no "${activated_apps_no} + 1" )
+ MATH(EXPR activated_apps_no "${activated_apps_no} + 1")
endif()
endforeach()
-if( NOT activated_apps_no EQUAL 1 )
- set( use_project_cpack OFF )
+if(app_count EQUAL 1 AND (activated_apps_no EQUAL 1 OR MITK_BUILD_ALL_APPS))
+ # Corner case if there is only one app in total
+ set(use_project_cpack ON)
+elseif(activated_apps_no EQUAL 1 AND NOT MITK_BUILD_ALL_APPS)
+ # Only one app is enabled (no "build all" flag set)
+ set(use_project_cpack ON)
+else()
+ # Less or more then one app is enabled
+ set(use_project_cpack OFF)
endif()
foreach(mitk_app ${MITK_APPS})
@@ -756,29 +763,30 @@ foreach(mitk_app ${MITK_APPS})
list(GET target_info_list 0 target_dir)
list(GET target_info_list 1 option_name)
# check if the application is enabled
- if( ${option_name} )
+ if(${option_name})
# check whether application specific configuration files will be used
- if ( use_project_cpack )
- # use files if they exist
- if( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/Applications/${target_dir}/CPackOptions.cmake" )
- include( "${CMAKE_CURRENT_SOURCE_DIR}/Applications/${target_dir}/CPackOptions.cmake" )
+ if(use_project_cpack)
+ # use files if they exist
+ if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/Applications/${target_dir}/CPackOptions.cmake")
+ include("${CMAKE_CURRENT_SOURCE_DIR}/Applications/${target_dir}/CPackOptions.cmake")
endif()
-
- if( EXISTS "${PROJECT_SOURCE_DIR}/Applications/${target_dir}/CPackConfig.cmake.in" )
- configure_file(${PROJECT_SOURCE_DIR}/Applications/${target_dir}/CPackConfig.cmake.in ${PROJECT_BINARY_DIR}/Applications/${target_dir}/CPackConfig.cmake @ONLY)
+
+ if(EXISTS "${PROJECT_SOURCE_DIR}/Applications/${target_dir}/CPackConfig.cmake.in")
set(CPACK_PROJECT_CONFIG_FILE "${PROJECT_BINARY_DIR}/Applications/${target_dir}/CPackConfig.cmake")
- set( use_default_config OFF )
+ configure_file(${PROJECT_SOURCE_DIR}/Applications/${target_dir}/CPackConfig.cmake.in
+ ${CPACK_PROJECT_CONFIG_FILE} @ONLY)
+ set(use_default_config OFF)
endif()
- endif()
- # add link to the list
- list(APPEND CPACK_CREATE_DESKTOP_LINKS "${target_dir}")
+ endif()
+ # add link to the list
+ list(APPEND CPACK_CREATE_DESKTOP_LINKS "${target_dir}")
endif()
endforeach()
# if no project specific configuration file was used, use default
-if( use_default_config )
+if(use_default_config)
configure_file(${MITK_SOURCE_DIR}/MITKCPackOptions.cmake.in
- ${MITK_BINARY_DIR}/MITKCPackOptions.cmake @ONLY)
+ ${MITK_BINARY_DIR}/MITKCPackOptions.cmake @ONLY)
set(CPACK_PROJECT_CONFIG_FILE "${MITK_BINARY_DIR}/MITKCPackOptions.cmake")
endif()
File Metadata
Details
Attached
Mime Type
text/plain
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
792
Default Alt Text
cpack.patch (3 KB)
Attached To
Mode
T11576: Redesign application CPack system
Attached
Detach File
Event Timeline
zelzer
added a comment.
Apr 12 2012, 7:52 PM
2012-04-12 19:52:13 (UTC+2)
Comment Actions
Minor CPack related modfications to CMakeLists.txt
Log In to Comment