From 373884761c6f4916530c38bd2fdce811311a259e Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 16 Nov 2018 21:24:03 +0800 Subject: [PATCH 1/4] [stxxl] Add new port --- ports/stxxl/CONTROL | 3 ++ ports/stxxl/portfile.cmake | 66 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 ports/stxxl/CONTROL create mode 100644 ports/stxxl/portfile.cmake diff --git a/ports/stxxl/CONTROL b/ports/stxxl/CONTROL new file mode 100644 index 0000000000..e8541a27d1 --- /dev/null +++ b/ports/stxxl/CONTROL @@ -0,0 +1,3 @@ +Source: stxxl +Version: 2018-11-15 +Description: Standard Template Library for Extra Large Data Sets diff --git a/ports/stxxl/portfile.cmake b/ports/stxxl/portfile.cmake new file mode 100644 index 0000000000..af574d2876 --- /dev/null +++ b/ports/stxxl/portfile.cmake @@ -0,0 +1,66 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("stxxl currently only supports static library linkage.") + set(VCPKG_LIBRARY_LINKAGE static) + set(VCPKG_CRT_LINKAGE static) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO stxxl/stxxl + REF b9e44f0ecba7d7111fbb33f3330c3e53f2b75236 + SHA512 800a8fb95b52b21256cecb848f95645c54851f4dc070e0cd64fb5009f7663c0c962a24ca3f246e54d6d45e81a5c734309268d7ea6f0b0987336a50a3dcb99616 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DBUILD_STATIC_LIBS=ON + -DBUILD_EXAMPLES=OFF + -DBUILD_TESTS=OFF + -DBUILD_EXTRAS=OFF + -DUSE_BOOST=OFF + -DTRY_COMPILE_HEADERS=OFF + -DUSE_STD_THREADS=ON + -DNO_CXX11=OFF + -DUSE_VALGRIND=OFF + -DUSE_MALLOC_COUNT=OFF + -DUSE_GCOV=OFF + -DUSE_TPIE=OFF + OPTIONS_DEBUG + -DSTXXL_DEBUG_ASSERTIONS=ON + OPTIONS_RELEASE + -DSTXXL_DEBUG_ASSERTIONS=OFF +) + +vcpkg_install_cmake() + +if(EXISTS ${CURRENT_PACKAGES_DIR}/cmake) + vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) +endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/${PORT}) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) +endif() + +if(CMAKE_HOST_WIN32) + set(EXECUTABLE_SUFFIX ".exe") +else() + set(EXECUTABLE_SUFFIX "") +endif() + +file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/stxxl_tool${EXECUTABLE_SUFFIX} + DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT}) +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) + +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/include + ${CURRENT_PACKAGES_DIR}/debug/bin + ${CURRENT_PACKAGES_DIR}/debug/share + ${CURRENT_PACKAGES_DIR}/bin) + +# Handle copyright +configure_file(${SOURCE_PATH}/LICENSE_1_0.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) + +vcpkg_copy_pdbs() From b04cb5e35a721ea5a390a0d15c6b643e46c49b33 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Sat, 23 Feb 2019 16:16:50 +0800 Subject: [PATCH 2/4] [stxxl] Fix missing include directory exporting --- ports/stxxl/fix-include-dir.patch | 31 +++++++++++++++++++++++++++++++ ports/stxxl/portfile.cmake | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 ports/stxxl/fix-include-dir.patch diff --git a/ports/stxxl/fix-include-dir.patch b/ports/stxxl/fix-include-dir.patch new file mode 100644 index 0000000000..043252fb69 --- /dev/null +++ b/ports/stxxl/fix-include-dir.patch @@ -0,0 +1,31 @@ +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt +index 06f9e50a..281e1f04 100644 +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -94,6 +94,8 @@ if(BUILD_SHARED_LIBS) + add_library(stxxl SHARED ${LIBSTXXL_SOURCES}) + set_target_properties(stxxl PROPERTIES OUTPUT_NAME "${STXXL_LIBNAME}") + set_target_properties(stxxl PROPERTIES VERSION "${STXXL_VERSION_STRING}") ++ target_include_directories(stxxl PUBLIC $) ++ + install(TARGETS stxxl + EXPORT stxxl-targets + ARCHIVE DESTINATION ${INSTALL_LIB_DIR} +@@ -104,6 +106,8 @@ if(BUILD_SHARED_LIBS) + add_library(stxxl_static STATIC ${LIBSTXXL_SOURCES}) + set_target_properties(stxxl_static PROPERTIES OUTPUT_NAME "${STXXL_LIBNAME}") + set_target_properties(stxxl_static PROPERTIES VERSION "${STXXL_VERSION_STRING}") ++ target_include_directories(stxxl_static PUBLIC $) ++ + install(TARGETS stxxl_static + EXPORT stxxl-targets + ARCHIVE DESTINATION ${INSTALL_LIB_DIR}) +@@ -122,6 +126,8 @@ else() + add_library(stxxl STATIC ${LIBSTXXL_SOURCES}) + set_target_properties(stxxl PROPERTIES OUTPUT_NAME "${STXXL_LIBNAME}") + set_target_properties(stxxl PROPERTIES VERSION "${STXXL_VERSION_STRING}") ++ target_include_directories(stxxl PUBLIC $) ++ + install(TARGETS stxxl + EXPORT stxxl-targets + ARCHIVE DESTINATION ${INSTALL_LIB_DIR} diff --git a/ports/stxxl/portfile.cmake b/ports/stxxl/portfile.cmake index af574d2876..f0f78573da 100644 --- a/ports/stxxl/portfile.cmake +++ b/ports/stxxl/portfile.cmake @@ -12,6 +12,8 @@ vcpkg_from_github( REF b9e44f0ecba7d7111fbb33f3330c3e53f2b75236 SHA512 800a8fb95b52b21256cecb848f95645c54851f4dc070e0cd64fb5009f7663c0c962a24ca3f246e54d6d45e81a5c734309268d7ea6f0b0987336a50a3dcb99616 HEAD_REF master + PATCHES + fix-include-dir.patch ) vcpkg_configure_cmake( From 3830517ec7519b823f5d8c404710889c6bd00278 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Sat, 23 Feb 2019 18:00:09 +0800 Subject: [PATCH 3/4] [stxxl] Fix STXXL_INCLUDE_DIRS --- ports/stxxl/portfile.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ports/stxxl/portfile.cmake b/ports/stxxl/portfile.cmake index f0f78573da..ec3c5531bb 100644 --- a/ports/stxxl/portfile.cmake +++ b/ports/stxxl/portfile.cmake @@ -46,6 +46,12 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/${PORT}) vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT}) endif() +vcpkg_replace_string( + ${CURRENT_PACKAGES_DIR}/share/${PORT}/stxxl-config.cmake + "\${STXXL_CMAKE_DIR}/../include" + "\${STXXL_CMAKE_DIR}/../../include" +) + if(CMAKE_HOST_WIN32) set(EXECUTABLE_SUFFIX ".exe") else() @@ -60,7 +66,8 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/debug/share - ${CURRENT_PACKAGES_DIR}/bin) + ${CURRENT_PACKAGES_DIR}/bin +) # Handle copyright configure_file(${SOURCE_PATH}/LICENSE_1_0.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY) From b8188cbc4ef81fd5f41f4c7601f49930322af941 Mon Sep 17 00:00:00 2001 From: Phil Christensen Date: Wed, 27 Feb 2019 11:59:54 -0800 Subject: [PATCH 4/4] [stxxl] commented patch --- ports/stxxl/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/stxxl/portfile.cmake b/ports/stxxl/portfile.cmake index ec3c5531bb..14d39d38e3 100644 --- a/ports/stxxl/portfile.cmake +++ b/ports/stxxl/portfile.cmake @@ -13,6 +13,7 @@ vcpkg_from_github( SHA512 800a8fb95b52b21256cecb848f95645c54851f4dc070e0cd64fb5009f7663c0c962a24ca3f246e54d6d45e81a5c734309268d7ea6f0b0987336a50a3dcb99616 HEAD_REF master PATCHES + # This patch can be removed when stxxl/stxxl/#95 is accepted fix-include-dir.patch )