diff --git a/SuperBuild/Packaging/PMacros.cmake b/SuperBuild/Packaging/PMacros.cmake index c393138f88f5551acca191a3d877102d3cf94688..2ab37ca8d7dd06808ead31c9a07378e4146e2924 100644 --- a/SuperBuild/Packaging/PMacros.cmake +++ b/SuperBuild/Packaging/PMacros.cmake @@ -1,4 +1,4 @@ -macro(macro_setup_cmake_sources pkg) +macro(macro_setup_cmake_project pkg) message( "-- Configuring ${pkg} package") #reset it again in macro(macro_create_targets_for_package pkg) @@ -23,6 +23,7 @@ macro(macro_setup_cmake_sources pkg) "cmake_minimum_required(VERSION 2.6) include(CMakeParseArguments) include(CMakeDetermineSystem) + set(CMAKE_BUILD_TYPE Release) set(Monteverdi_SOURCE_DIR \"${Monteverdi_SOURCE_DIR}\") set(Monteverdi_BINARY_DIR \"${Monteverdi_BINARY_DIR}\") set(MONTEVERDI_INSTALL_DIR \"${MONTEVERDI_INSTALL_DIR}\") @@ -37,32 +38,37 @@ macro(macro_setup_cmake_sources pkg) set(PKG_GENERATE_XDK ${PKG_GENERATE_XDK}) ${EXTRA_CACHE_CONFIG} include(\"${SUPERBUILD_SOURCE_DIR}/Packaging/PackageHelper.cmake\") - super_package(STAGE_DIR \"${archive_name}\")" ) + macro_super_package(STAGE_DIR \"${archive_name}\")" + ) + + macro_create_targets_for_package(${pkg}) endmacro() -macro(macro_update_dependencies_list list_variable) - if(WIN32 OR CMAKE_CROSSCOMPILING) - add_custom_target(PACKAGE-CHECK) - else() #Unxies Using SuperBuild +macro(macro_create_targets_for_package pkg) + include(${SUPERBUILD_SOURCE_DIR}/CMake/External_pkgtools.cmake) + + if(WIN32) + add_custom_target(PACKAGE-${pkg}-check + COMMAND ${CMAKE_COMMAND} --build "." --target install + WORKING_DIRECTORY "${Monteverdi_BINARY_DIR}" + ) + else() #Unxies Using SuperBuild if(ENABLE_MONTEVERDI) - add_custom_target(PACKAGE-CHECK - COMMAND ${CMAKE_COMMAND} --build "${SUPERBUILD_BINARY_DIR}/MVD/build" + add_custom_target(PACKAGE-${pkg}-check + COMMAND ${CMAKE_COMMAND} --build "." --target install WORKING_DIRECTORY "${SUPERBUILD_BINARY_DIR}/MVD/build" ) else() - add_custom_target(PACKAGE-CHECK - COMMAND ${CMAKE_COMMAND} --build "${SUPERBUILD_BINARY_DIR}/OTB/build" + add_custom_target(PACKAGE-${pkg}-check + COMMAND ${CMAKE_COMMAND} --build "." --target install WORKING_DIRECTORY "${SUPERBUILD_BINARY_DIR}/OTB/build" ) endif(ENABLE_MONTEVERDI) endif() - list(APPEND ${list_variable} PACKAGE-CHECK) -endmacro() - -macro(macro_create_targets_for_package pkg) + add_dependencies(PACKAGE-${pkg}-check PACKAGE-TOOLS) if("${pkg}" STREQUAL "XDK") set(PACKAGE_PLATFORM_NAME_ "xdk-${PACKAGE_PLATFORM_NAME}") @@ -84,7 +90,7 @@ macro(macro_create_targets_for_package pkg) COMMAND ${CMAKE_COMMAND} "${PACKAGE_PROJECT_DIR}/src" WORKING_DIRECTORY "${PACKAGE_PROJECT_DIR}/build" - DEPENDS ${PACKAGE-configure_DEPENDS} + DEPENDS PACKAGE-${pkg}-check ) #build @@ -97,17 +103,15 @@ macro(macro_create_targets_for_package pkg) #create package # creation of package is different from windows and unix like - if(WIN32 OR CMAKE_CROSSCOMPILING) + if(WIN32) add_custom_target(PACKAGE-${pkg} - ALL DEPENDS COMMAND ${ZIP_EXECUTABLE} - "-r" "${CMAKE_BINARY_DIR}/${archive_name}.zip" "${CMAKE_INSTALL_PREFIX}/${archive_name}" - WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" + "-r" "${CMAKE_BINARY_DIR}/${archive_name}.zip" "${archive_name}" + WORKING_DIRECTORY "${CMAKE_INSTALL_PREFIX}" DEPENDS PACKAGE-${pkg}-build ) else() add_custom_target(PACKAGE-${pkg} - ALL DEPENDS COMMAND ${MAKESELF_SCRIPT} "--target" "${archive_name}" @@ -115,13 +119,13 @@ macro(macro_create_targets_for_package pkg) "${archive_name}.run" "${PACKAGE_LONG_NAME} ${PACKAGE_VERSION_STRING}" "./pkgsetup" - WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" + WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" DEPENDS PACKAGE-${pkg}-build ) endif() set(PACKAGE_EXTENSION .run) - if(WIN32 OR CMAKE_CROSSCOMPILING) + if(WIN32) set(PACKAGE_EXTENSION .zip) endif()