Bug#1015588: postgis: ftbfs with LTO (link time optimization) enabled

Matthias Klose doko at debian.org
Tue Jul 19 17:58:19 BST 2022


Package: src:postgis
Version: 3.2.1+dfsg-1
Severity: minor
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-lto

This package currently fails to build (at least on the amd64
architecture) with link time optimizations enabled.  For a background
for LTO please see

https://wiki.debian.org/ToolChain/LTO

The goal is to enable this optimization by default in an upcoming
Debian release in dpkg-buildflags for 64bit architectures.  The goal
is to get this package to build with link time optimizations, or to
explicitly disable link time optimizations for this package build.

To reproduce the build failure, enable the lto optimization in
testing/unstable by adding "optimize=+lto" to DEB_BUILD_MAINT_OPTIONS
in the debian/rules file, or if this macro is unset, just set it:

export DEB_BUILD_MAINT_OPTIONS = optimize=+lto

Please try to fix the build with lto enabled, fixing the packaging or
forwarding the issue upstream. If the issue cannot be fixed,
explicitly disallow building the package with lto by adding to your
rules file:

export DEB_BUILD_MAINT_OPTIONS = optimize=-lto

or adding that string to your existing setting of DEB_BUILD_MAINT_OPTIONS.

The full build log can be found at:
http://qa-logs.debian.net/2022/06/09/dpkglto/postgis_3.2.1+dfsg-1_unstable_dpkglto.log
The last lines of the build log are at the end of this report.

[...]
	
2022-06-10 08:39:53.954 UTC [206348] user42 at postgis_reg STATEMENT:  SELECT
		'2.4',
		r1.rid,
		r2.rid,
		-1 AS distance,
		ST_DFullyWithin(r1.rast, NULL, r2.rast, NULL, -1)
	FROM raster_geos_rast r1
	CROSS JOIN raster_geos_rast r2
	WHERE r1.rid = 0;
ERROR 4: `/vsimem/in.dat' not recognized as a supported file format.
2022-06-10 08:39:55.250 UTC [206385] user42 at postgis_reg ERROR:  RASTER_fromGDALRaster: Could not open bytea with GDAL. Check that the bytea is of a GDAL supported format
2022-06-10 08:39:55.250 UTC [206385] user42 at postgis_reg STATEMENT:  SELECT convert_from(ST_AsGDALRaster(ST_FromGDALRaster('<VRTDataset rasterXSize="1000"
	rasterYSize="1"><VRTRasterBand band="1"
	subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>'::bytea),
	'EHDR')::bytea, 'LATIN1');
ERROR 4: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>: No such file or directory
2022-06-10 08:39:55.252 UTC [206385] user42 at postgis_reg ERROR:  rt_band_load_offline_data: Cannot open offline raster: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>
2022-06-10 08:39:55.252 UTC [206385] user42 at postgis_reg STATEMENT:  SELECT count(convert_from(ST_AsGDALRaster(r, 'EHDR')::bytea, 'LATIN1')) as passwd from raster_test where lbl = 'passwd';
ERROR 4: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>: No such file or directory
2022-06-10 08:39:55.253 UTC [206385] user42 at postgis_reg ERROR:  rt_band_load_offline_data: Cannot open offline raster: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>
2022-06-10 08:39:55.253 UTC [206385] user42 at postgis_reg STATEMENT:  SELECT count(convert_from(ST_AsGDALRaster(r, 'EHDR')::bytea, 'LATIN1')) as passwd from raster_test where lbl = 'passwd';
ERROR 4: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>: No such file or directory
2022-06-10 08:39:55.259 UTC [206385] user42 at postgis_reg ERROR:  rt_band_load_offline_data: Cannot open offline raster: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>
2022-06-10 08:39:55.259 UTC [206385] user42 at postgis_reg STATEMENT:  SELECT count(convert_from(ST_AsGDALRaster(r, 'EHDR')::bytea, 'LATIN1')) as passwd from raster_test where lbl = 'passwd';
ERROR 4: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>: No such file or directory
2022-06-10 08:39:55.259 UTC [206385] user42 at postgis_reg ERROR:  rt_band_load_offline_data: Cannot open offline raster: <VRTDataset rasterXSize="1000" rasterYSize="1"><VRTRasterBand band="1" subClass="VRTRawRasterBand"><SourceFilename>/etc/passwd</SourceFilename></VRTRasterBand></VRTDataset>
2022-06-10 08:39:55.259 UTC [206385] user42 at postgis_reg STATEMENT:  SELECT count(convert_from(ST_AsGDALRaster(r, 'EHDR')::bytea, 'LATIN1')) as passwd from raster_test where lbl = 'passwd';
2022-06-10 08:39:55.495 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'scale_x'.  Skipping
2022-06-10 08:39:55.495 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
2022-06-10 08:39:55.500 UTC [206397] user42 at postgis_reg ERROR:  new row for relation "test_raster_scale_regular" violates check constraint "enforce_scaley_rast"
2022-06-10 08:39:55.500 UTC [206397] user42 at postgis_reg DETAIL:  Failing row contains (3, 01000001006ABC74931804F03FCB1A50CAFFFFEF3F0000000000000000000000...).
2022-06-10 08:39:55.500 UTC [206397] user42 at postgis_reg CONTEXT:  SQL statement "INSERT INTO test_raster_scale_regular VALUES ('3', '01000001006ABC74931804F03FCB1A50CAFFFFEF3F00000000000000000000000000000000000000000000000000000000000000000000000002000200440001010101')"
	PL/pgSQL function make_test_raster(text,integer,double precision,double precision) line 16 at EXECUTE
2022-06-10 08:39:55.500 UTC [206397] user42 at postgis_reg STATEMENT:  SELECT make_test_raster('regular', 3, 1.001, 0.9999999);
2022-06-10 08:39:55.505 UTC [206397] user42 at postgis_reg ERROR:  new row for relation "test_raster_scale_big" violates check constraint "enforce_scalex_rast"
2022-06-10 08:39:55.505 UTC [206397] user42 at postgis_reg DETAIL:  Failing row contains (1, 0100000100E1639D31956AE5C3000000000000F03F0000000000000000000000...).
2022-06-10 08:39:55.505 UTC [206397] user42 at postgis_reg CONTEXT:  SQL statement "INSERT INTO test_raster_scale_big VALUES ('1', '0100000100E1639D31956AE5C3000000000000F03F00000000000000000000000000000000000000000000000000000000000000000000000002000200440001010101')"
	PL/pgSQL function make_test_raster(text,integer,double precision,double precision) line 16 at EXECUTE
2022-06-10 08:39:55.505 UTC [206397] user42 at postgis_reg STATEMENT:  SELECT make_test_raster('big', 1, -12345678901234567890.0);
2022-06-10 08:39:55.506 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'scale_x'.  Skipping
2022-06-10 08:39:55.506 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
2022-06-10 08:39:55.509 UTC [206397] user42 at postgis_reg ERROR:  new row for relation "test_raster_scale_small" violates check constraint "enforce_scaley_rast"
2022-06-10 08:39:55.509 UTC [206397] user42 at postgis_reg DETAIL:  Failing row contains (3, 0100000100F168E388B5F8E43E72C45A7C0A00F03F0000000000000000000000...).
2022-06-10 08:39:55.509 UTC [206397] user42 at postgis_reg CONTEXT:  SQL statement "INSERT INTO test_raster_scale_small VALUES ('3', '0100000100F168E388B5F8E43E72C45A7C0A00F03F00000000000000000000000000000000000000000000000000000000000000000000000002000200440001010101')"
	PL/pgSQL function make_test_raster(text,integer,double precision,double precision) line 16 at EXECUTE
2022-06-10 08:39:55.509 UTC [206397] user42 at postgis_reg STATEMENT:  SELECT make_test_raster('small', 3, 0.00001, 1.00001);
2022-06-10 08:39:55.530 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'blocksize_x'.  Skipping
2022-06-10 08:39:55.530 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
2022-06-10 08:39:55.530 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'blocksize_y'.  Skipping
2022-06-10 08:39:55.530 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'pixel_types'.  Skipping
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'nodata_values'.  Skipping
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'out_db'.  Skipping
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg WARNING:  Unable to add constraint: 'extent'.  Skipping
2022-06-10 08:39:55.531 UTC [206397] user42 at postgis_reg CONTEXT:  PL/pgSQL function addrasterconstraints(name,name,name,text[]) line 113 at RAISE
	PL/pgSQL function addrasterconstraints(name,name,name,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean,boolean) line 53 at RETURN
Dropping cluster 14/regress ...
make[1]: *** [debian/rules:154: override_dh_auto_test] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:58: build] Error 2
dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2



More information about the Pkg-grass-devel mailing list