Opened 9 years ago

Closed 9 years ago

#3079 closed defect (fixed)

Bot failure building for PostgreSQL 9.5

Reported by: robe Owned by: strk
Priority: blocker Milestone: PostGIS 2.2.0
Component: postgis Version: master
Keywords: pg9.5 Cc:

Description

Debbie's weekly 9.5 regression run failed with this error.

/pg9.5w64/include/postgresql/internal -D_GNU_SOURCE   -c -o lwgeom_geos.o lwgeom_geos.c
lwgeom_geos.c: In function ‘errorIfGeometryCollection’:
lwgeom_geos.c:1730: error: ‘DBL_DIG’ undeclared (first use in this function)
lwgeom_geos.c:1730: error: (Each undeclared identifier is reported only once
lwgeom_geos.c:1730: error: for each function it appears in.)
make[1]: *** [lwgeom_geos.o] Error 1
make[1]: Leaving directory `/var/lib/jenkins/workspace/postgis/regress_pgdev/branches/2.2/postgis'
make: *** [all] Error 1

This is compiling with following:

 PostGIS is now configured for x86_64-unknown-linux-gnu

 -------------- Compiler Info ------------- 
  C compiler:           gcc -g -O2
  C++ compiler:         g++ -g -O2
  SQL preprocessor:     /usr/bin/cpp -traditional-cpp -w -P

 -------------- Dependencies -------------- 
  GEOS config:          /var/lib/jenkins/workspace/geos/rel-3.4.3devw64/bin/geos-config
  GEOS version:         3.4.3dev
  GDAL config:          /var/lib/jenkins/workspace/gdal/rel-2.0w64/bin/gdal-config
  GDAL version:         2.0.0
  PostgreSQL config:    /var/lib/jenkins/workspace/pg/rel/pg9.5w64/bin/pg_config
  PostgreSQL version:   PostgreSQL 9.5devel
  PROJ4 version:        47
  Libxml2 config:       /usr/bin/xml2-config
  Libxml2 version:      2.7.8
  JSON-C support:       yes
  PCRE support:       yes
  PostGIS debug level:  0
  Perl:                 /usr/bin/perl

 --------------- Extensions --------------- 
  PostGIS Raster:       enabled
  PostGIS Topology:     enabled
  SFCGAL support:       disabled
  Address Standardizer support:       enabled

 -------- Documentation Generation -------- 
  xsltproc:             /usr/bin/xsltproc
  xsl style sheets:     /usr/share/xml/docbook/stylesheet/nwalsh
  dblatex:              /usr/bin/dblatex
  convert:              /usr/bin/convert
  mathml2.dtd:          /usr/share/xml/schema/w3c/mathml/dtd/mathml2.dtd

I'll test locally to verify it is a true issue and not something amiss with debbie and that it is 9.5 specific and not a geos error.

Change History (8)

comment:1 by robe, 9 years ago

Owner: changed from pramsey to robe

comment:2 by robe, 9 years ago

Okay just tried building against latest 9.5 snapshot + geos 3.5.0dev on my desktop and have same issue:

PG9~1.5W6/include/internal -I./src/include/port/win32 -DEXEC_BACKEND  "-I/src/in
clude/port/win32" -Ic:/MING64~1/projects/POSTGR~1/rel/PG9~1.5W6/include/server/p
ort/win32  -c -o lwgeom_geos.o lwgeom_geos.c
lwgeom_geos.c:1:0: warning: -fPIC ignored for target (all code is position indep
endent) [enabled by default]
 /**********************************************************************
 ^
lwgeom_geos.c: In function 'errorIfGeometryCollection':
lwgeom_geos.c:1730:46: error: 'DBL_DIG' undeclared (first use in this function)
   hintwkt = lwgeom_to_wkt(lwgeom, WKT_SFSQL, DBL_DIG, &hintsz);
                                              ^
lwgeom_geos.c:1730:46: note: each undeclared identifier is reported only once fo
r each function it appears in
<builtin>: recipe for target `lwgeom_geos.o' failed
make[1]: *** [lwgeom_geos.o] Error 1
make[1]: Leaving directory `/projects/postgis/branches/2.2/postgis'
GNUmakefile:14: recipe for target `all' failed
make: *** [all] Error 1

So does seem to be a recent change in PostgreSQL 9.5 source causing this issue. I should note this is the first week debbie has complained about building 9.5 in a while, so the change must have been something that happened in the past week in 9.5 code base.

comment:4 by robe, 9 years ago

Note from Tom Lane: http://www.postgresql.org/message-id/29884.1426515752@sss.pgh.pa.us


According to the C and POSIX standards, DBL_DIG is defined by <float.h>. It sounds like you were indirectly depending on some Postgres header to #include that, and said header no longer does. I'm not sure what bit of refactoring might've had such an effect, but it doesn't much matter

you really ought to #include <float.h> for yourself.


comment:5 by robe, 9 years ago

Owner: changed from robe to strk

comment:6 by strk, 9 years ago

r13338 in trunk. Is this only in trunk ?

comment:7 by robe, 9 years ago

It probably is same issue in 2.1, but we don't need to support 9.5 in 2.1. There is a possibility though that whatever fix they threw in 9.5, they may put in the micro versions of 9.4 and 9.3, in which case we would need to backport.

comment:8 by robe, 9 years ago

Resolution: fixed
Status: newclosed

okay that fixed the compile issue so closing this out. Now have a raster regress issue.

Note: See TracTickets for help on using tickets.