All of lore.kernel.org
 help / color / mirror / Atom feed
* [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.