Opened 4 years ago

Closed 4 years ago

#4498 closed defect (fixed)

PostGIS 2.3 should not allow configure for > PG 9.6

Reported by: robe Owned by: strk
Priority: medium Milestone: PostGIS 2.3.11
Component: build Version: master
Keywords: Cc:

Description

I just put bessie back on the line (newly formatted with FreeBSD 12) which in the repo is PostgreSQL 11.

The configure for 2.3 seems to go thru but it should error out with an error that says:

Only supported for PostgreSQL 9.2 - 9.6

 From https://git.osgeo.org/gitea/postgis/postgis
23:47:54  * branch            svn-2.3    -> FETCH_HEAD
23:47:54  * [new branch]      svn-2.3    -> origin/svn-2.3

3:49:12  -------------- Dependencies -------------- 
23:49:12   GEOS config:          /usr/local/bin/geos-config
23:49:12   GEOS version:         3.7.2
23:49:12   GDAL config:          /usr/local/bin/gdal-config
23:49:12   GDAL version:         2.4.1
23:49:12   SFCGAL config:        /usr/local/bin/sfcgal-config
23:49:12   SFCGAL version:       1.3.6
23:49:12   PostgreSQL config:    /usr/local/bin/pg_config
23:49:12   PostgreSQL version:   PostgreSQL 11.4
23:49:12   PROJ4 version:        61
23:49:12   Libxml2 config:       /usr/local/bin/xml2-config
23:49:12   Libxml2 version:      2.9.9
23:49:12   JSON-C support:       no
23:49:12   PCRE support:         no
23:49:12   PostGIS debug level:  0
23:49:12   Perl:                 /usr/local/bin/perl
23:49:12 
23:49:12  --------------- Extensions --------------- 
23:49:12   PostGIS Raster:       enabled
23:49:12   PostGIS Topology:     enabled
23:49:12   SFCGAL support:       enabled
23:49:12   Address Standardizer support:       disabled
23:49:12 

but fails in compile:

23:50:25 cc  -I../liblwgeom -g -O2 -I/usr/local/include/postgresql/server -I/usr/local/include -DACCEPT_USE_OF_DEPRECATED_PROJ_API_H=1  -fPIC -DPIC  -Wall -Wmissing-prototypes  -c -o lwgeom_transform.o lwgeom_transform.c
23:50:26 lwgeom_transform.c:124:2: warning: incompatible pointer types initializing 'Size (*)(MemoryContext, void *)' (aka 'unsigned long (*)(struct MemoryContextData *, void *)') with an expression of type 'void (MemoryContext)' (aka 'void (struct MemoryContextData *)') [-Wincompatible-pointer-types]

23:50:26         PROJ4SRSCacheDelete,
23:50:26         ^~~~~~~~~~~~~~~~~~~
23:50:26 lwgeom_transform.c:126:2: warning: incompatible pointer types initializing 'void (*)(MemoryContext, MemoryStatsPrintFunc, void *, MemoryContextCounters *)' (aka 'void (*)(struct MemoryContextData *, void (*)(struct MemoryContextData *, void *, const char *), void *, struct MemoryContextCounters *)') with an expression of type 'bool (MemoryContext)' (aka 'bool (struct MemoryContextData *)') [-Wincompatible-pointer-types]
23:50:26         PROJ4SRSCacheIsEmpty,
23:50:26         ^~~~~~~~~~~~~~~~~~~~
23:50:26 lwgeom_transform.c:127:2: warning: excess elements in struct initializer
23:50:26         PROJ4SRSCacheStats
23:50:26         ^~~~~~~~~~~~~~~~~~
23:50:26 lwgeom_transform.c:179:9: error: use of undeclared identifier 'FALSE'
23:50:26         return FALSE;
23:50:26                ^
23:50:26 lwgeom_transform.c:575:40: warning: incompatible integer to pointer conversion passing 'int' to parameter of type 'MemoryContext' (aka 'struct MemoryContextData *') [-Wint-conversion]
23:50:26         PJMemoryContext = MemoryContextCreate(T_AllocSetContext, 8192,
23:50:26                                               ^~~~~~~~~~~~~~~~~
23:50:26 /usr/local/include/postgresql/server/utils/memutils.h:140:47: note: passing argument to parameter 'node' here
23:50:26 extern void MemoryContextCreate(MemoryContext node,
23:50:26                                               ^
23:50:26 lwgeom_transform.c:575:18: error: assigning to 'MemoryContext' (aka 'struct MemoryContextData *') from incompatible type 'void'
23:50:26         PJMemoryContext = MemoryContextCreate(T_AllocSetContext, 8192,
23:50:26                         ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23:50:26 4 warnings and 2 errors generated.
23:50:26 gmake[2]: *** [Makefile:61: lwgeom_transform.o] Error 1
23:50:26 gmake[2]: Leaving directory '/usr/home/jenkins/workspace/PostGIS_Worker_Run/label/bessie/2e38060fe6f8ca28dd0241ca2655872be37cef25/libpgcommon'
23:50:26 gmake[1]: *** [GNUmakefile:16: all] Error 1
23:50:26 gmake[1]: Leaving directory '/usr/home/jenkins/workspace/PostGIS_Worker_Run/label/bessie/2e38060fe6f8ca28dd0241ca2655872be37cef25'
23:50:26 *** Error code 2
23:50:26 
23:50:26 Stop.
23:50:26 make: stopped in /usr/home/jenkins/workspace/PostGIS_Worker_Run/label/bessie/2e38060fe6f8ca28dd0241ca2655872be37cef25
23:50:26 Build step 'Execute shell' marked build as failure
23:50:26 Finished: FAILURE

Change History (2)

comment:1 by strk, 4 years ago

We cannot rewrite history so there'll always be the case of not knowing in advance which future version of a dependency will break.

comment:2 by pramsey, 4 years ago

Resolution: fixed
Status: newclosed

In 17814:

Restrict build for PostgreSQL > 9.6
Closes #4498

Note: See TracTickets for help on using tickets.