From eaae21fb4d4b8423dbd26731d9fcd3b3cecf2724 Mon Sep 17 00:00:00 2001
From: "Marc G. Fournier" <scrappy@hub.org>
Date: Sun, 17 Aug 1997 02:40:00 +0000
Subject: [PATCH] Fixes for alphalinux port by abrams@philos.umass.edu

---
 src/backend/storage/ipc/s_lock.c | 14 +++++++++-----
 src/include/port/linux.h         | 12 ++++++++++--
 src/template/.similar            |  1 +
 3 files changed, 20 insertions(+), 7 deletions(-)

diff --git a/src/backend/storage/ipc/s_lock.c b/src/backend/storage/ipc/s_lock.c
index 476bdea6901..d33e91fc39b 100644
--- a/src/backend/storage/ipc/s_lock.c
+++ b/src/backend/storage/ipc/s_lock.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/storage/ipc/Attic/s_lock.c,v 1.16 1997/08/12 22:53:55 momjian Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/storage/ipc/Attic/s_lock.c,v 1.17 1997/08/17 02:39:54 scrappy Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -44,7 +44,11 @@
 
 #if defined(HAS_TEST_AND_SET)
 
+# if defined(__alpha__) && defined(linux)
+extern long int tas(slock_t *lock);
+# else
 extern int tas(slock_t *lock);
+#endif
 
 #if defined (nextstep)
 /*
@@ -126,7 +130,7 @@ S_LOCK_FREE(slock_t *lock)
  * (see storage/ipc.h).
  */
 
-#if defined(alpha) && !defined(linuxalpha)
+#if defined(__alpha__)
 
 void
 S_LOCK(slock_t *lock)
@@ -409,9 +413,9 @@ S_INIT_LOCK(slock_t *lock)
 #endif /* NEED_I386_TAS_ASM */
 
 
-#if defined(linuxalpha)
+#if defined(__alpha__) && defined(linux)
 
-int
+long int
 tas(slock_t *m)
 {
     slock_t res;
@@ -451,7 +455,7 @@ S_INIT_LOCK(slock_t *lock)
     S_UNLOCK(lock);
 }
 
-#endif
+#endif /* defined(__alpha__) && defined(linux) */
 
 #if defined(linux) && defined(sparc)
  
diff --git a/src/include/port/linux.h b/src/include/port/linux.h
index 261ce240a5f..99d8eb65aef 100644
--- a/src/include/port/linux.h
+++ b/src/include/port/linux.h
@@ -12,8 +12,6 @@
 
 #  if defined(PPC)
      typedef unsigned int slock_t;
-#  else
-     typedef unsigned char slock_t;
 #  endif
 
 #  if defined(PPC)
@@ -24,3 +22,13 @@
 #  if defined(sparc)
 #    undef NEED_I386_TAS_ASM
 #  endif
+
+
+#  if defined(__alpha__)
+#    undef NEED_I386_TAS_ASM
+#  endif
+#  if defined(__alpha__)
+     typedef long int slock_t;
+#  else
+     typedef unsigned char slock_t;
+#  endif
diff --git a/src/template/.similar b/src/template/.similar
index 1f5807c033f..444393dc400 100644
--- a/src/template/.similar
+++ b/src/template/.similar
@@ -8,3 +8,4 @@ i386-unknown-netbsd=netbsd
 mips-sgi-irix5=irix5
 sparc-sun-solaris2=sparc_solaris-gcc
 sparc-unknown-linux-gnu=linux-elf
+alpha-unknown-linux-gnu=linuxalpha
-- 
GitLab