changeset 107439:ed20cbe62401

Remove support for Solaris on PPC and for old versions. * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h. (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef that cancel each other. * s/sol2-3.h: * s/sol2-4.h: * s/sol2-5.h: Remove. * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX. (NO_REMAP): Remove, unused. (UNEXEC): Move definition ... * s/aix4-2.h (UNEXEC): ... here. * configure.in: Remove support for Solaris on PPC and for old versions.
author Dan Nicolaescu <dann@ics.uci.edu>
date Fri, 19 Mar 2010 22:52:55 -0700
parents 19fdc244bab9
children a83a89ef11ef
files ChangeLog configure.in src/ChangeLog src/m/ibmrs6000.h src/s/aix4-2.h src/s/sol2-3.h src/s/sol2-4.h src/s/sol2-5.h src/s/sol2-6.h
diffstat 9 files changed, 144 insertions(+), 200 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Mar 19 22:18:05 2010 -0700
+++ b/ChangeLog	Fri Mar 19 22:52:55 2010 -0700
@@ -1,5 +1,6 @@
 2010-03-20  Dan Nicolaescu  <dann@ics.uci.edu>
 
+	* configure.in:	Remove support for Solaris on PPC and for old versions.
 	* configure.in: Remove non-working lynxos port.
 
 2010-03-19  Dan Nicolaescu  <dann@ics.uci.edu>
--- a/configure.in	Fri Mar 19 22:18:05 2010 -0700
+++ b/configure.in	Fri Mar 19 22:52:55 2010 -0700
@@ -541,30 +541,14 @@
 
   *-sun-solaris* \
     | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* \
-    | x86_64-*-solaris2*    | x86_64-*-sunos5*    \
-    | powerpc*-*-solaris2*  | rs6000-*-solaris2*)
+    | x86_64-*-solaris2*    | x86_64-*-sunos5*)
     case "${canonical}" in
       i[3456]86-*-* )     machine=intel386 ;;
       amd64-*-*|x86_64-*-*)	machine=amdx86-64 ;;
-      powerpc* | rs6000* )  machine=ibmrs6000 ;;
       sparc* )		machine=sparc ;;
       * )		unported=yes ;;
     esac
     case "${canonical}" in
-      *-sunos5.3* | *-solaris2.3* )
-		opsys=sol2-3
-		NON_GNU_CPP=/usr/ccs/lib/cpp
-		;;
-      *-sunos5.4* | *-solaris2.4* )
-		opsys=sol2-4
-		NON_GNU_CPP=/usr/ccs/lib/cpp
-		RANLIB="ar -ts"
-		;;
-      *-sunos5.5* | *-solaris2.5* )
-		opsys=sol2-5
-		NON_GNU_CPP=/usr/ccs/lib/cpp
-		RANLIB="ar -ts"
-		;;
       *-sunos5.6* | *-solaris2.6* )
 		opsys=sol2-6
 		NON_GNU_CPP=/usr/ccs/lib/cpp
--- a/src/ChangeLog	Fri Mar 19 22:18:05 2010 -0700
+++ b/src/ChangeLog	Fri Mar 19 22:52:55 2010 -0700
@@ -1,5 +1,17 @@
 2010-03-20  Dan Nicolaescu  <dann@ics.uci.edu>
 
+	Remove support for Solaris on PPC and for old versions.
+	* s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
+	(LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
+	that cancel each other.
+	* s/sol2-3.h:
+	* s/sol2-4.h:
+	* s/sol2-5.h: Remove.
+	* m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
+	(NO_REMAP): Remove, unused.
+	(UNEXEC): Move definition ...
+	* s/aix4-2.h (UNEXEC): ... here.
+
 	* s/openbsd.h: Remove support for non-ELF and for systems that do
 	not support shared libraries.
 	* s/netbsd.h:
--- a/src/m/ibmrs6000.h	Fri Mar 19 22:18:05 2010 -0700
+++ b/src/m/ibmrs6000.h	Fri Mar 19 22:52:55 2010 -0700
@@ -32,19 +32,10 @@
 
 #define IBMR2AIX
 
-#ifndef UNEXEC
-#define UNEXEC unexaix.o
-#endif
-
-/* Define addresses, macros, change some setup for dump */
-
-#define NO_REMAP
-
 /* The data segment in this machine always starts at address 0x20000000.
    An address of data cannot be stored correctly in a Lisp object;
    we always lose the high bits.  We must tell XPNTR to add them back.  */
 
-#ifndef USG5_4
 #define TEXT_START 0x10000000
 #define DATA_START 0x20000000
 #define WORDS_BIG_ENDIAN
@@ -75,12 +66,6 @@
 #define LIBS_MACHINE -lrts -lIM -liconv
 #endif
 
-#else /* USG5_4 */
-#undef WORDS_BIG_ENDIAN
-#define DATA_SEG_BITS 0
-#define LIBS_MACHINE
-#endif /* USG5_4 */
-
 #undef ADDR_CORRECT
 #define ADDR_CORRECT(x) ((int)(x))
 
--- a/src/s/aix4-2.h	Fri Mar 19 22:18:05 2010 -0700
+++ b/src/s/aix4-2.h	Fri Mar 19 22:52:55 2010 -0700
@@ -168,5 +168,7 @@
 */
 #define BROKEN_GET_CURRENT_DIR_NAME 1
 
+#define UNEXEC unexaix.o
+
 /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562
    (do not change this comment) */
--- a/src/s/sol2-3.h	Fri Mar 19 22:18:05 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,98 +0,0 @@
-/* Definitions file for GNU Emacs running on Solaris 2.3.
-
-   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
-                 2008, 2009, 2010  Free Software Foundation, Inc.
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
-
-#include "usg5-4.h"
-
-#define SOLARIS2
-
-/* This triggers a conditional in xfaces.c.  */
-#define XOS_NEEDS_TIME_H
-
-#define POSIX
-
-#define LIBS_SYSTEM -lsocket -lnsl -lkstat
-
-/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
-   ghazi@caip.rutgers.edu, 7/21/97.  Don't redefine if already defined
-   (e.g., by config.h). */
-#ifndef HAVE_LIBKSTAT
-#define HAVE_LIBKSTAT
-#endif
-
-/* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
-   XIM support.  */
-
-#define INHIBIT_X11R6_XIM
-
-/* Must use the system's termcap, if we use any termcap.
-   It does special things.  */
-
-#ifndef TERMINFO
-#define LIBS_TERMCAP -ltermcap
-#endif
-
-#define USE_MMAP_FOR_BUFFERS 1
-
-#ifndef __GNUC__
-#define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX
-/* eggert thinks all versions of SunPro C allowed this.  */
-#define C_DEBUG_SWITCH -g -O
-#else /* GCC */
-/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
-   has anything in it.  It can be empty.
-   This works ok in src.  Luckily lib-src does not use LD_SWITCH_SYSTEM.  */
-#define LD_SWITCH_SYSTEM -L /usr/ccs/lib \
- `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX`
-#endif /* GCC */
-
-/* Info from fnf@cygnus.com suggests this is appropriate.  */
-#define POSIX_SIGNALS
-
-/* We don't need the definition from usg5-4.h with POSIX_SIGNALS.  */
-#undef sigsetmask
-
-/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
-   rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
-   work if POSIX_SIGNALS is defined.  It may also be appropriate for SVR4.x
-   (x<2) but I'm not sure.   fnf@cygnus.com */
-/* This sets the name of the slave side of the PTY.  On SysVr4,
-   grantpt(3) forks a subprocess, so keep sigchld_handler() from
-   intercepting that death.  If any child but grantpt's should die
-   within, it should be caught after sigrelse(2). */
-
-#undef PTY_TTY_NAME_SPRINTF
-#define PTY_TTY_NAME_SPRINTF			\
-  {						\
-    char *ptsname (), *ptyname;			\
-						\
-    sigblock (sigmask (SIGCLD));		\
-    if (grantpt (fd) == -1)			\
-      { emacs_close (fd); return -1; }		\
-    sigunblock (sigmask (SIGCLD));		\
-    if (unlockpt (fd) == -1)			\
-      { emacs_close (fd); return -1; }		\
-    if (!(ptyname = ptsname (fd)))		\
-      { emacs_close (fd); return -1; }		\
-    strncpy (pty_name, ptyname, sizeof (pty_name)); \
-    pty_name[sizeof (pty_name) - 1] = 0;	\
-  }
-
-/* arch-tag: a8fe2e15-e517-49cb-a863-f346b80885fe
-   (do not change this comment) */
--- a/src/s/sol2-4.h	Fri Mar 19 22:18:05 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/* Handle Solaris 2.4.  */
-
-#include "sol2-3.h"
-
-#undef LD_SWITCH_SYSTEM
-
-/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet.
-   Instead, dynamically check whether USE_MOTIF expands to something.  */
-#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; }
-
-#ifndef __GNUC__
-#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \
-  `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'`
-#else /* GCC */
-/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
-   has anything in it.  It can be empty.
-   This works ok in temacs.  */
-#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \
- `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \
-  `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'`
-
-/* Get rid of -traditional and let const really do its thing.  */
-#undef C_SWITCH_SYSTEM
-#undef const
-#endif /* GCC */
-
-/* Gregory Neil Shapiro <gshapiro@hhmi.org> reports the Motif header files
-   are in this directory on Solaris 2.4.  */
-#define C_SWITCH_X_SYSTEM -I/usr/dt/include
-
-/* arch-tag: 6f0de37b-cfda-427a-a5ae-b83ed54aaae7
-   (do not change this comment) */
--- a/src/s/sol2-5.h	Fri Mar 19 22:18:05 2010 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,32 +0,0 @@
-/* Handle Solaris 2.5.  */
-
-#include "sol2-4.h"
-
-/* -lgen is needed for the regex and regcmp functions
-   which are used by Motif.  In the future we can try changing
-   regex.c to provide them in Emacs, but this is safer for now.  */
-#define LIB_MOTIF -lXm -lgen
-
-/* This is the only known way to avoid some crashes
-   that seem to relate to screwed up malloc data
-   after deleting a frame.  */
-/* rms: I think the problems using ralloc had to do with system
-   libraries that called the system malloc even if we linked in the
-   GNU malloc.  I could not see any way to fix the problem except to
-   have just one malloc and that had to be the system one.  */
-/* This is not always necessary.  Turned off at present for testers to
-   identify any problems with gmalloc more accurately.  */
-/* #define SYSTEM_MALLOC */
-
-/* There have problems reported with mmap at least on Solaris 2.6
-   and 2.7.  For simplicity, let's not use mmap for anything >= 2.5.
-   We can optimize this later.  */
-
-#undef USE_MMAP_FOR_BUFFERS
-
-/* Probably OK also on earlier versions.  */
-#define GC_SETJMP_WORKS 1
-#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
-
-/* arch-tag: 96d65526-21c9-4547-a797-2bd575c05be7
-   (do not change this comment) */
--- a/src/s/sol2-6.h	Fri Mar 19 22:18:05 2010 -0700
+++ b/src/s/sol2-6.h	Fri Mar 19 22:52:55 2010 -0700
@@ -1,11 +1,133 @@
-/* Handle Solaris 2.6.  */
+/* Definitions file for GNU Emacs running on Solaris 2.6.
+
+   Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
+                 2008, 2009, 2010  Free Software Foundation, Inc.
+
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
+
+#include "usg5-4.h"
+
+#define SOLARIS2
+
+/* This triggers a conditional in xfaces.c.  */
+#define XOS_NEEDS_TIME_H
+
+#define POSIX
 
-#include "sol2-5.h"
+#define LIBS_SYSTEM -lsocket -lnsl -lkstat
+
+/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
+   ghazi@caip.rutgers.edu, 7/21/97.  Don't redefine if already defined
+   (e.g., by config.h). */
+#ifndef HAVE_LIBKSTAT
+#define HAVE_LIBKSTAT
+#endif
+
+/* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
+   XIM support.  */
+
+#define INHIBIT_X11R6_XIM
+
+/* Must use the system's termcap, if we use any termcap.
+   It does special things.  */
+
+#ifndef TERMINFO
+#define LIBS_TERMCAP -ltermcap
+#endif
+
+#ifndef __GNUC__
+/* eggert thinks all versions of SunPro C allowed this.  */
+#define C_DEBUG_SWITCH -g -O
+#endif /* GCC */
+
+/* Info from fnf@cygnus.com suggests this is appropriate.  */
+#define POSIX_SIGNALS
+
+/* We don't need the definition from usg5-4.h with POSIX_SIGNALS.  */
+#undef sigsetmask
 
-#if 0 /* dldump does not handle all the extensions used by GNU ld.  */
-#undef UNEXEC
-#define UNEXEC unexsol.o
-#endif
+/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
+   rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
+   work if POSIX_SIGNALS is defined.  It may also be appropriate for SVR4.x
+   (x<2) but I'm not sure.   fnf@cygnus.com */
+/* This sets the name of the slave side of the PTY.  On SysVr4,
+   grantpt(3) forks a subprocess, so keep sigchld_handler() from
+   intercepting that death.  If any child but grantpt's should die
+   within, it should be caught after sigrelse(2). */
+
+#undef PTY_TTY_NAME_SPRINTF
+#define PTY_TTY_NAME_SPRINTF			\
+  {						\
+    char *ptsname (), *ptyname;			\
+						\
+    sigblock (sigmask (SIGCLD));		\
+    if (grantpt (fd) == -1)			\
+      { emacs_close (fd); return -1; }		\
+    sigunblock (sigmask (SIGCLD));		\
+    if (unlockpt (fd) == -1)			\
+      { emacs_close (fd); return -1; }		\
+    if (!(ptyname = ptsname (fd)))		\
+      { emacs_close (fd); return -1; }		\
+    strncpy (pty_name, ptyname, sizeof (pty_name)); \
+    pty_name[sizeof (pty_name) - 1] = 0;	\
+  }
+
+/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet.
+   Instead, dynamically check whether USE_MOTIF expands to something.  */
+#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; }
+
+#ifndef __GNUC__
+#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \
+  `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'`
+#else /* GCC */
+/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
+   has anything in it.  It can be empty.
+   This works ok in temacs.  */
+#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \
+ `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \
+  `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'`
+
+/* Get rid of -traditional and let const really do its thing.  */
+#undef C_SWITCH_SYSTEM
+#undef const
+#endif /* GCC */
+
+/* Gregory Neil Shapiro <gshapiro@hhmi.org> reports the Motif header files
+   are in this directory on Solaris 2.4.  */
+#define C_SWITCH_X_SYSTEM -I/usr/dt/include
+
+/* -lgen is needed for the regex and regcmp functions
+   which are used by Motif.  In the future we can try changing
+   regex.c to provide them in Emacs, but this is safer for now.  */
+#define LIB_MOTIF -lXm -lgen
+
+/* This is the only known way to avoid some crashes
+   that seem to relate to screwed up malloc data
+   after deleting a frame.  */
+/* rms: I think the problems using ralloc had to do with system
+   libraries that called the system malloc even if we linked in the
+   GNU malloc.  I could not see any way to fix the problem except to
+   have just one malloc and that had to be the system one.  */
+/* This is not always necessary.  Turned off at present for testers to
+   identify any problems with gmalloc more accurately.  */
+/* #define SYSTEM_MALLOC */
+
+/* Probably OK also on earlier versions.  */
+#define GC_SETJMP_WORKS 1
+#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
 
 /* arch-tag: 71ea3857-89dc-4395-9623-77964e6ed3ca
    (do not change this comment) */