On Sat, 30 Dec 2000, Tom Lane wrote: [snipped header] > "Thomas T. Thai" <[EMAIL PROTECTED]> writes: > > i grabbed the CVS ball last night and tried to build it. i'm attaching a > > patch that made it possible to build -current on NetBSD/Alpha > > 1.5.1_ALPHA. > > Partially applied, per comments below. > > > after install, i did the regression test and it failed in the same way > > that 7.0.3+rkirkpat.patch did as described below (copy of my last post). > > Hmm, no idea what's going on here. Could you compile with -g and then > use gdb to track the reported PC addresses to particular source lines? > That might give us a clue. will do. > --- /usr/local/source/postgresql/pgsql/src/backend/main/main.c Fri Nov 24 >21:45:47 2000 > +++ /usr/local/build/pgsql-current/src/backend/main/main.c Sat Dec 30 15:06:34 >2000 > > -#if defined(__alpha) && !defined(linux) && !defined(__FreeBSD__) > +#if defined(__alpha) && !defined(linux) && !defined(__FreeBSD__) && >!defined(__NetBSD__) > #include <sys/sysinfo.h> > #include "machine/hal_sysinfo.h" > Applied, but I begin to think that we should be testing here for the > *presence* of a Tru64 symbol, rather than the absence of a bunch of > other OSes. Anyone know what would be suitable? i don't know what the symbol might be. > +#include <sys/param.h> > > I inserted this conditionally on #if defined(__NetBSD__). It seems > a bad idea to risk breaking other ports to fix yours. agreed. > --- /usr/local/source/postgresql/pgsql/src/include/port/netbsd.h Sun Oct 29 >07:17:34 2000 > +++ /usr/local/build/pgsql-current/src/include/port/netbsd.h Sat Dec 30 14:59:06 >2000 > > netbsd.h changes look good, applied. > > --- /usr/local/source/postgresql/pgsql/src/include/storage/s_lock.h Fri Dec 29 >20:34:56 2000 > +++ /usr/local/build/pgsql-current/src/include/storage/s_lock.h Sat Dec 30 >14:59:37 2000 > @@ -241,7 +241,17 @@ > #if defined(NEED_NS32K_TAS_ASM) > #define TAS(lock) tas(lock) > > +#if defined(__GNUC__) > +/* > + * GCC on the Alpha doesn't appear to handle inlining of assembly with > + * %0 or %1 properly. This removes the inlining of the tas (test-and-set) > + * function, which probably slows things down considerably, but correctness > + * first! > + */ > +static int > +#else > static __inline__ int > +#endif > tas(volatile slock_t *lock) > { > register _res; > > Uh, why are you altering NS32K code in an Alpha patch? I did not apply > this. cause egcs on NetBSD/Alpha will give lots of error during compile. we don't have gcc 2.95.2 on the alpha working yet.