diff options
| author | Maxime Gervais <gervais.maxime@gmail.com> | 2019-06-26 06:44:17 +0200 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2019-06-25 21:44:17 -0700 |
| commit | abb7f546defc5c66f0a89523d81f474a05fd8446 (patch) | |
| tree | ef081a361ae6cb5b4a06434b8d88625ae88cd03e | |
| parent | 7401e2ff644779be3a1d0ec90be90282990e704b (diff) | |
| download | vcpkg-abb7f546defc5c66f0a89523d81f474a05fd8446.tar.gz vcpkg-abb7f546defc5c66f0a89523d81f474a05fd8446.zip | |
[libzen] Add new port (#7004)
| -rw-r--r-- | ports/libzen/CONTROL | 3 | ||||
| -rw-r--r-- | ports/libzen/portfile.cmake | 31 | ||||
| -rw-r--r-- | ports/libzen/vcpkg_support_in_cmakelists.patch | 31 |
3 files changed, 65 insertions, 0 deletions
diff --git a/ports/libzen/CONTROL b/ports/libzen/CONTROL new file mode 100644 index 000000000..aca3ff287 --- /dev/null +++ b/ports/libzen/CONTROL @@ -0,0 +1,3 @@ +Source: libzen +Version: 0.4.37 +Description: ZenLib is a C++ utility library for easiest cross-platform development diff --git a/ports/libzen/portfile.cmake b/ports/libzen/portfile.cmake new file mode 100644 index 000000000..52ad55ef6 --- /dev/null +++ b/ports/libzen/portfile.cmake @@ -0,0 +1,31 @@ +include(vcpkg_common_functions) + +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_check_linkage(ONLY_STATIC_LIBRARY) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO MediaArea/ZenLib + REF v0.4.37 + SHA512 857091422d6425aeae59bf5a9dfedd72f5c9b4a18f29acf88842d812f2b470fc8b1b03a245af6b7d08d616dd5596a8905cc138daecee23dadea39ae4215f77d4 + HEAD_REF master + + PATCHES vcpkg_support_in_cmakelists.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH}/Project/CMake + PREFER_NINJA +) + +vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/zenlib TARGET_PATH share/zenlib) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) + +file(INSTALL ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/libzen RENAME copyright) + +vcpkg_test_cmake(PACKAGE_NAME ZenLib MODULE) diff --git a/ports/libzen/vcpkg_support_in_cmakelists.patch b/ports/libzen/vcpkg_support_in_cmakelists.patch new file mode 100644 index 000000000..fb2ce81f7 --- /dev/null +++ b/ports/libzen/vcpkg_support_in_cmakelists.patch @@ -0,0 +1,31 @@ +diff --git a/Project/CMake/CMakeLists.txt b/Project/CMake/CMakeLists.txt +index cb96dc8..8b05a25 100644 +--- a/Project/CMake/CMakeLists.txt ++++ b/Project/CMake/CMakeLists.txt +@@ -33,10 +33,12 @@ set(BIN_INSTALL_DIR "${CMAKE_INSTALL_FULL_BINDIR}" CACHE STRING "Directory where + set(LIB_INSTALL_DIR "${CMAKE_INSTALL_FULL_LIBDIR}" CACHE STRING "Directory where library will install") + set(INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_FULL_INCLUDEDIR}" CACHE PATH "The directory the headers are installed in") + +-if(NOT MSVC) +- set(ZenLib_CONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/zenlib") ++if(VCPKG_TARGET_TRIPLET) ++ set(ZenLib_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/zenlib") ++elseif(MSVC) ++ set(ZenLib_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/cmake") + else() +- set(ZenLib_CONFIG_INSTALL_DIR "cmake") ++ set(ZenLib_CONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/cmake/zenlib") + endif() + + set(ZenLib_HDRS +@@ -136,10 +138,6 @@ set_target_properties(zen PROPERTIES + PUBLIC_HEADER "${ZenLib_HDRS}" + ) + +-if(MSVC) +- install(FILES $<TARGET_PDB_FILE:zen> DESTINATION ${BIN_INSTALL_DIR} CONFIGURATIONS "Debug;RelWithDebInfo" OPTIONAL) +-endif() +- + install(TARGETS zen EXPORT zen-export + PUBLIC_HEADER DESTINATION ${INCLUDE_INSTALL_DIR}/ZenLib + RUNTIME DESTINATION ${BIN_INSTALL_DIR} |
