diff options
| author | Stefano Sinigardi <stesinigardi@hotmail.com> | 2019-05-29 01:58:00 +0200 |
|---|---|---|
| committer | Victor Romero <romerosanchezv@gmail.com> | 2019-05-28 16:58:00 -0700 |
| commit | a9303736fdda58cf5ff3ccc969be917580493c91 (patch) | |
| tree | fab5304f58fa8017e982423ee59fbfd386a1dc62 | |
| parent | 3d4b4c02ede7b343f4cd9cdfebbd3124ad834045 (diff) | |
| download | vcpkg-a9303736fdda58cf5ff3ccc969be917580493c91.tar.gz vcpkg-a9303736fdda58cf5ff3ccc969be917580493c91.zip | |
[LibLZMA] automatic configuration (#6000)
* [LibLZMA] add a config-generated by CMake
* bump control files of LibLZMA and dependent ports
* [tiff] use proper liblzma target
[OpenCV] add an explicit dependency on LibLZMA for static linking
* [liblzma] fix header install path
* [LibLZMA] avoid using targets in old symbols
* fixes for windows-static and trying to see if CI is happier with a share/lib folder written in lowercase
* [LibLZMA] use only modern CMake language, remove patch in favour of target public definition
* [lzma] put symbols in cmake cache
* [libxmlpp] remove CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS regression
* [lzma] fix header install path
* [liblzma] install wrapper to force config mode
* [liblzma] remove function check inside cmake config since we know it will pass
* [liblzma] wrapper fix
* [tiff,geotiff] general cleanup and patch fixes
* [libgeotiff] remove debug tools
* [tesseract] modernize
* [tiff] fix also tiff_library symbol
* [pdal,libgeotiff] better library integration
* [tiff] restore using unix i/o on UWP, since it was working... for sure win32 one cannot work
* [tiff] enable lzma also on uwp, since it works and is requested by many dependencies
* [selene] enable build on arm/arm64-windows, which was surely broken before
* [lzma] uniform naming with cmake 3.14
* [podofo] fix regression, it requires openssl which was disabled in dependencies
* [many ports] remove unnecessary mods
* [boost-iostream] chmod
* [openssl] fix regression due to missing architecture
* [podofo] fix regression on uwp due to missing include
* [libpq] explicitly fail on UWP, it should avoid being marked as regression
* [shiva] fix regression on linux
42 files changed, 479 insertions, 525 deletions
diff --git a/ports/libgeotiff/0001-Updates-to-CMake-configuration-to-align-with-other-C.patch b/ports/libgeotiff/0001-Updates-to-CMake-configuration-to-align-with-other-C.patch deleted file mode 100644 index 93476fd2f..000000000 --- a/ports/libgeotiff/0001-Updates-to-CMake-configuration-to-align-with-other-C.patch +++ /dev/null @@ -1,88 +0,0 @@ -From 77b4bf4e649d55b1f1df38494114727f972ec806 Mon Sep 17 00:00:00 2001 -From: Howard Butler <hobu.inc@gmail.com> -Date: Mon, 11 Dec 2017 15:21:56 +0000 -Subject: [PATCH 1/5] Updates to CMake configuration to align with other CMake - norms (BUILD_SHARED_LIBS mostly) - -git-svn-id: https://svn.osgeo.org/metacrs/geotiff/trunk/libgeotiff@2801 4e78687f-474d-0410-85f9-8d5e500ac6b2 -Signed-off-by: Hiroshi Miura <miurahr@linux.com> ---- - CMakeLists.txt | 22 ++-------------------- - cmake/project-config.cmake.in | 5 ++++- - 2 files changed, 6 insertions(+), 21 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 0c70973..55ececf 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -9,7 +9,6 @@ PROJECT(GeoTIFF) - - SET(GEOTIFF_LIB_NAME geotiff) - SET(GEOTIFF_LIBRARY_TARGET geotiff_library) --SET(GEOTIFF_ARCHIVE_TARGET geotiff_archive) - - ############################################################################## - # CMake settings -@@ -416,32 +415,15 @@ FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/epsg_incode_header.h" - - SET(XTIFF_SOURCES libxtiff/xtiff.c) - --#--- --# Static libgeotiff archive --# NOTE: Did not put XTIFF_SOURCES in static lib because libxtiff.a is written out --# currently. --#--- - if (MSVC OR CMAKE_CONFIGURATION_TYPES) - # For multi-config systems and for Visual Studio, the debug versions - # of the libraries have a _d suffix. - set (CMAKE_DEBUG_POSTFIX _d) - endif () - --ADD_LIBRARY(${GEOTIFF_ARCHIVE_TARGET} STATIC -- ${GEOTIFF_LIB_SOURCES} ${GEOTIFF_LIB_CSV_SOURCES}) --SET_TARGET_PROPERTIES(${GEOTIFF_ARCHIVE_TARGET} PROPERTIES -- OUTPUT_NAME ${GEOTIFF_LIB_NAME}) -- --# Shared libgeotiff library --ADD_LIBRARY(${GEOTIFF_LIBRARY_TARGET} SHARED -+ADD_LIBRARY(${GEOTIFF_LIBRARY_TARGET} - ${GEOTIFF_LIB_SOURCES} ${GEOTIFF_LIB_CSV_SOURCES} ${XTIFF_SOURCES}) - --# Windows: --IF(WIN32 AND MSVC) -- SET_TARGET_PROPERTIES(${GEOTIFF_LIBRARY_TARGET} PROPERTIES IMPORT_SUFFIX "_i.lib") --ENDIF(WIN32 AND MSVC) -- -- - # Unix, linux: - IF(UNIX) - SET_TARGET_PROPERTIES( -@@ -478,7 +460,7 @@ TARGET_LINK_LIBRARIES(${GEOTIFF_LIBRARY_TARGET} - # LIBRARY DESTINATION ${GEOTIFF_LIB_DIR} - # ARCHIVE DESTINATION ${GEOTIFF_LIB_DIR}) - --INSTALL( TARGETS ${GEOTIFF_ARCHIVE_TARGET} ${GEOTIFF_LIBRARY_TARGET} -+INSTALL( TARGETS ${GEOTIFF_LIBRARY_TARGET} - EXPORT depends - RUNTIME DESTINATION bin - LIBRARY DESTINATION lib -diff --git a/cmake/project-config.cmake.in b/cmake/project-config.cmake.in -index 6b5499f..dc5b999 100644 ---- a/cmake/project-config.cmake.in -+++ b/cmake/project-config.cmake.in -@@ -32,8 +32,11 @@ set (@PROJECT_NAME@_BINARY_DIRS "${_ROOT}/bin") - - message (STATUS " include directory: \${@PROJECT_NAME@_INCLUDE_DIRS}") - -+if(BUILD_SHARED_LIBS) - set (@PROJECT_NAME@_SHARED_LIBRARIES @GEOTIFF_LIBRARY_TARGET@) --set (@PROJECT_NAME@_STATIC_LIBRARIES @GEOTIFF_ARCHIVE_TARGET@) -+else() -+set (@PROJECT_NAME@_STATIC_LIBRARIES @GEOTIFF_LIBRARY_TARGET@) -+endif() - # Read in the exported definition of the library - include ("${_DIR}/@PROJECT_NAME_LOWER@-depends.cmake") - --- -2.16.1 - diff --git a/ports/libgeotiff/0002-Fix-directory-output.patch b/ports/libgeotiff/0002-Fix-directory-output.patch deleted file mode 100644 index d6b79e54c..000000000 --- a/ports/libgeotiff/0002-Fix-directory-output.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 2b60f0a2c264bf3730e89739384a6d50991b2fc4 Mon Sep 17 00:00:00 2001 -From: Hiroshi Miura <miurahr@linux.com> -Date: Wed, 14 Feb 2018 12:31:53 +0900 -Subject: [PATCH 2/5] Fix directory output - -Signed-off-by: Hiroshi Miura <miurahr@linux.com> ---- - cmake/CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt -index 47a2b00..b41f2fa 100644 ---- a/cmake/CMakeLists.txt -+++ b/cmake/CMakeLists.txt -@@ -10,8 +10,8 @@ if (NOT WIN32) - set (INSTALL_CMAKE_DIR "share/cmake/${PROJECT_NAME}") - set (PROJECT_ROOT_DIR "../../..") - else () -- set (INSTALL_CMAKE_DIR "cmake") -- set (PROJECT_ROOT_DIR "..") -+ set (INSTALL_CMAKE_DIR "share/${PROJECT_NAME}") -+ set (PROJECT_ROOT_DIR "../..") - endif () - - configure_file (project-config.cmake.in project-config.cmake @ONLY) --- -2.16.1 - diff --git a/ports/libgeotiff/0004-Fix-libxtiff-installation.patch b/ports/libgeotiff/0004-Fix-libxtiff-installation.patch deleted file mode 100644 index f7da51ab0..000000000 --- a/ports/libgeotiff/0004-Fix-libxtiff-installation.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 3a7c42f304ec3bb149e31bbd21c9c84048c3047c Mon Sep 17 00:00:00 2001 -From: Hiroshi Miura <miurahr@linux.com> -Date: Thu, 15 Feb 2018 13:11:01 +0900 -Subject: [PATCH 4/5] Fix libxtiff installation - -Signed-off-by: Hiroshi Miura <miurahr@linux.com> ---- - CMakeLists.txt | 9 ++------- - libxtiff/CMakeLists.txt | 9 --------- - 2 files changed, 2 insertions(+), 16 deletions(-) - delete mode 100644 libxtiff/CMakeLists.txt - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1e2fe3d..c52cfb4 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -354,11 +354,6 @@ INSTALL(FILES ${GEOTIFF_MAN_PAGES} DESTINATION share/man/man1) - # INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION ${GEOTIFF_INCLUDE_DIR}) - INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION include) - --############################################################################### --# Build libxtiff library -- --ADD_SUBDIRECTORY(libxtiff) -- - ############################################################################### - # Build libgeotiff library - -@@ -406,6 +401,8 @@ FOREACH(epsg_csv_file ${GEOTIFF_CSV_DATA}) - ENDIF() - ENDFOREACH() - -+SET(XTIFF_SOURCES libxtiff/xtiff.c) -+ - SET(EPSG_INCODE_EXPLANATION - "This file is autogenerated by CMake, based on the INCODE_EPSG_* options specified during configure.\n - Choosing an EPSG CSV file for inclusion into code will run csv/csv2c.py on the file and include the\n -@@ -414,8 +411,6 @@ STRING(REPLACE ";" "\n" EPSG_INCLUDEFILE_POINTER_STRING "${epsg_includefile_poin - FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/epsg_incode_header.h" - "/* ${EPSG_INCODE_EXPLANATION} */\n${epsg_includefile_externconst}; \n\n/* Pointers to csv data included in code */\nstatic const datafile_t files[] = {\n${EPSG_INCLUDEFILE_POINTER_STRING}\n { NULL, NULL }};") - --SET(XTIFF_SOURCES libxtiff/xtiff.c) -- - if (MSVC OR CMAKE_CONFIGURATION_TYPES) - # For multi-config systems and for Visual Studio, the debug versions - # of the libraries have a _d suffix. -diff --git a/libxtiff/CMakeLists.txt b/libxtiff/CMakeLists.txt -deleted file mode 100644 -index a0bbb96..0000000 ---- a/libxtiff/CMakeLists.txt -+++ /dev/null -@@ -1,9 +0,0 @@ --############################################################################### --# --# CMake configuration file to build libxtiff library --# --# Author: Mateusz Loskot <mateusz@loskot.net> --# --############################################################################### -- --ADD_LIBRARY(xtiff STATIC xtiff.c) --- -2.16.1 - diff --git a/ports/libgeotiff/0005-Control-shared-library-build-with-option.patch b/ports/libgeotiff/0005-Control-shared-library-build-with-option.patch deleted file mode 100644 index ed9a4e88a..000000000 --- a/ports/libgeotiff/0005-Control-shared-library-build-with-option.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 84e537f3bd0db74b22ffebb3746d292daf4f4e59 Mon Sep 17 00:00:00 2001 -From: Hiroshi Miura <miurahr@linux.com> -Date: Thu, 15 Feb 2018 13:17:14 +0900 -Subject: [PATCH 5/5] Control shared library build with option - -Signed-off-by: Hiroshi Miura <miurahr@linux.com> ---- - CMakeLists.txt | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index c52cfb4..5890203 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -5,14 +5,15 @@ - # Author: Mateusz Loskot <mateusz@loskot.net> - # - ############################################################################### -+CMAKE_MINIMUM_REQUIRED(VERSION 3.1.0) - PROJECT(GeoTIFF) - - SET(GEOTIFF_LIB_NAME geotiff) - SET(GEOTIFF_LIBRARY_TARGET geotiff_library) -+option(BUILD_SHARE_LIBS "Set ON to build shared library." ON) - - ############################################################################## - # CMake settings --CMAKE_MINIMUM_REQUIRED(VERSION 2.6.0) - - SET(CMAKE_COLOR_MAKEFILE ON) - --- -2.16.1 - diff --git a/ports/libgeotiff/0006-Fix-utility-link-error.patch b/ports/libgeotiff/0006-Fix-utility-link-error.patch deleted file mode 100644 index ef0963b26..000000000 --- a/ports/libgeotiff/0006-Fix-utility-link-error.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 2625b4a85b6cacf9b6ede3cf30af16eb795044e9 Mon Sep 17 00:00:00 2001 -From: Hiroshi Miura <miurahr@linux.com> -Date: Sat, 24 Feb 2018 08:36:31 +0900 -Subject: [PATCH 6/6] Fix utility link error - -Signed-off-by: Hiroshi Miura <miurahr@linux.com> ---- - bin/CMakeLists.txt | 7 +------ - 1 file changed, 1 insertion(+), 6 deletions(-) - -diff --git a/bin/CMakeLists.txt b/bin/CMakeLists.txt -index 583ae36..6c6cc21 100644 ---- a/bin/CMakeLists.txt -+++ b/bin/CMakeLists.txt -@@ -6,10 +6,6 @@ - # - ############################################################################### - --INCLUDE_DIRECTORIES( -- . -- ${CMAKE_SOURCE_DIR}) -- - IF(WIN32 AND MSVC) - SET(GETOPT_SOURCE getopt.c) - ENDIF() -@@ -22,12 +18,11 @@ MESSAGE(STATUS "Adding GeoTIFF utilities to build") - - FOREACH(utility ${GEOTIFF_UTILITIES}) - ADD_EXECUTABLE(${utility} ${utility}.c ${GETOPT_SOURCE}) -- TARGET_LINK_LIBRARIES(${utility} xtiff ${GEOTIFF_LIBRARY_TARGET}) -+ TARGET_LINK_LIBRARIES(${utility} ${GEOTIFF_LIBRARY_TARGET}) - ENDFOREACH() - - ADD_EXECUTABLE(geotifcp geotifcp.c ${GETOPT_SOURCE}) - TARGET_LINK_LIBRARIES(geotifcp -- xtiff - ${GEOTIFF_LIBRARY_TARGET} - ${JPEG_LIBRARIES} - ${ZLIB_LIBRARIES}) --- -2.16.1 - diff --git a/ports/libgeotiff/CONTROL b/ports/libgeotiff/CONTROL index 34d804005..28cbee52d 100644 --- a/ports/libgeotiff/CONTROL +++ b/ports/libgeotiff/CONTROL @@ -1,4 +1,4 @@ Source: libgeotiff -Version: 1.4.2-8 -Description: Libgeotiff is an open source library normally hosted on top of ​libtiff for reading, and writing GeoTIFF information tags. +Version: 1.4.2-9 +Description: Libgeotiff is an open source library normally hosted on top of libtiff for reading, and writing GeoTIFF information tags. Build-Depends: tiff, proj4, zlib, libjpeg-turbo diff --git a/ports/libgeotiff/cmakelists.patch b/ports/libgeotiff/cmakelists.patch new file mode 100644 index 000000000..689c6df5b --- /dev/null +++ b/ports/libgeotiff/cmakelists.patch @@ -0,0 +1,124 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0c70973..617978c 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -190,22 +190,6 @@ IF(WITH_TIFF) + endif () + + IF(TIFF_FOUND) +- # Confirm required API is available +- INCLUDE(CheckFunctionExists) +- SET(CMAKE_REQUIRED_LIBRARIES ${TIFF_LIBRARIES}) +- +- CHECK_FUNCTION_EXISTS(TIFFOpen HAVE_TIFFOPEN) +- IF(NOT HAVE_TIFFOPEN) +- SET(TIFF_FOUND) # ReSET to NOT found for TIFF library +- MESSAGE(FATAL_ERROR "Failed to link with libtiff - TIFFOpen function not found") +- ENDIF() +- +- CHECK_FUNCTION_EXISTS(TIFFMergeFieldInfo HAVE_TIFFMERGEFIELDINFO) +- IF(NOT HAVE_TIFFMERGEFIELDINFO) +- SET(TIFF_FOUND) # ReSET to NOT found for TIFF library +- MESSAGE(FATAL_ERROR "Failed to link with libtiff - TIFFMergeFieldInfo function not found. libtiff 3.6.0 Beta or later required. Please upgrade or use an older version of libgeotiff") +- ENDIF() +- + INCLUDE_DIRECTORIES(${TIFF_INCLUDE_DIR}) + ADD_DEFINITIONS(-DHAVE_TIFF=1) + ENDIF(TIFF_FOUND) +@@ -354,11 +338,6 @@ INSTALL(FILES ${GEOTIFF_MAN_PAGES} DESTINATION share/man/man1) + # INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION ${GEOTIFF_INCLUDE_DIR}) + INSTALL(FILES ${GEOTIFF_LIB_HEADERS} DESTINATION include) + +-############################################################################### +-# Build libxtiff library +- +-ADD_SUBDIRECTORY(libxtiff) +- + ############################################################################### + # Build libgeotiff library + +@@ -427,13 +406,9 @@ if (MSVC OR CMAKE_CONFIGURATION_TYPES) + set (CMAKE_DEBUG_POSTFIX _d) + endif () + +-ADD_LIBRARY(${GEOTIFF_ARCHIVE_TARGET} STATIC +- ${GEOTIFF_LIB_SOURCES} ${GEOTIFF_LIB_CSV_SOURCES}) +-SET_TARGET_PROPERTIES(${GEOTIFF_ARCHIVE_TARGET} PROPERTIES +- OUTPUT_NAME ${GEOTIFF_LIB_NAME}) + + # Shared libgeotiff library +-ADD_LIBRARY(${GEOTIFF_LIBRARY_TARGET} SHARED ++ADD_LIBRARY(${GEOTIFF_LIBRARY_TARGET} + ${GEOTIFF_LIB_SOURCES} ${GEOTIFF_LIB_CSV_SOURCES} ${XTIFF_SOURCES}) + + # Windows: +@@ -478,7 +453,7 @@ TARGET_LINK_LIBRARIES(${GEOTIFF_LIBRARY_TARGET} + # LIBRARY DESTINATION ${GEOTIFF_LIB_DIR} + # ARCHIVE DESTINATION ${GEOTIFF_LIB_DIR}) + +-INSTALL( TARGETS ${GEOTIFF_ARCHIVE_TARGET} ${GEOTIFF_LIBRARY_TARGET} ++INSTALL( TARGETS ${GEOTIFF_LIBRARY_TARGET} + EXPORT depends + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib +diff --git a/bin/CMakeLists.txt b/bin/CMakeLists.txt +index 7b12341..b6b1d0c 100644 +--- a/bin/CMakeLists.txt ++++ b/bin/CMakeLists.txt +@@ -6,9 +6,6 @@ + # + ############################################################################### + +-INCLUDE_DIRECTORIES( +- . +- ${CMAKE_SOURCE_DIR}) + + IF(WIN32 AND MSVC) + SET(GETOPT_SOURCE getopt.c) +@@ -22,12 +19,11 @@ MESSAGE(STATUS "Adding GeoTIFF utilities to build") + + FOREACH(utility ${GEOTIFF_UTILITIES}) + ADD_EXECUTABLE(${utility} ${utility}.c ${GETOPT_SOURCE}) +- TARGET_LINK_LIBRARIES(${utility} xtiff ${GEOTIFF_LIBRARY_TARGET}) ++ TARGET_LINK_LIBRARIES(${utility} ${GEOTIFF_LIBRARY_TARGET}) + ENDFOREACH() + + ADD_EXECUTABLE(geotifcp geotifcp.c ${GETOPT_SOURCE}) + TARGET_LINK_LIBRARIES(geotifcp +- xtiff + ${GEOTIFF_LIBRARY_TARGET} + ${JPEG_LIBRARIES} + ${ZLIB_LIBRARIES}) +diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt +index 47a2b00..ffbd004 100644 +--- a/cmake/CMakeLists.txt ++++ b/cmake/CMakeLists.txt +@@ -6,13 +6,8 @@ + # ${INSTALL_CMAKE_DIR} and @PROJECT_ROOT_DIR@ is the relative + # path to the root from there. (Note that the whole install tree can + # be relocated.) +-if (NOT WIN32) +- set (INSTALL_CMAKE_DIR "share/cmake/${PROJECT_NAME}") +- set (PROJECT_ROOT_DIR "../../..") +-else () +- set (INSTALL_CMAKE_DIR "cmake") +- set (PROJECT_ROOT_DIR "..") +-endif () ++ set (INSTALL_CMAKE_DIR "share/${PROJECT_NAME}") ++ set (PROJECT_ROOT_DIR "../..") + + configure_file (project-config.cmake.in project-config.cmake @ONLY) + configure_file (project-config-version.cmake.in +diff --git a/cmake/project-config.cmake.in b/cmake/project-config.cmake.in +index 6b5499f..e4ddd11 100644 +--- a/cmake/project-config.cmake.in ++++ b/cmake/project-config.cmake.in +@@ -33,7 +33,7 @@ set (@PROJECT_NAME@_BINARY_DIRS "${_ROOT}/bin") + message (STATUS " include directory: \${@PROJECT_NAME@_INCLUDE_DIRS}") + + set (@PROJECT_NAME@_SHARED_LIBRARIES @GEOTIFF_LIBRARY_TARGET@) +-set (@PROJECT_NAME@_STATIC_LIBRARIES @GEOTIFF_ARCHIVE_TARGET@) ++set (@PROJECT_NAME@_STATIC_LIBRARIES @GEOTIFF_LIBRARY_TARGET@) + # Read in the exported definition of the library + include ("${_DIR}/@PROJECT_NAME_LOWER@-depends.cmake") + diff --git a/ports/libgeotiff/portfile.cmake b/ports/libgeotiff/portfile.cmake index bb64e7ac2..1e4bb3370 100644 --- a/ports/libgeotiff/portfile.cmake +++ b/ports/libgeotiff/portfile.cmake @@ -1,12 +1,11 @@ include(vcpkg_common_functions) set(LIBGEOTIFF_VERSION 1.4.2) -set(LIBGEOTIFF_HASH 059c6e05eb0c47f17b102c7217a2e1636e76d622c4d1bdcf0bd89fb3505f3130bffa881e21c73cfd2ca0d6863b81322f85784658ba3539b53b63c3a8f38d1deb) vcpkg_download_distfile(ARCHIVE URLS "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-${LIBGEOTIFF_VERSION}.tar.gz" FILENAME "libgeotiff-${LIBGEOTIFF_VERSION}.tar.gz" - SHA512 ${LIBGEOTIFF_HASH} + SHA512 059c6e05eb0c47f17b102c7217a2e1636e76d622c4d1bdcf0bd89fb3505f3130bffa881e21c73cfd2ca0d6863b81322f85784658ba3539b53b63c3a8f38d1deb ) vcpkg_extract_source_archive_ex( @@ -14,11 +13,7 @@ vcpkg_extract_source_archive_ex( ARCHIVE ${ARCHIVE} REF ${LIBGEOTIFF_VERSION} PATCHES - 0001-Updates-to-CMake-configuration-to-align-with-other-C.patch - 0002-Fix-directory-output.patch - 0004-Fix-libxtiff-installation.patch - 0005-Control-shared-library-build-with-option.patch - 0006-Fix-utility-link-error.patch + cmakelists.patch geotiff-config.patch ) @@ -33,42 +28,40 @@ vcpkg_configure_cmake( -DWITH_PROJ4=ON -DWITH_ZLIB=ON -DWITH_JPEG=ON - OPTIONS_RELEASE -DWITH_UTILITIES=ON - OPTIONS_DEBUG -DWITH_UTILITIES=OFF + -DWITH_UTILITIES=ON ) vcpkg_install_cmake() -if(WIN32) - vcpkg_fixup_cmake_targets(CONFIG_PATH share/GeoTIFF) - file(RENAME ${CURRENT_PACKAGES_DIR}/share/libgeotiff ${CURRENT_PACKAGES_DIR}/share/geotiff) # move configs to expected location -else() - vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/GeoTIFF) - file(RENAME ${CURRENT_PACKAGES_DIR}/share/libgeotiff ${CURRENT_PACKAGES_DIR}/share/geotiff) # move configs to expected location -endif() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) -configure_file(${SOURCE_PATH}/COPYING ${CURRENT_PACKAGES_DIR}/share/libgeotiff/copyright COPYONLY) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/doc) if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") file(GLOB GEOTIFF_UTILS ${CURRENT_PACKAGES_DIR}/bin/*) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) else() file(GLOB GEOTIFF_UTILS ${CURRENT_PACKAGES_DIR}/bin/*.exe) + file(GLOB GEOTIFF_UTILS_DEBUG ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) + file(REMOVE ${GEOTIFF_UTILS_DEBUG}) endif() file(COPY ${GEOTIFF_UTILS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/libgeotiff) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/libgeotiff) +file(REMOVE ${GEOTIFF_UTILS}) -file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) -if(EXES) - file(REMOVE ${EXES}) -endif() - -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static" OR (VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/bin) endif() -# Move and cleanup doc files -file(RENAME ${CURRENT_PACKAGES_DIR}/doc ${CURRENT_PACKAGES_DIR}/share/libgeotiff/doc) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/doc) - vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/GeoTIFF) +file(INSTALL ${CURRENT_PACKAGES_DIR}/share/libgeotiff/geotiff-config-version.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/geotiff) +file(INSTALL ${CURRENT_PACKAGES_DIR}/share/libgeotiff/geotiff-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/geotiff) +file(INSTALL ${CURRENT_PACKAGES_DIR}/share/libgeotiff/geotiff-depends-release.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/geotiff) +file(INSTALL ${CURRENT_PACKAGES_DIR}/share/libgeotiff/geotiff-depends-debug.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/geotiff) +file(INSTALL ${CURRENT_PACKAGES_DIR}/share/libgeotiff/geotiff-depends.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/geotiff) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libgeotiff RENAME copyright) + +file(RENAME ${CURRENT_PACKAGES_DIR}/doc ${CURRENT_PACKAGES_DIR}/share/libgeotiff/doc) diff --git a/ports/liblzma/CMakeLists.txt b/ports/liblzma/CMakeLists.txt index 6b84c004a..a9927c2b6 100644 --- a/ports/liblzma/CMakeLists.txt +++ b/ports/liblzma/CMakeLists.txt @@ -1,22 +1,15 @@ cmake_minimum_required(VERSION 3.0) -project(liblzma) +project(LibLZMA) -add_definitions(-DHAVE_CONFIG_H) -if(BUILD_SHARED_LIBS) - add_definitions(-DLIBLZMADLL_EXPORTS) - add_definitions(-DDLL_EXPORT) -endif() - -if(NOT MSVC) - add_definitions(-DHAVE_VISIBILITY=1) -endif() +set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed") +set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed") +set(INSTALL_INCLUDE_DIR "include" CACHE PATH "Path where headers will be installed") +set(INSTALL_CMAKE_DIR "share/liblzma" CACHE PATH "Path where cmake configs will be installed") +set(CMAKE_DEBUG_POSTFIX "d" CACHE STRING "Append a suffix to debug libraries") -if(WIN32) - include_directories(windows/vs2017) -else() - include_directories(${CMAKE_CURRENT_BINARY_DIR}) +if(NOT WIN32) file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/config.h - """ + " #define TUKLIB_SYMBOL_PREFIX lzma_ #define ASSUME_RAM 128 #define HAVE_CHECK_CRC32 1 @@ -58,19 +51,10 @@ else() #define PACKAGE_NAME \"XZ Utils\" #define PACKAGE_URL \"http://tukaani.org/xz/\" #define SIZEOF_SIZE_T (sizeof(size_t)) -""") +") endif() -include_directories(src/liblzma/common) -include_directories(src/common) -include_directories(src/liblzma/api) -include_directories(src/liblzma/check) -include_directories(src/liblzma/delta) -include_directories(src/liblzma/lz) -include_directories(src/liblzma/lzma) -include_directories(src/liblzma/rangecoder) -include_directories(src/liblzma/simple) -add_library(lzma +add_library(LibLZMA src/common/tuklib_cpucores.c src/common/tuklib_physmem.c src/liblzma/check/check.c @@ -143,14 +127,56 @@ add_library(lzma src/liblzma/simple/simple_decoder.c src/liblzma/simple/simple_encoder.c src/liblzma/simple/sparc.c - src/liblzma/simple/x86.c) + src/liblzma/simple/x86.c +) -install(TARGETS lzma - RUNTIME DESTINATION bin - ARCHIVE DESTINATION lib - LIBRARY DESTINATION lib) +if(MSVC) + target_include_directories(LibLZMA PRIVATE $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/windows/vs2017>) +else() + target_compile_definitions(LibLZMA PRIVATE -DHAVE_VISIBILITY=1) +endif() -if(NOT LIBLZMA_SKIP_HEADERS) - install(DIRECTORY ${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma DESTINATION include) - install(FILES ${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma.h DESTINATION include) +if(BUILD_SHARED_LIBS) + target_compile_definitions(LibLZMA PRIVATE -DDLL_EXPORT) + target_compile_definitions(LibLZMA PUBLIC -DLIBLZMADLL_EXPORTS) +else() + target_compile_definitions(LibLZMA PUBLIC -DLZMA_API_STATIC) endif() +target_compile_definitions(LibLZMA PUBLIC -DHAVE_CONFIG_H) + +target_include_directories(LibLZMA PUBLIC + $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/common> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/common> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/check> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/delta> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/lz> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/rangecoder> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/simple> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/lzma> + $<BUILD_INTERFACE:${CMAKE_CURRENT_LIST_DIR}/src/liblzma/api> + $<INSTALL_INTERFACE:${INSTALL_INCLUDE_DIR}> +) + +set_target_properties(LibLZMA PROPERTIES OUTPUT_NAME "lzma") + +set_target_properties(LibLZMA PROPERTIES PUBLIC_HEADER +"${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/base.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/bcj.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/block.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/check.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/container.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/delta.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/filter.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/hardware.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/index.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/index_hash.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/lzma12.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/stream_flags.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/version.h;${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma/vli.h" +) + +install(TARGETS LibLZMA EXPORT LibLZMATargets + RUNTIME DESTINATION "${INSTALL_BIN_DIR}" + ARCHIVE DESTINATION "${INSTALL_LIB_DIR}" + LIBRARY DESTINATION "${INSTALL_LIB_DIR}" + PUBLIC_HEADER DESTINATION "${INSTALL_INCLUDE_DIR}/lzma" +) + +install(FILES "${PROJECT_SOURCE_DIR}/src/liblzma/api/lzma.h" + DESTINATION "${INSTALL_INCLUDE_DIR}" +) + +install(EXPORT LibLZMATargets + FILE LibLZMAConfig.cmake + NAMESPACE LibLZMA:: + DESTINATION "${INSTALL_CMAKE_DIR}" +) diff --git a/ports/liblzma/CONTROL b/ports/liblzma/CONTROL index c94576a3f..1a2ee8147 100644 --- a/ports/liblzma/CONTROL +++ b/ports/liblzma/CONTROL @@ -1,3 +1,3 @@ -Source: liblzma
-Version: 5.2.4-1
-Description: Compression library with an API similar to that of zlib.
+Source: liblzma +Version: 5.2.4-2 +Description: Compression library with an API similar to that of zlib. diff --git a/ports/liblzma/auto-define-lzma-api-static.patch b/ports/liblzma/auto-define-lzma-api-static.patch deleted file mode 100644 index d897e2457..000000000 --- a/ports/liblzma/auto-define-lzma-api-static.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/lzma.h b/lzma.h -index ce675a7..ac0fc98 100644 ---- a/lzma.h -+++ b/lzma.h -@@ -187,6 +187,9 @@ - * need to worry about LZMA_API_STATIC. Also the calling convention is - * omitted on Cygwin but not on MinGW. - */ -+ -+#define LZMA_API_STATIC -+ - #ifndef LZMA_API_IMPORT - # if !defined(LZMA_API_STATIC) && defined(_WIN32) && !defined(__GNUC__) - # define LZMA_API_IMPORT __declspec(dllimport) diff --git a/ports/liblzma/portfile.cmake b/ports/liblzma/portfile.cmake index 5534b10e4..e7260309b 100644 --- a/ports/liblzma/portfile.cmake +++ b/ports/liblzma/portfile.cmake @@ -15,21 +15,67 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS_DEBUG - -DLIBLZMA_SKIP_HEADERS=ON ) vcpkg_install_cmake() vcpkg_copy_pdbs() +vcpkg_fixup_cmake_targets() -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - vcpkg_apply_patches( - SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/auto-define-lzma-api-static.patch) +file(APPEND ${CURRENT_PACKAGES_DIR}/share/liblzma/LibLZMAConfig.cmake +" +include(\${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake) +find_path(LibLZMA_INCLUDE_DIR + NAMES lzma.h + PATH_SUFFIXES lzma +) +if(NOT LibLZMA_LIBRARY) + find_library(LibLZMA_LIBRARY_RELEASE NAMES lzma LZMA LibLZMA PATHS \${_IMPORT_PREFIX}/lib/) + find_library(LibLZMA_LIBRARY_DEBUG NAMES lzmad LZMAd LibLZMAd PATHS \${_IMPORT_PREFIX}/debug/lib/) + select_library_configurations(LibLZMA) +endif() +set(LibLZMA_INCLUDE_DIRS \${LibLZMA_INCLUDE_DIR} CACHE PATH \"\") +set(LibLZMA_LIBRARIES \${LibLZMA_LIBRARY} CACHE STRING \"\") +set(LZMA_INCLUDE_DIR \${LibLZMA_INCLUDE_DIR} CACHE PATH \"\") +set(LZMA_LIBRARY \${LibLZMA_LIBRARY} CACHE STRING \"\") +set(LZMA_INCLUDE_DIRS \${LibLZMA_INCLUDE_DIR} CACHE PATH \"\") +set(LZMA_LIBRARIES \${LibLZMA_LIBRARY} CACHE STRING \"\") +set(LIBLZMA_INCLUDE_DIRS \${LibLZMA_INCLUDE_DIR} CACHE PATH \"\") +set(LIBLZMA_LIBRARIES \${LibLZMA_LIBRARY} CACHE STRING \"\") +set(LIBLZMA_INCLUDE_DIR \${LibLZMA_INCLUDE_DIR} CACHE PATH \"\") +set(LIBLZMA_LIBRARY \${LibLZMA_LIBRARY} CACHE STRING \"\") + +if(LIBLZMA_INCLUDE_DIR AND EXISTS \"\${LIBLZMA_INCLUDE_DIR}/lzma/version.h\") + file(STRINGS \"\${LIBLZMA_INCLUDE_DIR}/lzma/version.h\" LIBLZMA_HEADER_CONTENTS REGEX \"#define LZMA_VERSION_[A-Z]+ [0-9]+\") + + string(REGEX REPLACE \".*#define LZMA_VERSION_MAJOR ([0-9]+).*\" \"\\\\1\" LIBLZMA_VERSION_MAJOR \"\${LIBLZMA_HEADER_CONTENTS}\") + string(REGEX REPLACE \".*#define LZMA_VERSION_MINOR ([0-9]+).*\" \"\\\\1\" LIBLZMA_VERSION_MINOR \"\${LIBLZMA_HEADER_CONTENTS}\") + string(REGEX REPLACE \".*#define LZMA_VERSION_PATCH ([0-9]+).*\" \"\\\\1\" LIBLZMA_VERSION_PATCH \"\${LIBLZMA_HEADER_CONTENTS}\") + + set(LIBLZMA_VERSION_STRING \"\${LIBLZMA_VERSION_MAJOR}.\${LIBLZMA_VERSION_MINOR}.\${LIBLZMA_VERSION_PATCH}\") + unset(LIBLZMA_HEADER_CONTENTS) endif() -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblzma) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/liblzma/COPYING ${CURRENT_PACKAGES_DIR}/share/liblzma/copyright) +## We're using new code known now as XZ, even library still been called LZMA +## it can be found in http://tukaani.org/xz/ +## Avoid using old codebase +#if (LIBLZMA_LIBRARY) +# include(\${CMAKE_ROOT}/Modules/CheckLibraryExists.cmake) +# CHECK_LIBRARY_EXISTS(\${LibLZMA_LIBRARY_RELEASE} lzma_auto_decoder \"\" LIBLZMA_HAS_AUTO_DECODER) +# CHECK_LIBRARY_EXISTS(\${LibLZMA_LIBRARY_RELEASE} lzma_easy_encoder \"\" LIBLZMA_HAS_EASY_ENCODER) +# CHECK_LIBRARY_EXISTS(\${LibLZMA_LIBRARY_RELEASE} lzma_lzma_preset \"\" LIBLZMA_HAS_LZMA_PRESET) +#endif () + +set(LibLZMA_FOUND TRUE CACHE BOOL \"\") +set(LZMA_FOUND TRUE CACHE BOOL \"\") +set(LIBLZMA_FOUND TRUE CACHE BOOL \"\") +") + +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(APPEND ${CURRENT_PACKAGES_DIR}/share/liblzma/LibLZMAConfig.cmake "add_definitions(-DLZMA_API_STATIC)") +endif() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblzma) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblzma) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblzma RENAME copyright) diff --git a/ports/liblzma/usage b/ports/liblzma/usage deleted file mode 100644 index 6f5a281a5..000000000 --- a/ports/liblzma/usage +++ /dev/null @@ -1,5 +0,0 @@ -The package liblzma is compatible with built-in CMake targets:
-
- find_package(LibLZMA REQUIRED)
- target_include_directories(main PRIVATE ${LIBLZMA_INCLUDE_DIRS})
- target_link_libraries(main PRIVATE ${LIBLZMA_LIBRARIES})
diff --git a/ports/liblzma/vcpkg-cmake-wrapper.cmake b/ports/liblzma/vcpkg-cmake-wrapper.cmake new file mode 100644 index 000000000..b7572d736 --- /dev/null +++ b/ports/liblzma/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,4 @@ +list(REMOVE_ITEM ARGS "NO_MODULE") +list(REMOVE_ITEM ARGS "CONFIG") +list(REMOVE_ITEM ARGS "MODULE") +_find_package(${ARGS} CONFIG) diff --git a/ports/libpq/portfile.cmake b/ports/libpq/portfile.cmake index 7b23aed32..5dd4e197c 100644 --- a/ports/libpq/portfile.cmake +++ b/ports/libpq/portfile.cmake @@ -1,11 +1,19 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/postgresql-9.6.3) + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(FATAL_ERROR "${PORT} currently only supports being built for desktop") +endif() + vcpkg_download_distfile(ARCHIVE URLS "https://ftp.postgresql.org/pub/source/v9.6.3/postgresql-9.6.3.tar.bz2" FILENAME "postgresql-9.6.3.tar.bz2" SHA512 97141972e154e6b0e756ee6a4e20f26e82022a9fd4c56305314a3a5567a79ece638e4ac3d513b46138737ae6bd27a098f30013a94767db151181aac9c01290a1 ) -vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} +) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/libspatialite/CONTROL b/ports/libspatialite/CONTROL index bb19a0605..c535d33e1 100644 --- a/ports/libspatialite/CONTROL +++ b/ports/libspatialite/CONTROL @@ -1,5 +1,5 @@ Source: libspatialite -Version: 4.3.0a-2 +Version: 4.3.0a-3 Description: SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities. Build-Depends: libxml2, sqlite3, geos, proj4, zlib, freexl, libiconv diff --git a/ports/libspatialite/portfile.cmake b/ports/libspatialite/portfile.cmake index 59a1499f4..b73733ff2 100644 --- a/ports/libspatialite/portfile.cmake +++ b/ports/libspatialite/portfile.cmake @@ -33,10 +33,10 @@ else() set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libgeos_c.lib ${CURRENT_INSTALLED_DIR}/lib/libgeos.lib") set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libgeos_cd.lib ${CURRENT_INSTALLED_DIR}/debug/lib/libgeosd.lib") set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/lib/lzma.lib ws2_32.lib") - set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/debug/lib/lzma.lib ws2_32.lib") + set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/debug/lib/lzmad.lib ws2_32.lib") endif() -set(LIBS_ALL_DBG +set(LIBS_ALL_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libiconv.lib \ ${CURRENT_INSTALLED_DIR}/debug/lib/libcharset.lib \ ${CURRENT_INSTALLED_DIR}/debug/lib/sqlite3.lib \ @@ -46,7 +46,7 @@ set(LIBS_ALL_DBG ${GEOS_LIBS_DBG} \ ${CURRENT_INSTALLED_DIR}/debug/lib/projd.lib" ) -set(LIBS_ALL_REL +set(LIBS_ALL_REL "${CURRENT_INSTALLED_DIR}/lib/libiconv.lib \ ${CURRENT_INSTALLED_DIR}/lib/libcharset.lib \ ${CURRENT_INSTALLED_DIR}/lib/sqlite3.lib \ diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index 8b32750b7..3b5145535 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -1,5 +1,5 @@ Source: opencv -Version: 3.4.3-7 +Version: 3.4.3-8 Build-Depends: zlib Description: computer vision library Default-Features: opengl, jpeg, png, tiff, eigen, flann diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index 3df6f6b50..a3d8c894b 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -394,6 +394,14 @@ string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_VCPKG_INSTALLED_DIR}/\${VCPKG_TARGET_TRIPLET}" OPENCV_MODULES "${OPENCV_MODULES}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}") +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(READ ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake OPENCV_MODULES) + string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)" + "set(CMAKE_IMPORT_FILE_VERSION 1) + find_package(TIFF REQUIRED)" OPENCV_MODULES "${OPENCV_MODULES}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/opencv/OpenCVModules.cmake "${OPENCV_MODULES}") +endif() + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) diff --git a/ports/openssl-uwp/portfile.cmake b/ports/openssl-uwp/portfile.cmake index ba8d97e3d..8efd7bd20 100644 --- a/ports/openssl-uwp/portfile.cmake +++ b/ports/openssl-uwp/portfile.cmake @@ -8,6 +8,8 @@ endif() if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") set(UWP_PLATFORM "arm") +elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") + set(UWP_PLATFORM "arm64") elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(UWP_PLATFORM "x64") elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") diff --git a/ports/pdal/FindGeoTIFF.cmake b/ports/pdal/FindGeoTIFF.cmake deleted file mode 100644 index 51a5fb2d8..000000000 --- a/ports/pdal/FindGeoTIFF.cmake +++ /dev/null @@ -1,13 +0,0 @@ -find_path(GEOTIFF_INCLUDE_DIR geotiff.h)
-
-find_library(GEOTIFF_LIBRARY_DEBUG NAMES geotiff_d)
-find_library(GEOTIFF_LIBRARY_RELEASE NAMES geotiff)
-
-include(SelectLibraryConfigurations)
-select_library_configurations(GEOTIFF)
-
-include(FindPackageHandleStandardArgs)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(
- GEOTIFF DEFAULT_MSG
- GEOTIFF_LIBRARY GEOTIFF_INCLUDE_DIR
-)
diff --git a/ports/pdal/portfile.cmake b/ports/pdal/portfile.cmake index 6ab78024f..2ceaf99ab 100644 --- a/ports/pdal/portfile.cmake +++ b/ports/pdal/portfile.cmake @@ -21,14 +21,10 @@ vcpkg_extract_source_archive_ex( ) file(REMOVE "${SOURCE_PATH}/pdal/gitsha.cpp") - -# Deploy custom CMake modules to enforce expected dependencies look-up -foreach(_module IN ITEMS FindGDAL FindGEOS FindGeoTIFF) - file(REMOVE "${SOURCE_PATH}/cmake/modules/${_module}.cmake") - file(COPY ${CMAKE_CURRENT_LIST_DIR}/${_module}.cmake - DESTINATION ${SOURCE_PATH}/cmake/modules/ - ) -endforeach() +file(REMOVE "${SOURCE_PATH}/cmake/modules/FindGDAL.cmake") +file(REMOVE "${SOURCE_PATH}/cmake/modules/FindGEOS.cmake") +file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindGDAL.cmake DESTINATION ${SOURCE_PATH}/cmake/modules/) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindGEOS.cmake DESTINATION ${SOURCE_PATH}/cmake/modules/) # NOTE: CMake native BUILD_SHARED_LIBS option will be set by vcpkg_configure_cmake # TODO: Remove this as soon as PDAL switches to use BUILD_SHARED_LIBS diff --git a/ports/podofo/unique_ptr.patch b/ports/podofo/0001-unique_ptr.patch index 5c70e8471..5c70e8471 100644 --- a/ports/podofo/unique_ptr.patch +++ b/ports/podofo/0001-unique_ptr.patch diff --git a/ports/podofo/002-HAVE_UNISTD_H.patch b/ports/podofo/0002-HAVE_UNISTD_H.patch index 6aed4b279..6aed4b279 100644 --- a/ports/podofo/002-HAVE_UNISTD_H.patch +++ b/ports/podofo/0002-HAVE_UNISTD_H.patch diff --git a/ports/podofo/0003-uwp_fix.patch b/ports/podofo/0003-uwp_fix.patch new file mode 100644 index 000000000..91872d7eb --- /dev/null +++ b/ports/podofo/0003-uwp_fix.patch @@ -0,0 +1,15 @@ +diff --git a/src/base/PdfCompilerCompat.h b/src/base/PdfCompilerCompat.h +index 706875f..8efb349 100644 +--- a/src/base/PdfCompilerCompat.h ++++ b/src/base/PdfCompilerCompat.h +@@ -113,6 +113,10 @@ + #define NOMINMAX + #endif + ++#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY == WINAPI_FAMILY_APP) ++#include <combaseapi.h> ++#endif ++ + // Integer types - fixed size types guaranteed to work anywhere + // because we detect the right underlying type name to use with + // CMake. Use typedefs rather than macros for saner error messages diff --git a/ports/podofo/CONTROL b/ports/podofo/CONTROL index 6664b043c..083248c3c 100644 --- a/ports/podofo/CONTROL +++ b/ports/podofo/CONTROL @@ -1,7 +1,7 @@ Source: podofo -Version: 0.9.6-6 +Version: 0.9.6-7 Description: PoDoFo is a library to work with the PDF file format -Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openssl (!windows&!uwp), freetype +Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openssl, freetype Feature: fontconfig Description: Enable font manager support on Unix platforms. diff --git a/ports/podofo/portfile.cmake b/ports/podofo/portfile.cmake index 335c307f2..759b6dbe1 100644 --- a/ports/podofo/portfile.cmake +++ b/ports/podofo/portfile.cmake @@ -6,13 +6,19 @@ vcpkg_download_distfile(ARCHIVE FILENAME "podofo-${PODOFO_VERSION}.tar.gz" SHA512 35c1a457758768bdadc93632385f6b9214824fead279f1b85420443fb2135837cefca9ced476df0d47066f060e9150e12fcd40f60fa1606b177da433feb20130 ) + +if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(ADDITIONAL_PATCH "0003-uwp_fix.patch") +endif() + vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} REF ${PODOFO_VERSION} - PATCHES - "unique_ptr.patch" - "002-HAVE_UNISTD_H.patch" + PATCHES + 0001-unique_ptr.patch + 0002-HAVE_UNISTD_H.patch + ${ADDITIONAL_PATCH} ) set(PODOFO_NO_FONTMANAGER ON) diff --git a/ports/proj4/0001-CMake-add-detection-of-recent-visual-studio-versions.patch b/ports/proj4/0001-CMake-add-detection-of-recent-visual-studio-versions.patch index 9be5438aa..2f1f9ca29 100644 --- a/ports/proj4/0001-CMake-add-detection-of-recent-visual-studio-versions.patch +++ b/ports/proj4/0001-CMake-add-detection-of-recent-visual-studio-versions.patch @@ -15,8 +15,8 @@ index 294a50b..c7fb6bf 100644 if(MSVC_VERSION EQUAL 1800) set(PROJ_COMPILER_NAME "msvc-12.0") #Visual Studio 2013 endif() -+ if(MSVC_VERSION EQUAL 1900) -+ set(PROJ_COMPILER_NAME "msvc-14.0") #Visual Studio 2015 ++ if(MSVC_VERSION GREATER_EQUAL 1900) ++ set(PROJ_COMPILER_NAME "msvc-14.0") #Visual Studio 2015/2017/2019 + endif() endif(MSVC) diff --git a/ports/proj4/portfile.cmake b/ports/proj4/portfile.cmake index f7532a967..64974e4ba 100644 --- a/ports/proj4/portfile.cmake +++ b/ports/proj4/portfile.cmake @@ -1,29 +1,27 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/proj-4.9.3) + +set(PROJ4_VERSION 4.9.3) + vcpkg_download_distfile(ARCHIVE - URLS "http://download.osgeo.org/proj/proj-4.9.3.zip" - FILENAME "proj-4.9.3.zip" + URLS "http://download.osgeo.org/proj/proj-${PROJ4_VERSION}.zip" + FILENAME "proj-${PROJ4_VERSION}.zip" SHA512 c9703008cd1f75fe1239b180158e560b9b88ae2ffd900b72923c716908eb86d1abbc4230647af5e3131f8c34481bdc66b03826d669620161ffcfbe67801cb631 ) -vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH}/ +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF ${PROJ4_VERSION} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/0001-CMake-add-detection-of-recent-visual-studio-versions.patch - ${CMAKE_CURRENT_LIST_DIR}/0002-CMake-fix-error-by-only-setting-properties-for-targe.patch - ${CMAKE_CURRENT_LIST_DIR}/0003-CMake-configurable-cmake-config-install-location.patch + 0001-CMake-add-detection-of-recent-visual-studio-versions.patch + 0002-CMake-fix-error-by-only-setting-properties-for-targe.patch + 0003-CMake-configurable-cmake-config-install-location.patch ) -if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - list(APPEND CMAKE_OPTIONS "-DBUILD_LIBPROJ_SHARED=YES") -else() - list(APPEND CMAKE_OPTIONS "-DBUILD_LIBPROJ_SHARED=NO") -endif() - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS ${CMAKE_OPTIONS} + OPTIONS + -DBUILD_LIBPROJ_SHARED=${BUILD_SHARED_LIBS} -DPROJ_LIB_SUBDIR=lib -DPROJ_INCLUDE_SUBDIR=include -DPROJ_DATA_SUBDIR=share/proj4 @@ -36,7 +34,6 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - vcpkg_fixup_cmake_targets(CONFIG_PATH share/proj4) # Rename library and adapt cmake configuration @@ -68,11 +65,7 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore endif() endif() -# Remove duplicate headers installed from debug build file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# Remove data installed from debug build file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -# Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/proj4) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/proj4/COPYING ${CURRENT_PACKAGES_DIR}/share/proj4/copyright) +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/proj4 RENAME copyright) diff --git a/ports/selene/disable_x86_intrinsics_on_arm.patch b/ports/selene/disable_x86_intrinsics_on_arm.patch new file mode 100644 index 000000000..79e38c57c --- /dev/null +++ b/ports/selene/disable_x86_intrinsics_on_arm.patch @@ -0,0 +1,13 @@ +diff --git a/selene/base/Bitcount.hpp b/selene/base/Bitcount.hpp +index a4d69e4..709f650 100755 +--- a/selene/base/Bitcount.hpp ++++ b/selene/base/Bitcount.hpp +@@ -69,7 +69,7 @@ inline std::size_t bit_count(unsigned long long x) + return static_cast<std::size_t>(__builtin_popcountll(x)); + } + +-#elif defined(_MSC_VER) ++#elif defined(_MSC_VER) && !defined(_M_ARM) && !defined(_M_ARM64) + + /** \brief Performs a bit count on the supplied value. + * diff --git a/ports/selene/portfile.cmake b/ports/selene/portfile.cmake index 97f05a38b..f45c84460 100644 --- a/ports/selene/portfile.cmake +++ b/ports/selene/portfile.cmake @@ -8,6 +8,8 @@ vcpkg_from_github( REF v0.3.1
SHA512 7bc57ebe9e2442da2716eb5c1af11f8d610b0b09fe96e3122d1028575732b6045a987c499bbf7de53003edd627b8809d86c80ea4975fc2264a1c61d5891a46c3
HEAD_REF master
+ PATCHES
+ disable_x86_intrinsics_on_arm.patch
)
vcpkg_configure_cmake(
diff --git a/ports/shiva/CONTROL b/ports/shiva/CONTROL index 9a92c1518..0ce81203d 100644 --- a/ports/shiva/CONTROL +++ b/ports/shiva/CONTROL @@ -1,4 +1,4 @@ Source: shiva
-Version: 1.0-1
+Version: 1.0-2
Description: Modern C++ Game Engine
-Build-Depends: boost-stacktrace, boost-filesystem, boost-dll, entt, lua (windows), luafilesystem (windows), sol2, pybind11, spdlog, nlohmann-json
+Build-Depends: boost-stacktrace, boost-filesystem, boost-dll, entt, lua, luafilesystem (windows), sol2, pybind11, spdlog, nlohmann-json
diff --git a/ports/tesseract/CONTROL b/ports/tesseract/CONTROL index 7bb758e6e..11ff55640 100644 --- a/ports/tesseract/CONTROL +++ b/ports/tesseract/CONTROL @@ -1,4 +1,4 @@ Source: tesseract
-Version: 4.0.0-1
+Version: 4.0.0-2
Description: An OCR Engine that was developed at HP Labs between 1985 and 1995... and now at Google.
Build-Depends: leptonica, icu
diff --git a/ports/tesseract/portfile.cmake b/ports/tesseract/portfile.cmake index 0c783d78e..d21908b19 100644 --- a/ports/tesseract/portfile.cmake +++ b/ports/tesseract/portfile.cmake @@ -8,14 +8,10 @@ vcpkg_from_github( REF 4.0.0 SHA512 69e57d4ba1fc43d212fd0fff69a2b5d48a3b37cfee7054fdc083cbb7e04d92317609a32e457229661d70ce8d9b16c9d25e81bfc3861db660dd2c8f292202d447 HEAD_REF master -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/use-vcpkg-icu.patch - ${CMAKE_CURRENT_LIST_DIR}/ws2-32.patch - ${CMAKE_CURRENT_LIST_DIR}/leptonica.patch + use-vcpkg-icu.patch + ws2-32.patch + leptonica.patch ) # The built-in cmake FindICU is better diff --git a/ports/tiff/CONTROL b/ports/tiff/CONTROL index 97d25bcdb..d4ad07dc6 100644 --- a/ports/tiff/CONTROL +++ b/ports/tiff/CONTROL @@ -1,4 +1,4 @@ Source: tiff -Version: 4.0.10-4 -Build-Depends: zlib, libjpeg-turbo, liblzma (!uwp) +Version: 4.0.10-6 +Build-Depends: zlib, libjpeg-turbo, liblzma Description: A library that supports the manipulation of TIFF image files diff --git a/ports/tiff/add-component-options.patch b/ports/tiff/add-component-options.patch deleted file mode 100644 index 513d37ad6..000000000 --- a/ports/tiff/add-component-options.patch +++ /dev/null @@ -1,43 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 1ee6fd4..439e26a 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -122,6 +122,11 @@ set(EXTRA_DIST - nmake.opt - libtiff-4.pc.in) - -+option(BUILD_TOOLS "Build tool executables" ON) -+option(BUILD_DOCS "Build docs" ON) -+option(BUILD_CONTRIB "Build contributed executables" ON) -+option(BUILD_TESTS "Build tests" ON) -+ - # These are annoyingly verbose, produce false positives or don't work - # nicely with all supported compiler versions, so are disabled unless - # explicitly enabled. -@@ -719,12 +724,20 @@ endif() - # Process subdirectories - add_subdirectory(port) - add_subdirectory(libtiff) --add_subdirectory(tools) --add_subdirectory(test) --add_subdirectory(contrib) --add_subdirectory(build) --add_subdirectory(man) --add_subdirectory(html) -+if(BUILD_TOOLS) -+ add_subdirectory(tools) -+endif() -+if(BUILD_TESTS) -+ add_subdirectory(test) -+endif() -+if(BUILD_CONTRIB) -+ add_subdirectory(contrib) -+endif() -+if(BUILD_DOCS) -+ add_subdirectory(build) -+ add_subdirectory(man) -+ add_subdirectory(html) -+endif() - - #message(STATUS "EXTRA_DIST: ${EXTRA_DIST}") - diff --git a/ports/tiff/cmakelists.patch b/ports/tiff/cmakelists.patch new file mode 100644 index 000000000..597c980c5 --- /dev/null +++ b/ports/tiff/cmakelists.patch @@ -0,0 +1,99 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 845ddf0..9ccb9b3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -181,9 +181,7 @@ foreach(flag ${test_flags}) + endif (${test_c_flag}) + endforeach(flag ${test_flags}) + +-if(MSVC) +- set(CMAKE_DEBUG_POSTFIX "d") +-endif() ++set(CMAKE_DEBUG_POSTFIX "d") + + option(ld-version-script "Enable linker version script" ON) + # Check if LD supports linker scripts. +@@ -601,12 +599,15 @@ check_include_file(OpenGL/gl.h HAVE_OPENGL_GL_H) + check_include_file(OpenGL/glu.h HAVE_OPENGL_GLU_H) + + # Win32 IO +-set(win32_io FALSE) +-if(WIN32) +- set(win32_io TRUE) ++set(USE_WIN32_FILEIO FALSE CACHE BOOL "") ++if(MSVC) ++ if (NOT CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") #on UWP we use the unix I/O api ++ set(USE_WIN32_FILEIO TRUE CACHE BOOL "" FORCE) ++ add_definitions(-DUSE_WIN32_FILEIO) ++ endif() ++ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS /wd4996) + endif() + +-set(USE_WIN32_FILEIO ${win32_io}) + + # Orthogonal features + +@@ -708,16 +709,28 @@ endif() + + #report_values(TIFF_INCLUDES TIFF_LIBRARY_DEPS) + ++option(BUILD_TOOLS "Build tool executables" ON) ++option(BUILD_DOCS "Build docs" ON) ++option(BUILD_CONTRIB "Build contributed executables" ON) ++option(BUILD_TESTS "Build tests" ON) ++ + # Process subdirectories + add_subdirectory(port) + add_subdirectory(libtiff) +-add_subdirectory(tools) +-add_subdirectory(test) +-add_subdirectory(contrib) +-add_subdirectory(build) +-add_subdirectory(man) +-add_subdirectory(html) +- ++if(BUILD_TOOLS) ++ add_subdirectory(tools) ++endif() ++if(BUILD_TESTS) ++ add_subdirectory(test) ++endif() ++if(BUILD_CONTRIB) ++ add_subdirectory(contrib) ++endif() ++if(BUILD_DOCS) ++ add_subdirectory(build) ++ add_subdirectory(man) ++ add_subdirectory(html) ++endif() + #message(STATUS "EXTRA_DIST: ${EXTRA_DIST}") + + message(STATUS "") +diff --git a/libtiff/CMakeLists.txt b/libtiff/CMakeLists.txt +index 1cf1b75..4ee29f6 100644 +--- a/libtiff/CMakeLists.txt ++++ b/libtiff/CMakeLists.txt +@@ -104,11 +104,11 @@ set(tiffxx_HEADERS + set(tiffxx_SOURCES + tif_stream.cxx) + +-if(WIN32_IO) +- extra_dist(tif_unix.c) ++if(USE_WIN32_FILEIO) ++ extra_dist(tif_win32.c) + list(APPEND tiff_SOURCES tif_win32.c) + else() +- extra_dist(tif_win32.c) ++ extra_dist(tif_unix.c) + list(APPEND tiff_SOURCES tif_unix.c) + endif() + +@@ -143,7 +143,7 @@ install(FILES ${tiff_HEADERS} ${nodist_tiff_HEADERS} + DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}") + + if(CXX_SUPPORT) +- add_library(tiffxx ${tiffxx_SOURCES} ${tiffxx_HEADERS}) ++ add_library(tiffxx STATIC ${tiffxx_SOURCES} ${tiffxx_HEADERS}) + target_link_libraries(tiffxx tiff) + set_target_properties(tiffxx PROPERTIES SOVERSION ${SO_COMPATVERSION}) + if(NOT CYGWIN) diff --git a/ports/tiff/crt-secure-no-deprecate.patch b/ports/tiff/crt-secure-no-deprecate.patch deleted file mode 100644 index 476a931a9..000000000 --- a/ports/tiff/crt-secure-no-deprecate.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 439e26a..05416d8 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -187,6 +187,7 @@ endforeach(flag ${test_flags}) - - if(MSVC) - set(CMAKE_DEBUG_POSTFIX "d") -+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS /wd4996) - endif() - - option(ld-version-script "Enable linker version script" ON) diff --git a/ports/tiff/fix-cxx-shared-libs.patch b/ports/tiff/fix-cxx-shared-libs.patch deleted file mode 100644 index 37389ca81..000000000 --- a/ports/tiff/fix-cxx-shared-libs.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 4370dea04189fb9d9a94e1f4ee96ef2d24937fc9 Mon Sep 17 00:00:00 2001 -From: Mikhail Paulyshka <me@mixaill.tk> -Date: Thu, 23 Mar 2017 17:55:14 +0300 -Subject: [PATCH] fix shared libs building - ---- - libtiff/CMakeLists.txt | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/libtiff/CMakeLists.txt b/libtiff/CMakeLists.txt -index 087dfa9..20fa8b4 100644 ---- a/libtiff/CMakeLists.txt -+++ b/libtiff/CMakeLists.txt -@@ -142,6 +142,7 @@ if(cxx) - add_library(tiffxx ${tiffxx_SOURCES} ${tiffxx_HEADERS}) - target_link_libraries(tiffxx tiff) - set_target_properties(tiffxx PROPERTIES SOVERSION ${SO_COMPATVERSION}) -+ set_target_properties(tiffxx PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) - if(NOT CYGWIN) - # This property causes shared libraries on Linux to have the full version - # encoded into their final filename. We disable this on Cygwin because --- -2.11.0.windows.1 diff --git a/ports/tiff/portfile.cmake b/ports/tiff/portfile.cmake index 3a0ee0b8a..d36dce238 100644 --- a/ports/tiff/portfile.cmake +++ b/ports/tiff/portfile.cmake @@ -2,22 +2,19 @@ include(vcpkg_common_functions) set(LIBTIFF_VERSION 4.0.10) -vcpkg_check_linkage(ONLY_STATIC_LIBRARY) - vcpkg_download_distfile(ARCHIVE URLS "http://download.osgeo.org/libtiff/tiff-${LIBTIFF_VERSION}.tar.gz" FILENAME "tiff-${LIBTIFF_VERSION}.tar.gz" SHA512 d213e5db09fd56b8977b187c5a756f60d6e3e998be172550c2892dbdb4b2a8e8c750202bc863fe27d0d1c577ab9de1710d15e9f6ed665aadbfd857525a81eea8 ) + vcpkg_extract_source_archive_ex( OUT_SOURCE_PATH SOURCE_PATH ARCHIVE ${ARCHIVE} REF ${LIBTIFF_VERSION} PATCHES - add-component-options.patch - fix-cxx-shared-libs.patch - crt-secure-no-deprecate.patch fix-stddef.patch + cmakelists.patch ) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm") @@ -46,19 +43,9 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/share ) -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/tiff) -configure_file( - ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake - ${CURRENT_PACKAGES_DIR}/share/tiff - @ONLY -) -file(INSTALL - ${SOURCE_PATH}/COPYRIGHT - DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiff - RENAME copyright -) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiff) -vcpkg_copy_pdbs() -vcpkg_test_cmake(PACKAGE_NAME TIFF MODULE) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiff) +file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiff RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/tiff/usage b/ports/tiff/usage deleted file mode 100644 index 6b2f0f89e..000000000 --- a/ports/tiff/usage +++ /dev/null @@ -1,4 +0,0 @@ -The package tiff is compatible with built-in CMake targets: - - find_package(TIFF REQUIRED) - target_link_libraries(main PRIVATE TIFF::TIFF) diff --git a/ports/tiff/vcpkg-cmake-wrapper.cmake b/ports/tiff/vcpkg-cmake-wrapper.cmake index c950b512b..a35deceee 100644 --- a/ports/tiff/vcpkg-cmake-wrapper.cmake +++ b/ports/tiff/vcpkg-cmake-wrapper.cmake @@ -1,17 +1,23 @@ _find_package(${ARGS}) -find_package(LibLZMA) +find_package(LibLZMA CONFIG) find_package(JPEG) find_package(ZLIB) if(TARGET TIFF::TIFF) - set_property(TARGET TIFF::TIFF APPEND PROPERTY INTERFACE_LINK_LIBRARIES ${LIBLZMA_LIBRARIES} JPEG::JPEG ZLIB::ZLIB) + set_property(TARGET TIFF::TIFF APPEND PROPERTY INTERFACE_LINK_LIBRARIES LibLZMA::LibLZMA JPEG::JPEG ZLIB::ZLIB) if(UNIX) set_property(TARGET TIFF::TIFF APPEND PROPERTY INTERFACE_LINK_LIBRARIES m) endif() endif() if(TIFF_LIBRARIES) - list(APPEND TIFF_LIBRARIES ${LIBLZMA_LIBRARIES} ${JPEG_LIBRARIES} ${ZLIB_LIBRARIES}) + list(APPEND TIFF_LIBRARIES ${LZMA_LIBRARIES} ${JPEG_LIBRARIES} ${ZLIB_LIBRARIES}) if(UNIX) list(APPEND TIFF_LIBRARIES m) endif() endif() +if(TIFF_LIBRARY) + list(APPEND TIFF_LIBRARY ${LZMA_LIBRARIES} ${JPEG_LIBRARIES} ${ZLIB_LIBRARIES}) + if(UNIX) + list(APPEND TIFF_LIBRARY m) + endif() +endif() |
