Hi,
Here is a port report for NetBSD 2.0 mac68k, with sources of postgresql8.0.0rc1.
Here is the configure line used :
./configure --prefix=/data/postgresql/pgsql-8.0.0rc1 --with-openssl --with-python --with-perl --with-tcl --with-krb5 --with-pam
But some tweaking was necessary to make it work: * krb5.h is in /usr/include/krb5 on netbsd (set via CPPFLAGS) * krb5_encrypt is to be found in -lkrb5 -ldes -lasn1 -lroken -lcrypto
--enable-thread-safety does not work because the thread safety test fails (src/tools/thread/thread_test)
configure:18831: ./conftest
conftest in free(): error: freelist is destroyed.
[1] Abort trap (core dumped) ./conftest${ac_e...
Then the tas code in src/backend/storage/lmgr/s_lock.c cannot be compiled and linked on this system without modification:
the '_' in front of the tas symbol should be removes, and '%' added in front of register names. I've attached a diff that makes these modifications only for NetBSD mac68k ELF.
With these modifications, make and make install are OK !
template1=# SELECT version();
version
------------------------------------------------------------------------ ---------------------------------
PostgreSQL 8.0.0rc1 on m68k-unknown-netbsdelf2.0, compiled by GCC gcc (GCC) 3.3.3 (NetBSD nb3 20040520)
(1 row)
in make check, two tests fail: float8 and misc. I've attached the regression.diffs file.
Regards,
Rémi Zara
-- Rémi Zara http://www.remi-zara.net/
regression.diffs
Description: Binary data
--- src/backend/storage/lmgr/s_lock.c.orig 2004-12-14 20:50:08.000000000 +0000 +++ src/backend/storage/lmgr/s_lock.c 2004-12-14 20:59:28.000000000 +0000 @@ -136,6 +136,26 @@ #if defined(__m68k__) +#if defined(__NetBSD__) && defined(__ELF__) +static void +tas_dummy() /* really means: extern int tas(slock_t + * **lock); */ +{ + __asm__ __volatile__( + "\ +.global tas \n\ +tas: \n\ + movel %sp@(0x4),%a0 \n\ + tas %a0@ \n\ + beq _success \n\ + moveq #-128,%d0 \n\ + rts \n\ +_success: \n\ + moveq #0,%d0 \n\ + rts \n\ +"); +} +#else static void tas_dummy() /* really means: extern int tas(slock_t * **lock); */ @@ -154,6 +174,7 @@ rts \n\ "); } +#endif /$ __NetBSD__ && __ELF__ */ #endif /* __m68k__ */
smime.p7s
Description: S/MIME cryptographic signature