* [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build
@ 2023-01-24 10:31 Maxim Kochetkov via buildroot
2023-01-28 20:27 ` Thomas Petazzoni via buildroot
2023-02-13 14:53 ` Peter Korsgaard
0 siblings, 2 replies; 3+ messages in thread
From: Maxim Kochetkov via buildroot @ 2023-01-24 10:31 UTC (permalink / raw)
To: buildroot; +Cc: dmrauh, Maxim Kochetkov, himaralonso+buildroot
GDAL autoconf has wrong libgeotiff detection. It uses host's
library if installed instead of buildroot one.
Modern versions of gdal have no autoconf build scripts, just cmake only.
So move to cmake build variant.
Fixes: https://bugs.busybox.net/show_bug.cgi?id=15281
Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
---
package/gdal/gdal.mk | 166 ++++++++++++++++++++++---------------------
1 file changed, 85 insertions(+), 81 deletions(-)
diff --git a/package/gdal/gdal.mk b/package/gdal/gdal.mk
index 33e7ba724a..a777834083 100644
--- a/package/gdal/gdal.mk
+++ b/package/gdal/gdal.mk
@@ -12,6 +12,13 @@ GDAL_LICENSE_FILES = LICENSE.TXT
GDAL_CPE_ID_VENDOR = osgeo
GDAL_INSTALL_STAGING = YES
GDAL_CONFIG_SCRIPTS = gdal-config
+GDAL_SUPPORTS_IN_SOURCE_BUILD=NO
+
+# Using 'make' with the Makefile generator will not work,
+# as it will try the GNUmakefile.
+# GNUmakefile and autoconf are dropped in 3.6 so may be dropped in future version.
+GDAL_MAKE_OPTS += -f Makefile
+
# gdal at its core only needs host-pkgconf, libgeotiff, proj and tiff
# but since by default mrf driver support is enabled, it also needs
# jpeg, libpng and zlib. By default there are also many other drivers
@@ -20,97 +27,94 @@ GDAL_CONFIG_SCRIPTS = gdal-config
# respectively needed dependencies.
GDAL_DEPENDENCIES = host-pkgconf jpeg json-c libgeotiff libpng proj tiff zlib
-# Yes, even though they have --with options, these few libraries are
+# Yes, even though they have DGDAL_USE, these few libraries are
# mandatory. If we don't provide them, bundled versions are used.
GDAL_CONF_OPTS = \
- --with-geotiff \
- --with-jpeg \
- --with-libjson-c=$(STAGING_DIR)/usr \
- --with-libtool \
- --with-libz \
- --with-png \
- --with-proj \
- --without-armadillo \
- --without-blosc \
- --without-brunsli \
- --without-cfitsio \
- --without-crypto \
- --without-cryptopp \
- --without-curl \
- --without-dds \
- --without-ecw \
- --without-expat \
- --without-exr \
- --without-fgdb \
- --without-freexl \
- --without-geos \
- --without-gnm \
- --without-libkml \
- --without-lz4 \
- --without-gta \
- --without-hdf4 \
- --without-hdf5 \
- --without-hdfs \
- --without-heif \
- --without-idb \
- --without-jp2lura \
- --without-java \
- --without-jpeg12 \
- --without-jxl \
- --without-kakadu \
- --without-kea \
- --without-lerc \
- --without-gif \
- --without-liblzma \
- --without-libdeflate \
- --without-mongocxxv3 \
- --without-mrsid \
- --without-jp2mrsid \
- --without-macosx-framework \
- --without-msg \
- --without-mysql \
- --without-netcdf \
- --without-null \
- --without-oci \
- --without-odbc \
- --without-ogdi \
- --without-opencl \
- --without-openjpeg \
- --without-pam \
- --without-pcidsk \
- --without-pcraster \
- --without-pcre \
- --without-pcre2 \
- --without-pdfium \
- --without-podofo \
- --without-poppler \
- --without-python \
- --without-qhull \
- --without-rasdaman \
- --without-rasterlite2 \
- --without-rdb \
- --without-sfcgal \
- --without-sosi \
- --without-spatialite \
- --without-sqlite3 \
- --without-teigha \
- --without-tiledb \
- --without-webp \
- --without-xerces \
- --without-zstd
+ -DGDAL_USE_GEOTIFF=ON \
+ -DGDAL_USE_JPEG=ON \
+ -DGDAL_USE_JSONC=ON \
+ -DGDAL_USE_ZLIB=ON \
+ -DGDAL_USE_PNG=ON \
+ -DGDAL_USE_ARMADILLO=OFF \
+ -DGDAL_USE_BLOSC=OFF \
+ -DGDAL_USE_BRUNSLI=OFF \
+ -DGDAL_USE_CFITSIO=OFF \
+ -DGDAL_USE_OPENSSL=OFF \
+ -DGDAL_USE_CRYPTOPP=OFF \
+ -DGDAL_USE_CRNLIB=OFF \
+ -DGDAL_USE_CURL=OFF \
+ -DGDAL_USE_ECW=OFF \
+ -DGDAL_USE_EXPAT=OFF \
+ -DGDAL_USE_FILEGDB=OFF \
+ -DGDAL_USE_FREEXL=OFF \
+ -DGDAL_USE_GEOS=OFF \
+ -DGDAL_USE_LIBKML=OFF \
+ -DGDAL_USE_LZ4=OFF \
+ -DGDAL_USE_GTA=OFF \
+ -DGDAL_USE_HDF4=OFF \
+ -DGDAL_USE_HDF5=OFF \
+ -DGDAL_USE_HDFS=OFF \
+ -DGDAL_USE_HEIF=OFF \
+ -DGDAL_USE_IDB=OFF \
+ -DGDAL_USE_LURATECH=OFF \
+ -DGDAL_USE_JPEG12_INTERNAL=OFF \
+ -DGDAL_USE_JXL=OFF \
+ -DGDAL_USE_KDU=OFF \
+ -DGDAL_USE_KEA=OFF \
+ -DGDAL_USE_LERC=OFF \
+ -DGDAL_USE_GIF=OFF \
+ -DGDAL_USE_LIBLZMA=OFF \
+ -DGDAL_USE_DEFLATE=OFF \
+ -DGDAL_USE_MONGOCXX=OFF \
+ -DGDAL_USE_MRSID=OFF \
+ -DGDAL_USE_PUBLICDECOMPWT=OFF \
+ -DGDAL_USE_MYSQL=OFF \
+ -DGDAL_USE_NETCDF=OFF \
+ -DGDAL_USE_ORACLE=OFF \
+ -DGDAL_USE_ODBC=OFF \
+ -DGDAL_USE_OGDI=OFF \
+ -DGDAL_USE_OPENCL=OFF \
+ -DGDAL_USE_OPENEXR=OFF \
+ -DGDAL_USE_OPENJPEG=OFF \
+ -DGDAL_USE_PCRE=OFF \
+ -DGDAL_USE_PCRE2=OFF \
+ -DGDAL_USE_PDFIUM=OFF \
+ -DGDAL_USE_PODOFO=OFF \
+ -DGDAL_USE_POPPLER=OFF \
+ -DGDAL_USE_QHULL=OFF \
+ -DGDAL_USE_RASDAMAN=OFF \
+ -DGDAL_USE_RASTERLITE2=OFF \
+ -DGDAL_USE_RDB=OFF \
+ -DGDAL_USE_SFCGAL=OFF \
+ -DGDAL_USE_FYBA=OFF \
+ -DGDAL_USE_SPATIALITE=OFF \
+ -DGDAL_USE_SQLITE3=OFF \
+ -DGDAL_USE_TEIGHA=OFF \
+ -DGDAL_USE_TILEDB=OFF \
+ -DGDAL_USE_WEBP=OFF \
+ -DGDAL_USE_XERCESC=OFF \
+ -DGDAL_USE_ZSTD=OFF \
+ -DGDAL_ENABLE_DRIVER_PCIDSK=OFF \
+ -DGDAL_ENABLE_DRIVER_PCRASTER=OFF \
+ -DGDAL_ENABLE_DRIVER_NULL=OFF \
+ -DGDAL_ENABLE_MACOSX_FRAMEWORK=OFF \
+ -DENABLE_GNM=OFF \
+ -DENABLE_PAM=OFF \
+ -DBUILD_JAVA_BINDINGS=OFF \
+ -DBUILD_PYTHON_BINDINGS=OFF
ifeq ($(BR2_PACKAGE_LIBXML2),y)
GDAL_DEPENDENCIES += libxml2
-GDAL_CONF_OPTS += --with-xml2
+GDAL_CONF_OPTS += -DGDAL_USE_LIBXML2=ON
else
-GDAL_CONF_OPTS += --without-xml2
+GDAL_CONF_OPTS += -DGDAL_USE_LIBXML2=OFF
endif
ifeq ($(BR2_PACKAGE_POSTGRESQL),y)
GDAL_DEPENDENCIES += postgresql
-GDAL_CONF_OPTS += --with-pg
+GDAL_CONF_OPTS += -DGDAL_USE_POSTGRESQL=ON
else
-GDAL_CONF_OPTS += --without-pg
+GDAL_CONF_OPTS += -DGDAL_USE_POSTGRESQL=OFF
endif
-$(eval $(autotools-package))
+$(eval $(cmake-package))
--
2.38.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build
2023-01-24 10:31 [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build Maxim Kochetkov via buildroot
@ 2023-01-28 20:27 ` Thomas Petazzoni via buildroot
2023-02-13 14:53 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2023-01-28 20:27 UTC (permalink / raw)
To: Maxim Kochetkov via buildroot
Cc: dmrauh, Maxim Kochetkov, himaralonso+buildroot
On Tue, 24 Jan 2023 13:31:49 +0300
Maxim Kochetkov via buildroot <buildroot@buildroot.org> wrote:
> GDAL autoconf has wrong libgeotiff detection. It uses host's
> library if installed instead of buildroot one.
> Modern versions of gdal have no autoconf build scripts, just cmake only.
>
> So move to cmake build variant.
>
> Fixes: https://bugs.busybox.net/show_bug.cgi?id=15281
There was a missing empty line here before the Signed-off-by.
> Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
> ---
> package/gdal/gdal.mk | 166 ++++++++++++++++++++++---------------------
> 1 file changed, 85 insertions(+), 81 deletions(-)
>
> diff --git a/package/gdal/gdal.mk b/package/gdal/gdal.mk
> index 33e7ba724a..a777834083 100644
> --- a/package/gdal/gdal.mk
> +++ b/package/gdal/gdal.mk
> @@ -12,6 +12,13 @@ GDAL_LICENSE_FILES = LICENSE.TXT
> GDAL_CPE_ID_VENDOR = osgeo
> GDAL_INSTALL_STAGING = YES
> GDAL_CONFIG_SCRIPTS = gdal-config
> +GDAL_SUPPORTS_IN_SOURCE_BUILD=NO
Missing spaces around "="
> +
> +# Using 'make' with the Makefile generator will not work,
> +# as it will try the GNUmakefile.
> +# GNUmakefile and autoconf are dropped in 3.6 so may be dropped in future version.
I slightly reworded this explanation.
> +GDAL_MAKE_OPTS += -f Makefile
> +
> # gdal at its core only needs host-pkgconf, libgeotiff, proj and tiff
> # but since by default mrf driver support is enabled, it also needs
> # jpeg, libpng and zlib. By default there are also many other drivers
> @@ -20,97 +27,94 @@ GDAL_CONFIG_SCRIPTS = gdal-config
> # respectively needed dependencies.
> GDAL_DEPENDENCIES = host-pkgconf jpeg json-c libgeotiff libpng proj tiff zlib
>
> -# Yes, even though they have --with options, these few libraries are
> +# Yes, even though they have DGDAL_USE, these few libraries are
DGAL_USE should have been "-DGAL_USE options".
I fixed those minor details, and applied your patch. Thanks a lot!
Best regards,
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build
2023-01-24 10:31 [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build Maxim Kochetkov via buildroot
2023-01-28 20:27 ` Thomas Petazzoni via buildroot
@ 2023-02-13 14:53 ` Peter Korsgaard
1 sibling, 0 replies; 3+ messages in thread
From: Peter Korsgaard @ 2023-02-13 14:53 UTC (permalink / raw)
To: Maxim Kochetkov via buildroot
Cc: dmrauh, Maxim Kochetkov, himaralonso+buildroot
>>>>> "Maxim" == Maxim Kochetkov via buildroot <buildroot@buildroot.org> writes:
> GDAL autoconf has wrong libgeotiff detection. It uses host's
> library if installed instead of buildroot one.
> Modern versions of gdal have no autoconf build scripts, just cmake only.
> So move to cmake build variant.
> Fixes: https://bugs.busybox.net/show_bug.cgi?id=15281
> Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
Committed to 2022.11.x, thanks.
--
Bye, Peter Korsgaard
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-02-13 14:54 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-24 10:31 [Buildroot] [PATCH 1/1] package/gdal: switch to cmake build Maxim Kochetkov via buildroot
2023-01-28 20:27 ` Thomas Petazzoni via buildroot
2023-02-13 14:53 ` Peter Korsgaard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.