[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Seeking help with porting postgresql+gcc 4 to MIPS



Hi MIPS porters!

postgresql-7.4 and -8.0 built fine with gcc-3.3, but since the gcc 4
switch, they constantly fail on mips and mipsel:

http://buildd.debian.org/fetch.php?&pkg=postgresql-7.4&ver=1%3A7.4.8-14&arch=mips&stamp=1122629954&file=log&as=raw

cc -g -Wall -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes -Wmissing-declarations -L../../src/port  -Wl,-E access/SUBSYS.o bootstrap/SUBSYS.o catalog/SUBSYS.o parser/SUBSYS.o commands/SUBSYS.o executor/SUBSYS.o lib/SUBSYS.o libpq/SUBSYS.o main/SUBSYS.o nodes/SUBSYS.o optimizer/SUBSYS.o port/SUBSYS.o postmaster/SUBSYS.o regex/SUBSYS.o rewrite/SUBSYS.o storage/SUBSYS.o tcop/SUBSYS.o utils/SUBSYS.o -lpam -lssl -lcrypto -lkrb5 -lz -lreadline -lcrypt -lresolv -lnsl -ldl -lm  -lpgport -o postgres
access/SUBSYS.o: In function `GetRedoRecPtr':
/build/buildd/postgresql-7.4-7.4.8/build-tree/postgresql-7.4.8/src/backend/access/transam/xlog.c:3075: undefined reference to `tas'

tas() defines test-and-set for implementing spinlocks efficiently, and
is arch specific. I tried to debug this on casals and vaughan, but
neither host has the postgresql-7.4 build deps installed in the sid
dchroot, and thus I didn't come very far. The definition of the
symbols __mips__ and __sgi (which are tested in s_lock.c) hasn't
changed between 3.3 and 4.0, so this seems to be really tricky.

In a followup upload I tried to disable spinlocks entirely; this
helped for postgresql-8.0, so that this will be slow as hell on mips,
but at least it built. However, it didn't help with 7.4, it is still
FTBFS.

Is anybody of you interested in helping me to fix this? Installing the
-7.4 and 8.0 build dependencies would probably be enough for me to
debug this myself. However, any further help from you is of course
highly appreciated. :-)

Another issue: postgresql-8.0 8.0.3-12 is built on mips for days now,
but the buildd doesn't upload it. This blocks the testing migration
and I don't want to do another upload before the current version is in
Etch. Any idea what causes this?

Thanks in advance for any help and have a nice day!

Martin

-- 
Martin Pitt        http://www.piware.de
Ubuntu Developer   http://www.ubuntu.com
Debian Developer   http://www.debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: