All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: Dominik Michael Rauh <dmrauh@posteo.de>
Cc: buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH v3] package/libgdal: new package
Date: Sun, 25 Jul 2021 21:37:03 +0200	[thread overview]
Message-ID: <20210725213703.30d03455@windsurf> (raw)
In-Reply-To: <20210528152936.368915-1-dmrauh@posteo.de>

Hello Dominik,

Thanks for your contribution, see below for some comments, actually
just one main comment.

On Fri, 28 May 2021 15:29:36 +0000
Dominik Michael Rauh <dmrauh@posteo.de> wrote:

> +# libgdal fails to detect NEON support on aarch64 or ARM platforms
> +# resp. VSX support on PowerPC based platforms. While linking an
> +# application with libgdal.so, we get an undefined reference to
> +# png_init_filter_functions_neon resp. png_init_filter_functions_vsx.
> +# Some files are missing in the libpng bundled with libgdal, in
> +# particular arm/arm_init.c and powerpc/powerpc_init.c, so disable NEON
> +# and VSX support completely when using libgdal's internal libpng.
> +
> +ifeq ($(BR2_PACKAGE_LIBPNG),y)
> +LIBGDAL_DEPENDENCIES += libpng
> +LIBGDAL_CONF_OPTS += --with-png=$(STAGING_DIR)/usr
> +else
> +LIBGDAL_CONF_OPTS += --with-png=internal
> +LIBGDAL_CPPFLAGS += -DPNG_ARM_NEON_OPT=0 -DPNG_POWERPC_VSX_OPT=0
> +endif

If libgdal can use an external png, then we only want to use the
external libpng, so libpng should be a mandatory dependency (I've tried
building using --without-png, and it fails).

However, you really need to look at the other configure options, and
handle them, at least by explicitly disabling the features.

It seems like there are a number of other libraries for which libgdal
is by default using an internal copy, and where we will want to use the
external library itself:

  DODS support:              no
  ECW support:               no
  Expat support:             no
  EXR support:               no
  FGDB support:              no
  FreeXL support:            no
  GEORASTER support:         no
  GEOS support:              no
  Google libkml support:     no
  GRASS support:             no
  GTA support:               no
  HDF4 support:              no
  HDF5 support:              no
  HDFS support:              no
  HEIF support:              no
  INFORMIX DataBlade support:no
  Ingres support:            no
  JP2Lura support:           no
  JPEG 12 bit:               yes
  JPEG-in-TIFF 12 bit:       yes
  JPEG JasPer support:       no
  JPEG-Lossless/CharLS:      no
  Kakadu support:            no
  Kea support:               no
  LERC support:              internal
  libdeflate support:        no
  LIBGEOTIFF support:        internal
  LIBGIF support:            internal
  LIBJPEG support:           internal
  LIBLZMA support:           no
  LIBPNG support:            no
  LIBTIFF support:           internal (BigTIFF=yes)
  libxml2 support:           no
  LIBZ support:              internal
  MDB support:               no
  MongoCXX v3 support:       no
  MongoDB support:           no
  MrSID/MG4 Lidar support:   no
  MrSID support:             no
  MSG support:               no
  MySQL support:             no
  NetCDF support:            no
  OCI support:               no
  ODBC support:              no
  OGDI support:              no
  OpenCL support:            no
  OpenJPEG support:          no
  PCIDSK support:            internal
  PCRaster support:          internal
  PCRE support:              no
  PDFium support:            no
  Podofo support:            no
  Poppler support:           no
  PostgreSQL support:        no
  QHull support:             internal
  Rasdaman support:          no
  RasterLite2 support:       no
  RDB support:               no
  SFCGAL support:            no
  SOSI support:              no
  SpatiaLite support:        no
  SQLite support:            no
  Teigha (DWG and DGNv8):    no
  TileDB support:            no
  userfaultfd support:       yes
  WebP support:              no
  Xerces-C support:          no
  ZSTD support:              no

Again, you don't need to support all those optional dependencies, but
for the ones you don't handle in libgdal.mk, make sure to pass
--without-<foo> so that libgdal doesn't pick it up "by chance".

Could you improve your package submission according to these guidelines?

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot

  reply	other threads:[~2021-07-25 19:37 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-02 13:06 [Buildroot] [PATCH 1/1] package/libgdal: new package Dominik Michael Rauh
2021-05-02 14:38 ` Peter Seiderer
2021-05-02 18:03   ` Peter Seiderer
2021-05-04 16:57 ` [Buildroot] [PATCH v2] " Dominik Michael Rauh
2021-05-28 15:29   ` [Buildroot] [PATCH v3] " Dominik Michael Rauh
2021-07-25 19:37     ` Thomas Petazzoni [this message]
2021-08-02  9:24     ` [Buildroot] [PATCH v4] " Dominik Michael Rauh
2021-08-03 20:09       ` Arnout Vandecappelle
2021-08-03 20:19         ` Arnout Vandecappelle
2022-05-07  9:46       ` [Buildroot] [PATCH v5] package/gdal: " Dominik Michael Rauh
2022-07-27 10:00         ` Romain Naour
2022-07-27 13:38         ` Thomas Petazzoni via buildroot
2022-07-27 15:04           ` Dominik Rauh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210725213703.30d03455@windsurf \
    --to=thomas.petazzoni@bootlin.com \
    --cc=buildroot@buildroot.org \
    --cc=dmrauh@posteo.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.