this one got caught by the testfarm as well - it looks like the openbsd-specific makefile is missing a -fPIC for the Sparc platform(I would assume that at least NetBSD/sparc is affected too but I don't have access to such a system to test on).
And I also think that -shared is now prefered/recommended on OpenBSD/elf too - a small patch implementing those chances is attached and passes regress on my box.
The actual compile failure is in contrib/tsearch2 (because it looks like the postgresql libs itself are small enough to avoid the 8k GOT limit).



Stefan


gmake[1]: Entering directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2'
sed -e 's,MODULE_PATHNAME,$libdir/tsearch2,g' \
-e 's,DATA_PATH,/home/pgbuild/pgbuildfarm/HEAD/inst/share/postgresql/contrib,g' tsearch.sql.in >tsearch2.sql
cp untsearch.sql.in untsearch2.sql
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict_ex.o dict_ex.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict.o dict.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o snmap.o snmap.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o stopword.o stopword.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o common.o common.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o prs_dcfg.o prs_dcfg.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict_snowball.o dict_snowball.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict_ispell.o dict_ispell.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o dict_syn.o dict_syn.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o wparser.o wparser.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o wparser_def.o wparser_def.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o ts_cfg.o ts_cfg.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o tsvector.o tsvector.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o rewrite.o rewrite.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o crc32.o crc32.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o query.o query.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o gistidx.o gistidx.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o tsvector_op.o tsvector_op.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o rank.o rank.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./snowball -I./ispell -I./wordparser -I. -I../../src/include -c -o ts_stat.o ts_stat.c
gmake -C snowball SUBSYS.o
gmake[2]: Entering directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/snowball'
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o english_stem.o english_stem.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o api.o api.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o russian_stem.o russian_stem.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o utilities.o utilities.c
/usr/bin/ld -r -o SUBSYS.o english_stem.o api.o russian_stem.o utilities.o
gmake[2]: Leaving directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/snowball'
gmake -C ispell SUBSYS.o
gmake[2]: Entering directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/ispell'
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -I. -I../../../src/include -c -o spell.o spell.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -I. -I../../../src/include -c -o regis.o regis.c
/usr/bin/ld -r -o SUBSYS.o spell.o regis.o
gmake[2]: Leaving directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/ispell'
gmake -C wordparser SUBSYS.o
gmake[2]: Entering directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/wordparser'
/usr/bin/flex -8 -Ptsearch2_yy -o'parser.c' parser.l
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o parser.o parser.c
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -I./.. -I. -I../../../src/include -c -o deflex.o deflex.c
/usr/bin/ld -r -o SUBSYS.o parser.o deflex.o
gmake[2]: Leaving directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/wordparser'
ar cr libtsearch2.a `lorder dict_ex.o dict.o snmap.o stopword.o common.o prs_dcfg.o dict_snowball.o dict_ispell.o dict_syn.o wparser.o wparser_def.o ts_cfg.o tsvector.o rewrite.o crc32.o query.o gistidx.o tsvector_op.o rank.o ts_stat.o snowball/SUBSYS.o ispell/SUBSYS.o wordparser/SUBSYS.o | tsort`
tsort: cycle in data
tsort: wparser.o
tsort: ts_cfg.o
tsort: cycle in data
tsort: dict.o
tsort: snmap.o
tsort: common.o
tsort: cycle in data
tsort: ts_cfg.o
tsort: common.o
ranlib libtsearch2.a
gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -fpic -DPIC -shared -Wl,-x,-soname,libtsearch2.so.0 dict_ex.o dict.o snmap.o stopword.o common.o prs_dcfg.o dict_snowball.o dict_ispell.o dict_syn.o wparser.o wparser_def.o ts_cfg.o tsvector.o rewrite.o crc32.o query.o gistidx.o tsvector_op.o rank.o ts_stat.o snowball/SUBSYS.o ispell/SUBSYS.o wordparser/SUBSYS.o -L../../src/port -lm -lc -o libtsearch2.so.0.0
wordparser/SUBSYS.o(.text+0x1590): In function `yy_fatal_error':
/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/wordparser/parser.c:2055: relocation truncated to fit: R_SPARC_GOT13 .LLC11
wordparser/SUBSYS.o(.text+0x164c): In function `tsearch2_end_parse':
/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/wordparser/parser.l:324: relocation truncated to fit: R_SPARC_GOT13 buf
wordparser/SUBSYS.o(.text+0x1690): In function `tsearch2_start_parse_str':
/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2/wordparser/parser.l:330: relocation truncated to fit: R_SPARC_GOT13 buf
collect2: ld returned 1 exit status
gmake[1]: *** [libtsearch2.so.0.0] Error 1
gmake[1]: Leaving directory `/home/pgbuild/pgbuildfarm/HEAD/pgsql.8969/contrib/tsearch2'
gmake: *** [all] Error 2
Index: src/makefiles/Makefile.openbsd
===================================================================
RCS file: /projects/cvsroot/pgsql-server/src/makefiles/Makefile.openbsd,v
retrieving revision 1.8
diff -u -r1.8 Makefile.openbsd
--- src/makefiles/Makefile.openbsd      29 Aug 2001 19:14:40 -0000      1.8
+++ src/makefiles/Makefile.openbsd      4 Oct 2004 21:13:50 -0000
@@ -7,11 +7,17 @@
 endif
 
 DLSUFFIX = .so
-CFLAGS_SL = -fpic -DPIC
+
+ifeq "$(findstring sparc,$(host_cpu))" "sparc"
+CFLAGS_SL = -fPIC
+else
+CFLAGS_SL = -fpic
+endif
+
 
 %.so: %.o
 ifdef ELF_SYSTEM
-       $(LD) -x -Bshareable -o $@ $<
+       $(CC) -shared -o $@ $<
 else
        $(LD) $(LDREL) $(LDOUT) $<.obj -x $<
        @echo building shared object $@
---------------------------(end of broadcast)---------------------------
TIP 7: don't forget to increase your free space map settings

Reply via email to