Patch to remove -Dalpha for Alphas... - Mailing list pgsql-hackers

From Ryan Kirkpatrick
Subject Patch to remove -Dalpha for Alphas...
Date
Msg-id Pine.LNX.3.95.980425153638.4385E-200000@farstar.rkirkpat.net
Whole thread Raw
List pgsql-hackers
    Ok, I have finally gotten all of the defines for Dec/Alpha and
Linux/Alpha sorted out as Marc asked. There is no longer any need for
'-Dalpha' or '-Dlinuxalpha' in either the Dec/Alpha or the Linux/Alpha
template files (./src/template/{alpha,linuxalpha}). I have replaced every
instance of 'alpha' or '__alpha__' with '__alpha', as that appears to be
the common symbol between C compilers on both operating systems (RH4.2 &
DecUnix 4.0b) for alpha.
    Attached is the patch against the April 25 snapshot. I have
compiled and tested it on my UDB, and it does as well as straight 6.3.2. I
also compiled the patched version on my Pentium 100, and verified it does
not break anything there (and therefore should not on any other platform,
I hope...). I don't have access to a Dec/Alpha box, so would someone
please test it on such a machine? I don't see any problems occuring, but
it is best to check and make sure.  If there are any problems, send a
detailed description to me and I will get it sorted out. Of course,
patches are fine too. :)
    While this patch doesn't improve the stablity of pgsql on
Linux/Alpha, at least it paves the road, making future improvments easier
and more sane. In the future, I recommend anything that needs to be
'#ifdef'ed as alpha-spefic use the symbol '__alpha' and then everything
should work automatically, with out messing with template files, CFLAGS
lines, or defines!
    Thats about it for now, talk to you all later!

----------------------------------------------------------------------------
|   "For to me to live is Christ, and to die is gain."                     |
|                                            --- Philippians 1:21 (KJV)    |
----------------------------------------------------------------------------
|  Ryan Kirkpatrick  |  Boulder, Colorado  | rkirkpat@nag.cs.colorado.edu  |
----------------------------------------------------------------------------
|               http://www-ugrad.cs.colorado.edu/~rkirkpat/                |
----------------------------------------------------------------------------
diff -uNr pgsql/src/backend/main/main.c pgsql.new/src/backend/main/main.c
--- pgsql/src/backend/main/main.c    Sun Apr 12 02:00:44 1998
+++ pgsql.new/src/backend/main/main.c    Sat Apr 25 09:58:08 1998
@@ -15,7 +15,7 @@
 #include <string.h>
 #include <unistd.h>
 
-#if defined(alpha) && !defined(linux)
+#if defined(__alpha) && !defined(linux)
 #include <sys/sysinfo.h>
 #include <machine/hal_sysinfo.h>
 #define ASSEMBLER
@@ -42,7 +42,7 @@
 {
     int            len;
 
-#if defined(alpha)
+#if defined(__alpha)
 #ifdef NOFIXADE
     int            buffer[] = {SSIN_UACPROC, UAC_SIGBUS};
 
@@ -70,7 +70,7 @@
     syscall(SYS_sysmips, MIPS_FIXADE, 0, NULL, NULL, NULL);
 #endif
 
-#if defined(alpha)
+#if defined(__alpha)
     if (setsysinfo(SSI_NVPAIRS, buffer, 1, (caddr_t) NULL,
                    (unsigned long) NULL) < 0)
     {
diff -uNr pgsql/src/backend/storage/buffer/s_lock.c pgsql.new/src/backend/storage/buffer/s_lock.c
--- pgsql/src/backend/storage/buffer/s_lock.c    Wed Feb 25 22:35:28 1998
+++ pgsql.new/src/backend/storage/buffer/s_lock.c    Sat Apr 25 10:00:23 1998
@@ -37,7 +37,7 @@
 #include "storage/ipc.h"
 #include "storage/s_lock.h"
 
-#if defined(__alpha__) && defined(linux)
+#if defined(__alpha) && defined(linux)
 void
 S_LOCK(slock_t *lock)
 {
diff -uNr pgsql/src/backend/utils/adt/float.c pgsql.new/src/backend/utils/adt/float.c
--- pgsql/src/backend/utils/adt/float.c    Sun Apr 12 02:00:52 1998
+++ pgsql.new/src/backend/utils/adt/float.c    Sat Apr 25 09:59:17 1998
@@ -132,7 +132,7 @@
  * until the distributions are updated.
  *                                --djm 12/16/96
  */
-#if ( defined(linux) && defined(alpha) ) && !defined(UNSAFE_FLOATS)
+#if ( defined(linux) && defined(__alpha) ) && !defined(UNSAFE_FLOATS)
 #define UNSAFE_FLOATS
 #endif
 
diff -uNr pgsql/src/include/port/linux.h pgsql.new/src/include/port/linux.h
--- pgsql/src/include/port/linux.h    Wed Feb 25 22:42:56 1998
+++ pgsql.new/src/include/port/linux.h    Sat Apr 25 10:00:52 1998
@@ -13,7 +13,7 @@
 #if defined(PPC)
 typedef unsigned int slock_t;
 
-#elif defined(__alpha__)
+#elif defined(__alpha)
 typedef long int slock_t;
 
 #else
@@ -42,6 +42,6 @@
 #undef NEED_I386_TAS_ASM
 #endif
 
-#if defined(__alpha__)
+#if defined(__alpha)
 #undef NEED_I386_TAS_ASM
 #endif
diff -uNr pgsql/src/include/storage/s_lock.h pgsql.new/src/include/storage/s_lock.h
--- pgsql/src/include/storage/s_lock.h    Sat Feb 28 22:47:24 1998
+++ pgsql.new/src/include/storage/s_lock.h    Sat Apr 25 10:06:25 1998
@@ -97,7 +97,7 @@
  * (see storage/ipc.h).
  */
 
-#if (defined(__alpha__) || defined(__alpha)) && !defined(linux)
+#if defined(__alpha) && !defined(linux)
 
 #define S_LOCK(lock)    do \
                         { \
@@ -340,7 +340,7 @@
 #endif                            /* NEED_I386_TAS_ASM */
 
 
-#if defined(__alpha__) && defined(linux)
+#if defined(__alpha) && defined(linux)
 
 void        S_LOCK(slock_t *lock);
 
@@ -348,7 +348,7 @@
 
 #define S_INIT_LOCK(lock)    S_UNLOCK(lock)
 
-#endif                            /* defined(__alpha__) && defined(linux) */
+#endif                            /* defined(__alpha) && defined(linux) */
 
 #if defined(linux) && defined(sparc)
 
diff -uNr pgsql/src/include/utils/memutils.h pgsql.new/src/include/utils/memutils.h
--- pgsql/src/include/utils/memutils.h    Sun Apr 12 02:00:53 1998
+++ pgsql.new/src/include/utils/memutils.h    Sat Apr 25 10:02:44 1998
@@ -67,7 +67,7 @@
  */
 #if defined(sun) && ! defined(sparc)
 #define LONGALIGN(LEN)    SHORTALIGN(LEN)
-#elif defined (alpha)
+#elif defined (__alpha)
 
  /*
   * even though "long alignment" should really be on 8-byte boundaries for
diff -uNr pgsql/src/template/alpha pgsql.new/src/template/alpha
--- pgsql/src/template/alpha    Mon Mar 23 02:01:34 1998
+++ pgsql.new/src/template/alpha    Sat Apr 25 10:06:47 1998
@@ -5,7 +5,7 @@
 # This is defined here because a bunch of clients include tmp/c.h,
 # which is where the work is done on HP-UX.  It only affects the
 # backend on Ultrix and OSF/1.
-CFLAGS:-DNOFIXADE -Dalpha
+CFLAGS:-DNOFIXADE
 SHARED_LIB:
 ALL:
 SRCH_INC:
diff -uNr pgsql/src/template/linuxalpha pgsql.new/src/template/linuxalpha
--- pgsql/src/template/linuxalpha    Sun Apr 12 02:00:57 1998
+++ pgsql.new/src/template/linuxalpha    Sat Apr 25 10:06:53 1998
@@ -1,5 +1,5 @@
 AROPT:crs
-CFLAGS:-O2 -Dalpha -Dlinuxalpha
+CFLAGS:-O2
 SHARED_LIB:-fpic
 ALL:
 SRCH_INC:

pgsql-hackers by date:

Previous
From: Bruce Stephens
Date:
Subject: Re: [QUESTIONS] Practical SQL Handbook - demo script for postgreSQL
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] create operator problem