Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libgeotiff] Upgrade to version 1.6.0 #10408

Merged
merged 13 commits into from
Oct 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions ports/libgeotiff/CONTROL
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Source: libgeotiff
Version: 1.4.2-10
Homepage: https://download.osgeo.org/geotiff/libgeotiff
Version: 1.6.0
Homepage: https://github.com/OSGeo/libgeotiff
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
109 changes: 34 additions & 75 deletions ports/libgeotiff/cmakelists.patch
Original file line number Diff line number Diff line change
@@ -1,31 +1,24 @@
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)
diff --git a/libgeotiff/CMakeLists.txt b/libgeotiff/CMakeLists.txt
index 43113fa..46331ad 100644
--- a/libgeotiff/CMakeLists.txt
+++ b/libgeotiff/CMakeLists.txt
@@ -172,6 +172,7 @@ 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()
-
+ IF (0)
# Confirm required API is available
INCLUDE(CheckFunctionExists)
SET(CMAKE_REQUIRED_LIBRARIES ${TIFF_LIBRARIES})
@@ -187,6 +188,7 @@ IF(WITH_TIFF)
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()
+ 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)
@@ -298,11 +300,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)

Expand All @@ -37,34 +30,10 @@ index 0c70973..617978c 100644
###############################################################################
# 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
diff --git a/libgeotiff/bin/CMakeLists.txt b/libgeotiff/bin/CMakeLists.txt
index 7b12341..b6b1d0c 100644
--- a/bin/CMakeLists.txt
+++ b/bin/CMakeLists.txt
--- a/libgeotiff/bin/CMakeLists.txt
+++ b/libgeotiff/bin/CMakeLists.txt
@@ -6,9 +6,6 @@
#
###############################################################################
Expand All @@ -89,36 +58,26 @@ index 7b12341..b6b1d0c 100644
${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 @@
diff --git a/libgeotiff/cmake/CMakeLists.txt b/libgeotiff/cmake/CMakeLists.txt
index 47a2b00..3809ba3 100644
--- a/libgeotiff/cmake/CMakeLists.txt
+++ b/libgeotiff/cmake/CMakeLists.txt
@@ -6,6 +6,7 @@
# ${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 ()
+if (0)
if (NOT WIN32)
set (INSTALL_CMAKE_DIR "share/cmake/${PROJECT_NAME}")
set (PROJECT_ROOT_DIR "../../..")
@@ -13,6 +14,10 @@ else ()
set (INSTALL_CMAKE_DIR "cmake")
set (PROJECT_ROOT_DIR "..")
endif ()
+else()
+ set (INSTALL_CMAKE_DIR "share/${PROJECT_NAME}")
+ set (PROJECT_ROOT_DIR "../..")
+endif()

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")

43 changes: 29 additions & 14 deletions ports/libgeotiff/fix-proj4.patch
Original file line number Diff line number Diff line change
@@ -1,17 +1,32 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 617978c..baf45bc 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -146,8 +146,11 @@ IF(WITH_PROJ4)
endif ()
diff --git a/libgeotiff/CMakeLists.txt b/libgeotiff/CMakeLists.txt
index 46331ad..80fe121 100644
--- a/libgeotiff/CMakeLists.txt
+++ b/libgeotiff/CMakeLists.txt
@@ -122,13 +122,14 @@ INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/libxtiff)
# TIFF support - required, default=ON
SET(WITH_TIFF TRUE CACHE BOOL "Choose if TIFF support should be built")

IF(PROJ4_FOUND)
- ADD_DEFINITIONS(-DHAVE_LIBPROJ=1)
+ ADD_DEFINITIONS(-DHAVE_LIBPROJ=1 -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1)
INCLUDE_DIRECTORIES(${PROJ4_INCLUDE_DIR})
+ IF(NOT WIN32)
+ LIST(APPEND PROJ4_LIBRARIES ${CMAKE_DL_LIBS})
+ ENDIF()
ENDIF()
-FIND_PACKAGE(PROJ NO_MODULE QUIET)
-if (NOT PROJ_FOUND)
+FIND_PACKAGE(PROJ4 CONFIG REQUIRED)
+if (NOT PROJ4_FOUND)
FIND_PACKAGE(PROJ)
endif ()

-IF(PROJ_FOUND)
- INCLUDE_DIRECTORIES(${PROJ_INCLUDE_DIR})
+IF(PROJ4_FOUND)
+ INCLUDE_DIRECTORIES(${PROJ4_INCLUDE_DIRS})
+ ADD_DEFINITIONS(-DHAVE_LIBPROJ=1 -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1)
ELSE()
MESSAGE(FATAL_ERROR "Failed to detect PROJ >= 6")
ENDIF()
@@ -361,7 +362,7 @@ SET_TARGET_PROPERTIES(${GEOTIFF_LIBRARY_TARGET} PROPERTIES

TARGET_LINK_LIBRARIES(${GEOTIFF_LIBRARY_TARGET}
${TIFF_LIBRARIES}
- ${PROJ_LIBRARIES}
+ ${PROJ4_LIBRARIES}
${ZLIB_LIBRARIES}
${JPEG_LIBRARIES})

19 changes: 19 additions & 0 deletions ports/libgeotiff/fix-staticbuild.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
diff --git a/libgeotiff/CMakeLists.txt b/libgeotiff/CMakeLists.txt
index 80fe121..5c1430d 100644
--- a/libgeotiff/CMakeLists.txt
+++ b/libgeotiff/CMakeLists.txt
@@ -80,8 +80,12 @@ SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/lib)

IF(WIN32)
IF(MSVC)
- ADD_DEFINITIONS(-DBUILD_AS_DLL=1)
- ADD_DEFINITIONS(/DW4)
+ IF(BUILD_SHARED_LIBS)
+ ADD_DEFINITIONS(-DBUILD_AS_DLL=1)
+ ELSE()
+ ADD_DEFINITIONS(-DBUILD_AS_DLL=0)
+ ENDIF()
+ ADD_DEFINITIONS(/DW4)
if (NOT (MSVC_VERSION VERSION_LESS 1400))
ADD_DEFINITIONS(-D_CRT_SECURE_NO_DEPRECATE)
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)
4 changes: 2 additions & 2 deletions ports/libgeotiff/geotiff-config.patch
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
diff --git a/cmake/project-config.cmake.in b/cmake/project-config.cmake.in
index 0dd376aca..0615081bd 100644
--- a/cmake/project-config.cmake.in
+++ b/cmake/project-config.cmake.in
--- a/libgeotiff/cmake/project-config.cmake.in
+++ b/libgeotiff/cmake/project-config.cmake.in
@@ -23,6 +23,12 @@ message (STATUS "Reading ${CMAKE_CURRENT_LIST_FILE}")
message (STATUS
"@PROJECT_NAME@ configuration, version ${@PROJECT_NAME@_VERSION}")
Expand Down
53 changes: 15 additions & 38 deletions ports/libgeotiff/portfile.cmake
Original file line number Diff line number Diff line change
@@ -1,23 +1,18 @@
include(vcpkg_common_functions)

set(LIBGEOTIFF_VERSION 1.4.2)

vcpkg_download_distfile(ARCHIVE
URLS "http://download.osgeo.org/geotiff/libgeotiff/libgeotiff-${LIBGEOTIFF_VERSION}.tar.gz"
FILENAME "libgeotiff-${LIBGEOTIFF_VERSION}.tar.gz"
SHA512 059c6e05eb0c47f17b102c7217a2e1636e76d622c4d1bdcf0bd89fb3505f3130bffa881e21c73cfd2ca0d6863b81322f85784658ba3539b53b63c3a8f38d1deb
)

vcpkg_extract_source_archive_ex(
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${LIBGEOTIFF_VERSION}
REPO OSGeo/libgeotiff
REF 8b1a8f52bc909f86e04ceadd699db102208074a2 #v1.6.0
SHA512 41715d6a416307a93b2f95874c00ed27c3a0450d70311e77ed45f7ff477bd85f4a69b549bde01dfb9412a62a482467222fc8ed398478e2829e4d112012aab852
HEAD_REF master
PATCHES
cmakelists.patch
geotiff-config.patch
fix-proj4.patch
fix-staticbuild.patch
)

set(SOURCE_PATH ${SOURCE_PATH}/libgeotiff)

# Delete FindPROJ4.cmake
file(REMOVE ${SOURCE_PATH}/cmake/FindPROJ4.cmake)

Expand All @@ -34,36 +29,18 @@ vcpkg_configure_cmake(

vcpkg_install_cmake()

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/doc)
vcpkg_copy_tools(TOOL_NAMES applygeo geotifcp listgeo makegeo AUTO_CLEAN)

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})
vcpkg_copy_pdbs()
vcpkg_fixup_cmake_targets(CONFIG_PATH share/GeoTIFF TARGET_PATH share/GeoTIFF)

if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
vcpkg_replace_string(${CURRENT_PACKAGES_DIR}/share/GeoTIFF/geotiff-config.cmake "if (GeoTIFF_USE_STATIC_LIBS)" "if (1)")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin ${CURRENT_PACKAGES_DIR}/bin)
endif()

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(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/doc ${CURRENT_PACKAGES_DIR}/debug/share)

file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libgeotiff RENAME copyright)
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

file(RENAME ${CURRENT_PACKAGES_DIR}/doc ${CURRENT_PACKAGES_DIR}/share/libgeotiff/doc)
file(RENAME ${CURRENT_PACKAGES_DIR}/doc ${CURRENT_PACKAGES_DIR}/share/${PORT}/doc)
7 changes: 4 additions & 3 deletions ports/liblas/CONTROL
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Source: liblas
Version: 1.8.1-4
Build-Depends: boost, boost-thread, boost-system, boost-iostreams, boost-filesystem, libgeotiff
Version: 1.8.1
Port-Version: 5
Build-Depends: boost, boost-thread, boost-system, boost-iostreams, boost-filesystem, boost-detail, libgeotiff
Description: A C/C++ library for reading and writing the very common LAS LiDAR format.

Feature: jpeg
Expand All @@ -9,4 +10,4 @@ Build-Depends: libjpeg-turbo

Feature: zlib
Build-Depends: zlib
Description: Support zlib for compression
Description: Support zlib for compression
33 changes: 0 additions & 33 deletions ports/liblas/fix-BuildError.patch

This file was deleted.

25 changes: 25 additions & 0 deletions ports/liblas/fix-geotiff.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d246a88..d0bba6f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -248,7 +248,7 @@ endif()
# GeoTIFF support - required, default=ON
set(WITH_GEOTIFF TRUE CACHE BOOL "Choose if GeoTIFF support should be built")

-find_package (GeoTIFF 1.3.0 )
+find_package (GeoTIFF CONFIG 1.3.0 )
if(GEOTIFF_FOUND)
set(WITH_GEOTIFF TRUE)
# Confirm required API is available
diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
index beb83e2..650bc0c 100644
--- a/apps/CMakeLists.txt
+++ b/apps/CMakeLists.txt
@@ -168,7 +168,6 @@ if(UNIX)
set (LIBLAS_UTILS_RPATH ${LIBLAS_UTILS_RPATH} ${LASZIP_LIBRARY_DIRS})
endif()
if(GEOTIFF_FOUND)
- get_filename_component(GEOTIFF_LIBRARY_DIRS ${GEOTIFF_LIBRARY} PATH)
set (LIBLAS_UTILS_RPATH ${LIBLAS_UTILS_RPATH} ${GEOTIFF_LIBRARY_DIRS})
endif()
if(GDAL_FOUND)
Loading