From ea91a6be89575095f61ebf36d67c2df98be093db Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 18 Oct 2013 08:14:21 -0400 Subject: [PATCH] Remove IRIX port. Development of IRIX has been discontinued, and support is scheduled to end in December of 2013. Therefore, there will be no supported versions of this operating system by the time PostgreSQL 9.4 is released. Furthermore, we have no maintainer for this platform. --- configure | 2 - configure.in | 2 - doc/src/sgml/dfunc.sgml | 16 -------- doc/src/sgml/installation.sgml | 62 ++---------------------------- src/Makefile.shlib | 10 ----- src/backend/port/dynloader/irix.c | 6 --- src/backend/port/dynloader/irix.h | 46 ---------------------- src/backend/utils/adt/float.c | 64 ------------------------------- src/include/port/irix.h | 7 ---- src/include/storage/s_lock.h | 25 ------------ 10 files changed, 3 insertions(+), 237 deletions(-) delete mode 100644 src/backend/port/dynloader/irix.c delete mode 100644 src/backend/port/dynloader/irix.h delete mode 100644 src/include/port/irix.h diff --git a/configure b/configure index f9da1dec2e..c20afde8db 100755 --- a/configure +++ b/configure @@ -2192,7 +2192,6 @@ case $host_os in dragonfly*) template=netbsd ;; freebsd*) template=freebsd ;; hpux*) template=hpux ;; - irix*) template=irix ;; linux*|gnu*|k*bsd*-gnu) template=linux ;; mingw*) template=win32 ;; @@ -3073,7 +3072,6 @@ fi case $template in aix) pgac_cc_list="gcc xlc";; - irix) pgac_cc_list="cc";; # no gcc *) pgac_cc_list="gcc cc";; esac diff --git a/configure.in b/configure.in index f8c72061ad..d2bab32589 100644 --- a/configure.in +++ b/configure.in @@ -60,7 +60,6 @@ case $host_os in dragonfly*) template=netbsd ;; freebsd*) template=freebsd ;; hpux*) template=hpux ;; - irix*) template=irix ;; linux*|gnu*|k*bsd*-gnu) template=linux ;; mingw*) template=win32 ;; @@ -350,7 +349,6 @@ PGAC_ARG_REQ(with, CC, [CMD], [set compiler (deprecated)], [CC=$with_CC]) case $template in aix) pgac_cc_list="gcc xlc";; - irix) pgac_cc_list="cc";; # no gcc *) pgac_cc_list="gcc cc";; esac diff --git a/doc/src/sgml/dfunc.sgml b/doc/src/sgml/dfunc.sgml index 8e6c95d15c..c24ed37421 100644 --- a/doc/src/sgml/dfunc.sgml +++ b/doc/src/sgml/dfunc.sgml @@ -100,22 +100,6 @@ ld -b -o foo.sl foo.o - - IRIX - IRIXshared library - - - PIC is the default, no special compiler - options are necessary. The linker option to produce shared - libraries is . - -cc -c foo.c -ld -shared -o foo.so foo.o - - - - - Linux Linuxshared library diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index fa9ef17773..2bdb3f10b3 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -1637,8 +1637,8 @@ PostgreSQL, contrib and HTML documentation successfully made. Ready to install. shared libraries. The systems on which this is not necessary include FreeBSD, - HP-UX, IRIX, Linux, + HP-UX, + Linux, NetBSD, OpenBSD, Tru64 UNIX (formerly Digital UNIX), and @@ -1962,7 +1962,7 @@ kill `cat /usr/local/pgsql/data/postmaster.pid` PostgreSQL can be expected to work on these operating systems: Linux (all recent distributions), Windows (Win2000 SP4 and later), - FreeBSD, OpenBSD, NetBSD, Mac OS X, AIX, HP/UX, IRIX, Solaris, Tru64 Unix, + FreeBSD, OpenBSD, NetBSD, Mac OS X, AIX, HP/UX, Solaris, Tru64 Unix, and UnixWare. Other Unix-like systems may also work but are not currently being tested. In most cases, all CPU architectures supported by a given operating system will work. Look in @@ -2532,62 +2532,6 @@ PHSS_30849 s700_800 u2comp/be/plugin library Patch - - IRIX - - - IRIX - installation on - - - - PostgreSQL has been reported to run successfully on MIPS r8000, - r10000 (both ip25 and ip27) and r12000(ip35) processors, running - IRIX 6.5.5m, 6.5.12, 6.5.13, and 6.5.26 with MIPSPro compilers - version 7.30, 7.3.1.2m, 7.3, and 7.4.4m. - - - - You will need the MIPSPro full ANSI C compiler. There are - problems trying to build with GCC. It is a known GCC bug (not - fixed as of version 3.0) related to using functions that return - certain kinds of structures. This bug affects functions like - inet_ntoa, inet_lnaof, inet_netof, inet_makeaddr, - and semctl. It is supposed to be fixed by forcing - code to link those functions with libgcc, but this has not been - tested yet. - - - - It is known that version 7.4.1m of the MIPSPro compiler generates - incorrect code. The symptom is invalid primary checkpoint - record when trying to start the database.) Version 7.4.4m - is OK; the status of intermediate versions is uncertain. - - - - There may be a compilation problem like the following: - -cc-1020 cc: ERROR File = pqcomm.c, Line = 427 - The identifier "TCP_NODELAY" is undefined. - - if (setsockopt(port->sock, IPPROTO_TCP, TCP_NODELAY, - - Some versions include TCP definitions - in sys/xti.h, so it is necessary to - add #include <sys/xti.h> - in src/backend/libpq/pqcomm.c and in - src/interfaces/libpq/fe-connect.c. If you encounter - this, please let us know so we can develop a proper fix. - - - - In the regression tests, there might be some low-order-digit - differences in the geometry tests, depending on which FPU are you - using. Any other error is cause for suspicion. - - - MinGW/Native Windows diff --git a/src/Makefile.shlib b/src/Makefile.shlib index 2a0c7a9d01..4e476c3036 100644 --- a/src/Makefile.shlib +++ b/src/Makefile.shlib @@ -215,16 +215,6 @@ ifeq ($(PORTNAME), hpux) endif endif -ifeq ($(PORTNAME), irix) - ifdef SO_MAJOR_VERSION - shlib = lib$(NAME)$(DLSUFFIX).$(SO_MAJOR_VERSION) - endif - LINK.shared = $(COMPILER) -shared - ifdef soname - LINK.shared += -Wl,-set_version,sgi$(SO_MAJOR_VERSION).$(SO_MINOR_VERSION) - endif -endif - ifeq ($(PORTNAME), linux) LINK.shared = $(COMPILER) -shared ifdef soname diff --git a/src/backend/port/dynloader/irix.c b/src/backend/port/dynloader/irix.c deleted file mode 100644 index df2843a950..0000000000 --- a/src/backend/port/dynloader/irix.c +++ /dev/null @@ -1,6 +0,0 @@ -/* src/backend/port/dynloader/irix.c */ - -/* Dummy file used for nothing at this point - * - * see irix.h - */ diff --git a/src/backend/port/dynloader/irix.h b/src/backend/port/dynloader/irix.h deleted file mode 100644 index d845b16725..0000000000 --- a/src/backend/port/dynloader/irix.h +++ /dev/null @@ -1,46 +0,0 @@ -/*------------------------------------------------------------------------- - * - * irix.h - * port-specific prototypes for Irix - * - * - * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group - * Portions Copyright (c) 1994, Regents of the University of California - * - * src/backend/port/dynloader/irix.h - * - *------------------------------------------------------------------------- - */ -#ifndef PORT_PROTOS_H -#define PORT_PROTOS_H - -#include -#include "utils/dynamic_loader.h" /* pgrminclude ignore */ - -/* - * Dynamic Loader on Irix. - * - * this dynamic loader uses the system dynamic loading interface for shared - * libraries (ie. dlopen/dlsym/dlclose). The user must specify a shared - * library as the file to be dynamically loaded. - */ - -/* - * In some older systems, the RTLD_NOW flag isn't defined and the mode - * argument to dlopen must always be 1. The RTLD_GLOBAL flag is wanted - * if available, but it doesn't exist everywhere. - * If it doesn't exist, set it to 0 so it has no effect. - */ -#ifndef RTLD_NOW -#define RTLD_NOW 1 -#endif -#ifndef RTLD_GLOBAL -#define RTLD_GLOBAL 0 -#endif - -#define pg_dlopen(f) dlopen((f), RTLD_NOW | RTLD_GLOBAL) -#define pg_dlsym dlsym -#define pg_dlclose dlclose -#define pg_dlerror dlerror - -#endif /* PORT_PROTOS_H */ diff --git a/src/backend/utils/adt/float.c b/src/backend/utils/adt/float.c index b6c31c2fd9..54690bddb3 100644 --- a/src/backend/utils/adt/float.c +++ b/src/backend/utils/adt/float.c @@ -294,38 +294,6 @@ float4in(PG_FUNCTION_ARGS) } #endif /* HAVE_BUGGY_SOLARIS_STRTOD */ -#ifdef HAVE_BUGGY_IRIX_STRTOD - - /* - * In some IRIX versions, strtod() recognizes only "inf", so if the input - * is "infinity" we have to skip over "inity". Also, it may return - * positive infinity for "-inf". - */ - if (isinf(val)) - { - if (pg_strncasecmp(num, "Infinity", 8) == 0) - { - val = get_float4_infinity(); - endptr = num + 8; - } - else if (pg_strncasecmp(num, "+Infinity", 9) == 0) - { - val = get_float4_infinity(); - endptr = num + 9; - } - else if (pg_strncasecmp(num, "-Infinity", 9) == 0) - { - val = -get_float4_infinity(); - endptr = num + 9; - } - else if (pg_strncasecmp(num, "-inf", 4) == 0) - { - val = -get_float4_infinity(); - endptr = num + 4; - } - } -#endif /* HAVE_BUGGY_IRIX_STRTOD */ - /* skip trailing whitespace */ while (*endptr != '\0' && isspace((unsigned char) *endptr)) endptr++; @@ -525,38 +493,6 @@ float8in(PG_FUNCTION_ARGS) } #endif /* HAVE_BUGGY_SOLARIS_STRTOD */ -#ifdef HAVE_BUGGY_IRIX_STRTOD - - /* - * In some IRIX versions, strtod() recognizes only "inf", so if the input - * is "infinity" we have to skip over "inity". Also, it may return - * positive infinity for "-inf". - */ - if (isinf(val)) - { - if (pg_strncasecmp(num, "Infinity", 8) == 0) - { - val = get_float8_infinity(); - endptr = num + 8; - } - else if (pg_strncasecmp(num, "+Infinity", 9) == 0) - { - val = get_float8_infinity(); - endptr = num + 9; - } - else if (pg_strncasecmp(num, "-Infinity", 9) == 0) - { - val = -get_float8_infinity(); - endptr = num + 9; - } - else if (pg_strncasecmp(num, "-inf", 4) == 0) - { - val = -get_float8_infinity(); - endptr = num + 4; - } - } -#endif /* HAVE_BUGGY_IRIX_STRTOD */ - /* skip trailing whitespace */ while (*endptr != '\0' && isspace((unsigned char) *endptr)) endptr++; diff --git a/src/include/port/irix.h b/src/include/port/irix.h deleted file mode 100644 index bb05314a79..0000000000 --- a/src/include/port/irix.h +++ /dev/null @@ -1,7 +0,0 @@ -/* src/include/port/irix.h */ - -/* - * IRIX 6.5.26f and 6.5.22f (at least) have a strtod() that accepts - * "infinity", but leaves endptr pointing to "inity". - */ -#define HAVE_BUGGY_IRIX_STRTOD diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h index 1b493ace4f..7dcd5d90b2 100644 --- a/src/include/storage/s_lock.h +++ b/src/include/storage/s_lock.h @@ -836,31 +836,6 @@ typedef unsigned int slock_t; #endif /* HPUX on IA64, non gcc */ - -#if defined(__sgi) /* SGI compiler */ -/* - * SGI IRIX 5 - * slock_t is defined as a unsigned long. We use the standard SGI - * mutex API. - * - * The following comment is left for historical reasons, but is probably - * not a good idea since the mutex ABI is supported. - * - * This stuff may be supplemented in the future with Masato Kataoka's MIPS-II - * assembly from his NECEWS SVR4 port, but we probably ought to retain this - * for the R3000 chips out there. - */ -#define HAS_TEST_AND_SET - -typedef unsigned long slock_t; - -#include "mutex.h" -#define TAS(lock) (test_and_set(lock,1)) -#define S_UNLOCK(lock) (test_then_and(lock,0)) -#define S_INIT_LOCK(lock) (test_then_and(lock,0)) -#define S_LOCK_FREE(lock) (test_then_add(lock,0) == 0) -#endif /* __sgi */ - #if defined(_AIX) /* AIX */ /* * AIX (POWER)