diff options
| author | Jonathan Hale <Squareys@googlemail.com> | 2018-02-17 06:25:30 +0100 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2018-02-16 21:25:30 -0800 |
| commit | 0822a28059badbb18f301b414222e869845087fb (patch) | |
| tree | 42d3147cb03188cb11356be1467d468825bf8bca /ports/corrade | |
| parent | 267a98536cefc946a57c627b9e55d7efc5a87b23 (diff) | |
| download | vcpkg-0822a28059badbb18f301b414222e869845087fb.tar.gz vcpkg-0822a28059badbb18f301b414222e869845087fb.zip | |
[corrade,magnum,-plugins,-extras,-integration] Update to latest and support feature packages (#2687)
[corrade,magnum,-plugins,-extras,-integration] Update to latest and support feature packages
Diffstat (limited to 'ports/corrade')
| -rw-r--r-- | ports/corrade/CONTROL | 20 | ||||
| -rw-r--r-- | ports/corrade/portfile.cmake | 70 |
2 files changed, 72 insertions, 18 deletions
diff --git a/ports/corrade/CONTROL b/ports/corrade/CONTROL index a2d73fba8..a886c8639 100644 --- a/ports/corrade/CONTROL +++ b/ports/corrade/CONTROL @@ -1,3 +1,19 @@ Source: corrade -Version: jan2018-1 -Description: C++11/C++14 multiplatform utility library http://mosra.cz/blog/corrade.php +Version: 2018.02-1 +Description: C++11/C++14 multiplatform utility library http://magnum.graphics/corrade/ +Default-Features: interconnect, pluginmanager, testsuite, utility + +Feature: interconnect +Description: Interconnect library +Build-Depends: corrade[utility] + +Feature: pluginmanager +Description: PluginManager library +Build-Depends: corrade[utility] + +Feature: testsuite +Description: TestSuite library +Build-Depends: corrade[utility] + +Feature: utility +Description: Utility library diff --git a/ports/corrade/portfile.cmake b/ports/corrade/portfile.cmake index d08530ef4..85ad3e4b0 100644 --- a/ports/corrade/portfile.cmake +++ b/ports/corrade/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/corrade - REF 2dd926d23f21042838d9244c00ddd1d2f09861ee - SHA512 085062a34c4fecc864d02f38d4d45e22f6de72f3599d67327a783c350e478fe943c5bb3f9cd5544953b55b7ffa78923b087bc0f40a54eb9ed9f5d580970b2f45 + REF v2018.02 + SHA512 8fe4998dc32586386b8fa2030941f3ace6d5e76aadcf7e20a620d276cc9247324e10eb58f2c2c9e84a1a9d9b336e6bdc788f9947c9e507a053d6fd2ffcd3d58e HEAD_REF master ) @@ -13,35 +13,73 @@ else() set(BUILD_STATIC 0) endif() +# Handle features +set(_COMPONENT_FLAGS "") +foreach(_feature IN LISTS ALL_FEATURES) + # Uppercase the feature name and replace "-" with "_" + string(TOUPPER "${_feature}" _FEATURE) + string(REPLACE "-" "_" _FEATURE "${_FEATURE}") + + # Turn "-DWITH_*=" ON or OFF depending on whether the feature + # is in the list. + if(_feature IN_LIST FEATURES) + list(APPEND _COMPONENT_FLAGS "-DWITH_${_FEATURE}=ON") + else() + list(APPEND _COMPONENT_FLAGS "-DWITH_${_FEATURE}=OFF") + endif() +endforeach() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA # Disable this option if project cannot be built with Ninja - OPTIONS -DBUILD_STATIC=${BUILD_STATIC} + OPTIONS + -DBUILD_STATIC=${BUILD_STATIC} + ${_COMPONENT_FLAGS} ) vcpkg_install_cmake() +# Debug includes and share are the same as release file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -# Drop a copy of tools -file(COPY ${CURRENT_PACKAGES_DIR}/bin/corrade-rc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/corrade) +# Install tools +if("utility" IN_LIST FEATURES) + # Drop a copy of tools + file(COPY ${CURRENT_PACKAGES_DIR}/bin/corrade-rc.exe + DESTINATION ${CURRENT_PACKAGES_DIR}/tools/corrade) -# Tools require dlls -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/corrade) + # Tools require dlls + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/corrade) -file(GLOB_RECURSE TO_REMOVE - ${CURRENT_PACKAGES_DIR}/bin/*.exe - ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -file(REMOVE ${TO_REMOVE}) + file(GLOB_RECURSE TO_REMOVE + ${CURRENT_PACKAGES_DIR}/bin/*.exe + ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) + file(REMOVE ${TO_REMOVE}) +endif() -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +# Ensure no empty folders are left behind +if(NOT FEATURES) + # No features, no binaries (only Corrade.h). + file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/bin + ${CURRENT_PACKAGES_DIR}/lib + ${CURRENT_PACKAGES_DIR}/debug) + # debug is completely empty, as include and share + # have already been removed. + +elseif(VCPKG_LIBRARY_LINKAGE STREQUAL static) + # No dlls + file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/bin + ${CURRENT_PACKAGES_DIR}/debug/bin) endif() # Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/corrade) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/corrade/COPYING ${CURRENT_PACKAGES_DIR}/share/corrade/copyright) +file(COPY ${SOURCE_PATH}/COPYING + DESTINATION ${CURRENT_PACKAGES_DIR}/share/corrade) +file(RENAME + ${CURRENT_PACKAGES_DIR}/share/corrade/COPYING + ${CURRENT_PACKAGES_DIR}/share/corrade/copyright) vcpkg_copy_pdbs() |
