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

gdal: add v3.9.0, fix a CMake bug, bump deps #23233

Open
wants to merge 31 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
89cefca
gdal: add v3.8.4
valgur Mar 24, 2024
8a28f98
gdal: fix global visibility of non-uppercase dependency vars
valgur Mar 24, 2024
bbd9fc1
gdal: bump deps
valgur Mar 24, 2024
cb3c2d1
gdal: fix duplicate lines in .cmake
valgur Mar 26, 2024
b019d8b
gdal: bump tiledb, poppler, kealib
valgur Mar 26, 2024
3aa1ef1
gdal: require libjxl/0.8.2
valgur Mar 26, 2024
e574543
gdal: building of tools is currently broken for shared=True
valgur Mar 26, 2024
296eaa4
gdal: revert most version bumps
valgur Mar 27, 2024
62c39ad
gdal: bump 3.8.4 -> 3.8.5
valgur Apr 6, 2024
d241f1f
gdal: bump versions for #23277
valgur Apr 20, 2024
78a8a23
gdal: bump proj #21512
valgur Apr 20, 2024
70f20ef
gdal: bump to v3.9.0
valgur May 14, 2024
ec5cc9a
gdal: adjust dependency versions, revert most bumps
valgur May 14, 2024
81deecb
gdal: revert arrow bump
valgur May 14, 2024
f6eda38
Merge branch 'master' into update/gdal
valgur May 14, 2024
77a55d5
Merge branch 'master' into update/gdal
valgur May 19, 2024
bd44e31
gdal: bump arrow to handle missing binary
valgur May 20, 2024
812e194
Merge remote-tracking branch 'refs/remotes/upstream/master' into upda…
valgur Jul 9, 2024
e86fe25
gdal: bump to v3.9.1
valgur Jul 9, 2024
4c4ff15
gdal: adjust qhull component to not break with #24532
valgur Jul 9, 2024
e4fa5fd
Merge remote-tracking branch 'refs/remotes/upstream/master' into upda…
valgur Jul 31, 2024
5267d5d
gdal: add version ranges, bump some deps
valgur Jul 31, 2024
b65c51f
Merge remote-tracking branch 'upstream/master' into update/gdal
valgur Aug 16, 2024
7ff3b27
gdal: bump to v3.9.2
valgur Aug 16, 2024
a0480a2
gdal: use tc.cache_variables
valgur Oct 7, 2024
b7b9dda
Merge remote-tracking branch 'upstream/master' into update/gdal
valgur Nov 6, 2024
a8b54b6
gdal: bump to v3.9.3
valgur Nov 6, 2024
69a32ce
gdal: bump tiledb version
valgur Nov 6, 2024
e533586
Merge remote-tracking branch 'upstream/master' into update/gdal
valgur Dec 18, 2024
e60be44
gdal: let GDAL detect sqlite3 features
valgur Dec 18, 2024
696cc5a
gdal: bump to v3.10.0
valgur Dec 18, 2024
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
2 changes: 2 additions & 0 deletions recipes/gdal/config.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
versions:
"3.9.3":
folder: "post_3.5.0"
"3.8.3":
folder: "post_3.5.0"
"3.7.3":
Expand Down
8 changes: 6 additions & 2 deletions recipes/gdal/post_3.5.0/cmake/ConanFindPackage.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,6 @@ function(find_package2 pkgname)
find_package(${pkgname} ${ARGN}
QUIET
CONFIG
GLOBAL
# Forbid the use of system libs entirely
NO_DEFAULT_PATH
PATHS ${CMAKE_PREFIX_PATH}
Expand All @@ -37,9 +36,14 @@ function(find_package2 pkgname)
set(${key}_VERSION ${${pkgname}_VERSION} CACHE BOOL "")

# Add as cache vars for global visibility
set(${pkgname}_DEFINITIONS "${${pkgname}_DEFINITIONS}" CACHE STRING "")
set(${pkgname}_FOUND ${${pkgname}_FOUND} CACHE BOOL "")
set(${pkgname}_INCLUDE_DIR "${${pkgname}_INCLUDE_DIR}" CACHE STRING "")
set(${pkgname}_INCLUDE_DIRS "${${pkgname}_INCLUDE_DIRS}" CACHE STRING "")
set(${pkgname}_LIBRARIES "${${pkgname}_LIBRARIES}" CACHE STRING "")
set(${pkgname}_LIBRARY "${${pkgname}_LIBRARIES}" CACHE STRING "")
set(${pkgname}_TARGET "${targets}" CACHE STRING "")
set(${pkgname}_VERSION ${${pkgname}_VERSION_STRING} CACHE BOOL "")
set(${pkgname}_VERSION ${${pkgname}_VERSION} CACHE BOOL "")

message(STATUS "Found ${pkgname}: ${${pkgname}_FOUND}")
message(STATUS " ${key}_TARGET: ${${key}_TARGET}")
Expand Down
13 changes: 13 additions & 0 deletions recipes/gdal/post_3.5.0/conandata.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
sources:
"3.10.0":
url: "https://github.com/OSGeo/gdal/releases/download/v3.10.0/gdal-3.10.0.tar.gz"
sha256: "946ef444489bedbc1b04bd4c115d67ae8d3f3e4a5798d5a2f1cb2a11014105b2"
"3.8.3":
url: "https://github.com/OSGeo/gdal/releases/download/v3.8.3/gdal-3.8.3.tar.gz"
sha256: "f7a30387a8239e9da26200f787a02136df2ee6473e86b36d05ad682761a049ea"
Expand All @@ -9,6 +12,16 @@ sources:
url: "https://github.com/OSGeo/gdal/releases/download/v3.5.3/gdal-3.5.3.tar.gz"
sha256: "a9ea0300d17e35bab71df4f16e62bb2fb8081caf994ab3ee0502ce4cf0d4e593"
patches:
"3.10.0":
- patch_file: "patches/3.10.0/0-replace-find-package.patch"
patch_description: "Use custom version of find_package() for Conan deps"
patch_type: "conan"
- patch_file: "patches/3.10.0/1-do-not-force-private-linking.patch"
patch_description: "Fix private linking not working for some Conan dependencies"
patch_type: "conan"
- patch_file: "patches/3.10.0/2-allow-cycles-in-cmake-targets.patch"
patch_description: "Fix CMake failure due to cyclical dependencies in CMakeDeps targets"
patch_type: "conan"
"3.8.3":
- patch_file: "patches/3.8.1/0-replace-find-package.patch"
patch_description: "Use custom version of find_package() for Conan deps"
Expand Down
297 changes: 153 additions & 144 deletions recipes/gdal/post_3.5.0/conanfile.py

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
--- a/cmake/helpers/CheckDependentLibrariesCommon.cmake
+++ b/cmake/helpers/CheckDependentLibrariesCommon.cmake
@@ -11,7 +11,7 @@
include(CheckFunctionExists)
include(CMakeDependentOption)
include(FeatureSummary)
-include(DefineFindPackage2)
+include(ConanFindPackage)
include(CheckSymbolExists)

option(
@@ -109,9 +109,8 @@
string(TOUPPER ${name} key)
set(_find_dependency "")
set(_find_dependency_args "")
- if(FIND_PACKAGE2_${name}_ENABLED)
- find_package2(${name} QUIET OUT_DEPENDENCY _find_dependency)
- else()
+ find_package2(${name} QUIET)
+ if(FALSE)
set(_find_package_args)
# For some reason passing the HDF5 version requirement cause a linking error of the libkea driver on Conda Windows builds...
if (_GCP_VERSION AND NOT ("${name}" STREQUAL "TileDB") AND NOT ("${name}" STREQUAL "HDF5"))
--- a/cmake/helpers/CheckDependentLibraries.cmake
+++ b/cmake/helpers/CheckDependentLibraries.cmake
@@ -176,8 +176,8 @@
NAMES json-c
TARGETS json-c::json-c JSONC::JSONC
)
-gdal_internal_library(JSONC REQUIRED)
-if(TARGET json-c::json-c)
+find_package2(JSONC REQUIRED)
+if(FALSE)
get_target_property(include_dirs json-c::json-c INTERFACE_INCLUDE_DIRECTORIES)
find_path(GDAL_JSON_INCLUDE_DIR NAMES json.h PATHS ${include_dirs} PATH_SUFFIXES json-c NO_DEFAULT_PATH)
list(APPEND include_dirs "${GDAL_JSON_INCLUDE_DIR}")
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
--- a/cmake/helpers/GdalDriverHelper.cmake
+++ b/cmake/helpers/GdalDriverHelper.cmake
@@ -394,7 +394,7 @@
set(_oneValueArgs)
set(_multiValueArgs PRIVATE)
cmake_parse_arguments(_DRIVER "" "${_oneValueArgs}" "${_multiValueArgs}" ${ARGN})
- if (NOT _DRIVER_PRIVATE)
+ if (FALSE)
message(FATAL_ERROR "gdal_target_link_libraries(): PRIVATE is a mandatory argument.")
endif ()
is_plugin(RES ${target})
@@ -411,6 +411,7 @@
else ()
gdal_target_interfaces(${target} ${_DRIVER_PRIVATE})
gdal_add_private_link_libraries(${_DRIVER_PRIVATE})
+ target_link_libraries(${ARGV})
endif ()

# For debugging purposes
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
--- a/cmake/helpers/GdalDriverHelper.cmake
+++ b/cmake/helpers/GdalDriverHelper.cmake
@@ -363,6 +363,7 @@
target_compile_options(${_TARGET} PRIVATE ${_res})
endif ()
get_property(_res TARGET ${_LIB} PROPERTY INTERFACE_LINK_LIBRARIES)
+ list(REMOVE_ITEM _res ${_LIB})
if (_res)
gdal_target_interfaces(${_TARGET} ${_res})
endif ()
--- a/cmake/helpers/GdalGenerateConfig.cmake
+++ b/cmake/helpers/GdalGenerateConfig.cmake
@@ -50,6 +50,7 @@
if(TARGET "${_lib}")
get_target_property(_link_libraries ${_lib} INTERFACE_LINK_LIBRARIES)
get_target_property(_type ${_lib} TYPE)
+ list(REMOVE_ITEM _link_libraries ${_lib})
if(_link_libraries AND NOT TYPE STREQUAL "SHARED_LIBRARY")
list(INSERT ARGN 0 ${_link_libraries})
endif()