From 89acf5420d344abf3d927074ff645b5bbf9a1d09 Mon Sep 17 00:00:00 2001 From: Shinya Onogi Date: Wed, 17 May 2017 18:23:21 +0900 Subject: [PATCH 1/2] [GDCM2] Update to 2.6.8 --- ports/gdcm2/CONTROL | 2 +- ports/gdcm2/gdcm-include-dir.patch | 10 ---------- ports/gdcm2/gdcmSystem.patch | 11 +++++++++++ ports/gdcm2/portfile.cmake | 31 ++++++++++++++++++++++++------ 4 files changed, 37 insertions(+), 17 deletions(-) delete mode 100644 ports/gdcm2/gdcm-include-dir.patch create mode 100644 ports/gdcm2/gdcmSystem.patch diff --git a/ports/gdcm2/CONTROL b/ports/gdcm2/CONTROL index b77ad34e606..32b92aca0ec 100644 --- a/ports/gdcm2/CONTROL +++ b/ports/gdcm2/CONTROL @@ -1,4 +1,4 @@ Source: gdcm2 -Version: 2.6.7 +Version: 2.6.8 Description: Grassroots DICOM library Build-Depends: zlib, expat diff --git a/ports/gdcm2/gdcm-include-dir.patch b/ports/gdcm2/gdcm-include-dir.patch deleted file mode 100644 index 34d574d47d9..00000000000 --- a/ports/gdcm2/gdcm-include-dir.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -409,6 +409,7 @@ - if(GDCM_USE_SYSTEM_ZLIB) - # If user say so, then this is a requirement ! - find_package(ZLIB REQUIRED) -+ include_directories(${ZLIB_INCLUDE_DIR}) - set(GDCM_ZLIB_LIBRARIES ${ZLIB_LIBRARIES}) - else() - set(GDCM_ZLIB_LIBRARIES "gdcmzlib") diff --git a/ports/gdcm2/gdcmSystem.patch b/ports/gdcm2/gdcmSystem.patch new file mode 100644 index 00000000000..63722c4f127 --- /dev/null +++ b/ports/gdcm2/gdcmSystem.patch @@ -0,0 +1,11 @@ +--- a/Source/Common/gdcmSystem.cxx ++++ b/Source/Common/gdcmSystem.cxx +@@ -977,7 +977,7 @@ + } + } + // We need to tell the user... +- gdcmWarningMacro( "Could not find Charset from alias: " + alias ); ++ gdcmWarningMacro( std::string("Could not find Charset from alias: ") + alias ); + return NULL; + } + #endif //_WIN32 diff --git a/ports/gdcm2/portfile.cmake b/ports/gdcm2/portfile.cmake index dfe48c69fe6..b97c51cd030 100644 --- a/ports/gdcm2/portfile.cmake +++ b/ports/gdcm2/portfile.cmake @@ -1,26 +1,45 @@ +# Common Ambient Variables: +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# CURRENT_PORT DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} +# PORT = current port name (zlib, etc) +# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) +# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) +# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) +# VCPKG_ROOT_DIR = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# + include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/gdcm-2.6.7) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/GDCM-2.6.8) vcpkg_download_distfile(ARCHIVE - URLS "https://downloads.sourceforge.net/project/gdcm/gdcm 2.x/GDCM 2.6.7/gdcm-2.6.7.tar.gz" - FILENAME "gdcm-2.6.7.tar.gz" - SHA512 2eefad47e4d36038db8d120a91dc0a40816d045e3562c711b6dba7aec5788d4b08a00966bf4c82dc354cb1aa654bff4200afff022a42f2ab58bf7baafe69ff05 + URLS "https://github.com/malaterre/GDCM/archive/v2.6.8.zip" + FILENAME "GDCM-2.6.8.zip" + SHA512 52d3b0e8a3dab3077ee63e08f9ed727cb66fdc511935664b9d446e753905103543dabe9baa0b4c4264317b6f11deaf6869d0f9180df032589422de0dac7fc787 ) + vcpkg_extract_source_archive(${ARCHIVE}) + vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES "${CMAKE_CURRENT_LIST_DIR}/gdcm-include-dir.patch" + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/gdcmSystem.patch ) + + if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) set(GDCM_BUILD_SHARED_LIBS ON) else() set(GDCM_BUILD_SHARED_LIBS OFF) endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - # PREFER_NINJA # Disable this option if project cannot be built with Ninja + PREFER_NINJA # Disable this option if project cannot be built with Ninja OPTIONS -DGDCM_BUILD_DOCBOOK_MANPAGES=OFF -DGDCM_BUILD_SHARED_LIBS=${GDCM_BUILD_SHARED_LIBS} + -DGDCM_INSTALL_INCLUDE_DIR=include -DGDCM_USE_SYSTEM_EXPAT=ON -DGDCM_USE_SYSTEM_ZLIB=ON ${ADDITIONAL_OPTIONS} From 2d922e5037e6fea197b57afd4c2ef63629d5311e Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 17 May 2017 05:36:03 -0700 Subject: [PATCH 2/2] [GDCM2] Use vcpkg_from_github() to simplify portfile --- ports/gdcm2/portfile.cmake | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/ports/gdcm2/portfile.cmake b/ports/gdcm2/portfile.cmake index b97c51cd030..0293ea714d0 100644 --- a/ports/gdcm2/portfile.cmake +++ b/ports/gdcm2/portfile.cmake @@ -11,15 +11,14 @@ # include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/GDCM-2.6.8) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/malaterre/GDCM/archive/v2.6.8.zip" - FILENAME "GDCM-2.6.8.zip" - SHA512 52d3b0e8a3dab3077ee63e08f9ed727cb66fdc511935664b9d446e753905103543dabe9baa0b4c4264317b6f11deaf6869d0f9180df032589422de0dac7fc787 +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO malaterre/GDCM + REF v2.6.8 + SHA512 f3b571f7e00b42b444acd6d696ba1979b6ef83e84744ecddb05ad09d8d2443027145c50cb67c6bc25d6b8e009833b643e575ab988106cb981f529cf455a9b0bc + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) - vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES