aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Nicolaescu2010-03-19 22:52:55 -0700
committerDan Nicolaescu2010-03-19 22:52:55 -0700
commit07e339e488589f3f5e5e0623925cd980b3d75232 (patch)
tree73fb3d18740a8450c1c652268c7b8dfa5d8a901e
parent7f110ddcb0e4665ac828be714c1bf9d81991dc9c (diff)
downloademacs-07e339e488589f3f5e5e0623925cd980b3d75232.tar.gz
emacs-07e339e488589f3f5e5e0623925cd980b3d75232.zip
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.
-rw-r--r--ChangeLog1
-rw-r--r--configure.in18
-rw-r--r--src/ChangeLog12
-rw-r--r--src/m/ibmrs6000.h15
-rw-r--r--src/s/aix4-2.h2
-rw-r--r--src/s/sol2-3.h98
-rw-r--r--src/s/sol2-4.h32
-rw-r--r--src/s/sol2-5.h32
-rw-r--r--src/s/sol2-6.h132
9 files changed, 143 insertions, 199 deletions
diff --git a/ChangeLog b/ChangeLog
index 7ea7a223922..1a942707fa9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,6 @@
12010-03-20 Dan Nicolaescu <dann@ics.uci.edu> 12010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2 2
3 * configure.in: Remove support for Solaris on PPC and for old versions.
3 * configure.in: Remove non-working lynxos port. 4 * configure.in: Remove non-working lynxos port.
4 5
52010-03-19 Dan Nicolaescu <dann@ics.uci.edu> 62010-03-19 Dan Nicolaescu <dann@ics.uci.edu>
diff --git a/configure.in b/configure.in
index 869deec37b1..db48df4d3a0 100644
--- a/configure.in
+++ b/configure.in
@@ -541,30 +541,14 @@ dnl see the `changequote' comment above.
541 541
542 *-sun-solaris* \ 542 *-sun-solaris* \
543 | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* \ 543 | i[3456]86-*-solaris2* | i[3456]86-*-sunos5* \
544 | x86_64-*-solaris2* | x86_64-*-sunos5* \ 544 | x86_64-*-solaris2* | x86_64-*-sunos5*)
545 | powerpc*-*-solaris2* | rs6000-*-solaris2*)
546 case "${canonical}" in 545 case "${canonical}" in
547 i[3456]86-*-* ) machine=intel386 ;; 546 i[3456]86-*-* ) machine=intel386 ;;
548 amd64-*-*|x86_64-*-*) machine=amdx86-64 ;; 547 amd64-*-*|x86_64-*-*) machine=amdx86-64 ;;
549 powerpc* | rs6000* ) machine=ibmrs6000 ;;
550 sparc* ) machine=sparc ;; 548 sparc* ) machine=sparc ;;
551 * ) unported=yes ;; 549 * ) unported=yes ;;
552 esac 550 esac
553 case "${canonical}" in 551 case "${canonical}" in
554 *-sunos5.3* | *-solaris2.3* )
555 opsys=sol2-3
556 NON_GNU_CPP=/usr/ccs/lib/cpp
557 ;;
558 *-sunos5.4* | *-solaris2.4* )
559 opsys=sol2-4
560 NON_GNU_CPP=/usr/ccs/lib/cpp
561 RANLIB="ar -ts"
562 ;;
563 *-sunos5.5* | *-solaris2.5* )
564 opsys=sol2-5
565 NON_GNU_CPP=/usr/ccs/lib/cpp
566 RANLIB="ar -ts"
567 ;;
568 *-sunos5.6* | *-solaris2.6* ) 552 *-sunos5.6* | *-solaris2.6* )
569 opsys=sol2-6 553 opsys=sol2-6
570 NON_GNU_CPP=/usr/ccs/lib/cpp 554 NON_GNU_CPP=/usr/ccs/lib/cpp
diff --git a/src/ChangeLog b/src/ChangeLog
index 14723c49df2..e17c9a2abe1 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,17 @@
12010-03-20 Dan Nicolaescu <dann@ics.uci.edu> 12010-03-20 Dan Nicolaescu <dann@ics.uci.edu>
2 2
3 Remove support for Solaris on PPC and for old versions.
4 * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h.
5 (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef
6 that cancel each other.
7 * s/sol2-3.h:
8 * s/sol2-4.h:
9 * s/sol2-5.h: Remove.
10 * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX.
11 (NO_REMAP): Remove, unused.
12 (UNEXEC): Move definition ...
13 * s/aix4-2.h (UNEXEC): ... here.
14
3 * s/openbsd.h: Remove support for non-ELF and for systems that do 15 * s/openbsd.h: Remove support for non-ELF and for systems that do
4 not support shared libraries. 16 not support shared libraries.
5 * s/netbsd.h: 17 * s/netbsd.h:
diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h
index 757db149ed2..4304ea90cd0 100644
--- a/src/m/ibmrs6000.h
+++ b/src/m/ibmrs6000.h
@@ -32,19 +32,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
32 32
33#define IBMR2AIX 33#define IBMR2AIX
34 34
35#ifndef UNEXEC
36#define UNEXEC unexaix.o
37#endif
38
39/* Define addresses, macros, change some setup for dump */
40
41#define NO_REMAP
42
43/* The data segment in this machine always starts at address 0x20000000. 35/* The data segment in this machine always starts at address 0x20000000.
44 An address of data cannot be stored correctly in a Lisp object; 36 An address of data cannot be stored correctly in a Lisp object;
45 we always lose the high bits. We must tell XPNTR to add them back. */ 37 we always lose the high bits. We must tell XPNTR to add them back. */
46 38
47#ifndef USG5_4
48#define TEXT_START 0x10000000 39#define TEXT_START 0x10000000
49#define DATA_START 0x20000000 40#define DATA_START 0x20000000
50#define WORDS_BIG_ENDIAN 41#define WORDS_BIG_ENDIAN
@@ -75,12 +66,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
75#define LIBS_MACHINE -lrts -lIM -liconv 66#define LIBS_MACHINE -lrts -lIM -liconv
76#endif 67#endif
77 68
78#else /* USG5_4 */
79#undef WORDS_BIG_ENDIAN
80#define DATA_SEG_BITS 0
81#define LIBS_MACHINE
82#endif /* USG5_4 */
83
84#undef ADDR_CORRECT 69#undef ADDR_CORRECT
85#define ADDR_CORRECT(x) ((int)(x)) 70#define ADDR_CORRECT(x) ((int)(x))
86 71
diff --git a/src/s/aix4-2.h b/src/s/aix4-2.h
index 29a68dbf6e3..a1abf13466d 100644
--- a/src/s/aix4-2.h
+++ b/src/s/aix4-2.h
@@ -168,5 +168,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
168*/ 168*/
169#define BROKEN_GET_CURRENT_DIR_NAME 1 169#define BROKEN_GET_CURRENT_DIR_NAME 1
170 170
171#define UNEXEC unexaix.o
172
171/* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562 173/* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562
172 (do not change this comment) */ 174 (do not change this comment) */
diff --git a/src/s/sol2-3.h b/src/s/sol2-3.h
deleted file mode 100644
index fa05aa45b67..00000000000
--- a/src/s/sol2-3.h
+++ /dev/null
@@ -1,98 +0,0 @@
1/* Definitions file for GNU Emacs running on Solaris 2.3.
2
3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
4 2008, 2009, 2010 Free Software Foundation, Inc.
5
6This file is part of GNU Emacs.
7
8GNU Emacs is free software: you can redistribute it and/or modify
9it under the terms of the GNU General Public License as published by
10the Free Software Foundation, either version 3 of the License, or
11(at your option) any later version.
12
13GNU Emacs is distributed in the hope that it will be useful,
14but WITHOUT ANY WARRANTY; without even the implied warranty of
15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16GNU General Public License for more details.
17
18You should have received a copy of the GNU General Public License
19along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
20
21#include "usg5-4.h"
22
23#define SOLARIS2
24
25/* This triggers a conditional in xfaces.c. */
26#define XOS_NEEDS_TIME_H
27
28#define POSIX
29
30#define LIBS_SYSTEM -lsocket -lnsl -lkstat
31
32/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
33 ghazi@caip.rutgers.edu, 7/21/97. Don't redefine if already defined
34 (e.g., by config.h). */
35#ifndef HAVE_LIBKSTAT
36#define HAVE_LIBKSTAT
37#endif
38
39/* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
40 XIM support. */
41
42#define INHIBIT_X11R6_XIM
43
44/* Must use the system's termcap, if we use any termcap.
45 It does special things. */
46
47#ifndef TERMINFO
48#define LIBS_TERMCAP -ltermcap
49#endif
50
51#define USE_MMAP_FOR_BUFFERS 1
52
53#ifndef __GNUC__
54#define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX
55/* eggert thinks all versions of SunPro C allowed this. */
56#define C_DEBUG_SWITCH -g -O
57#else /* GCC */
58/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
59 has anything in it. It can be empty.
60 This works ok in src. Luckily lib-src does not use LD_SWITCH_SYSTEM. */
61#define LD_SWITCH_SYSTEM -L /usr/ccs/lib \
62 `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX`
63#endif /* GCC */
64
65/* Info from fnf@cygnus.com suggests this is appropriate. */
66#define POSIX_SIGNALS
67
68/* We don't need the definition from usg5-4.h with POSIX_SIGNALS. */
69#undef sigsetmask
70
71/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
72 rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
73 work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x
74 (x<2) but I'm not sure. fnf@cygnus.com */
75/* This sets the name of the slave side of the PTY. On SysVr4,
76 grantpt(3) forks a subprocess, so keep sigchld_handler() from
77 intercepting that death. If any child but grantpt's should die
78 within, it should be caught after sigrelse(2). */
79
80#undef PTY_TTY_NAME_SPRINTF
81#define PTY_TTY_NAME_SPRINTF \
82 { \
83 char *ptsname (), *ptyname; \
84 \
85 sigblock (sigmask (SIGCLD)); \
86 if (grantpt (fd) == -1) \
87 { emacs_close (fd); return -1; } \
88 sigunblock (sigmask (SIGCLD)); \
89 if (unlockpt (fd) == -1) \
90 { emacs_close (fd); return -1; } \
91 if (!(ptyname = ptsname (fd))) \
92 { emacs_close (fd); return -1; } \
93 strncpy (pty_name, ptyname, sizeof (pty_name)); \
94 pty_name[sizeof (pty_name) - 1] = 0; \
95 }
96
97/* arch-tag: a8fe2e15-e517-49cb-a863-f346b80885fe
98 (do not change this comment) */
diff --git a/src/s/sol2-4.h b/src/s/sol2-4.h
deleted file mode 100644
index df8552e9562..00000000000
--- a/src/s/sol2-4.h
+++ /dev/null
@@ -1,32 +0,0 @@
1/* Handle Solaris 2.4. */
2
3#include "sol2-3.h"
4
5#undef LD_SWITCH_SYSTEM
6
7/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet.
8 Instead, dynamically check whether USE_MOTIF expands to something. */
9#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; }
10
11#ifndef __GNUC__
12#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \
13 `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'`
14#else /* GCC */
15/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
16 has anything in it. It can be empty.
17 This works ok in temacs. */
18#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \
19 `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \
20 `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'`
21
22/* Get rid of -traditional and let const really do its thing. */
23#undef C_SWITCH_SYSTEM
24#undef const
25#endif /* GCC */
26
27/* Gregory Neil Shapiro <gshapiro@hhmi.org> reports the Motif header files
28 are in this directory on Solaris 2.4. */
29#define C_SWITCH_X_SYSTEM -I/usr/dt/include
30
31/* arch-tag: 6f0de37b-cfda-427a-a5ae-b83ed54aaae7
32 (do not change this comment) */
diff --git a/src/s/sol2-5.h b/src/s/sol2-5.h
deleted file mode 100644
index 90163987e69..00000000000
--- a/src/s/sol2-5.h
+++ /dev/null
@@ -1,32 +0,0 @@
1/* Handle Solaris 2.5. */
2
3#include "sol2-4.h"
4
5/* -lgen is needed for the regex and regcmp functions
6 which are used by Motif. In the future we can try changing
7 regex.c to provide them in Emacs, but this is safer for now. */
8#define LIB_MOTIF -lXm -lgen
9
10/* This is the only known way to avoid some crashes
11 that seem to relate to screwed up malloc data
12 after deleting a frame. */
13/* rms: I think the problems using ralloc had to do with system
14 libraries that called the system malloc even if we linked in the
15 GNU malloc. I could not see any way to fix the problem except to
16 have just one malloc and that had to be the system one. */
17/* This is not always necessary. Turned off at present for testers to
18 identify any problems with gmalloc more accurately. */
19/* #define SYSTEM_MALLOC */
20
21/* There have problems reported with mmap at least on Solaris 2.6
22 and 2.7. For simplicity, let's not use mmap for anything >= 2.5.
23 We can optimize this later. */
24
25#undef USE_MMAP_FOR_BUFFERS
26
27/* Probably OK also on earlier versions. */
28#define GC_SETJMP_WORKS 1
29#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
30
31/* arch-tag: 96d65526-21c9-4547-a797-2bd575c05be7
32 (do not change this comment) */
diff --git a/src/s/sol2-6.h b/src/s/sol2-6.h
index a43443e48c2..233f38a7b31 100644
--- a/src/s/sol2-6.h
+++ b/src/s/sol2-6.h
@@ -1,11 +1,133 @@
1/* Handle Solaris 2.6. */ 1/* Definitions file for GNU Emacs running on Solaris 2.6.
2 2
3#include "sol2-5.h" 3 Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007,
4 2008, 2009, 2010 Free Software Foundation, Inc.
4 5
5#if 0 /* dldump does not handle all the extensions used by GNU ld. */ 6This file is part of GNU Emacs.
6#undef UNEXEC 7
7#define UNEXEC unexsol.o 8GNU Emacs is free software: you can redistribute it and/or modify
9it under the terms of the GNU General Public License as published by
10the Free Software Foundation, either version 3 of the License, or
11(at your option) any later version.
12
13GNU Emacs is distributed in the hope that it will be useful,
14but WITHOUT ANY WARRANTY; without even the implied warranty of
15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16GNU General Public License for more details.
17
18You should have received a copy of the GNU General Public License
19along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
20
21#include "usg5-4.h"
22
23#define SOLARIS2
24
25/* This triggers a conditional in xfaces.c. */
26#define XOS_NEEDS_TIME_H
27
28#define POSIX
29
30#define LIBS_SYSTEM -lsocket -lnsl -lkstat
31
32/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root.
33 ghazi@caip.rutgers.edu, 7/21/97. Don't redefine if already defined
34 (e.g., by config.h). */
35#ifndef HAVE_LIBKSTAT
36#define HAVE_LIBKSTAT
37#endif
38
39/* inoue@ainet.or.jp says Solaris has a bug related to X11R6-style
40 XIM support. */
41
42#define INHIBIT_X11R6_XIM
43
44/* Must use the system's termcap, if we use any termcap.
45 It does special things. */
46
47#ifndef TERMINFO
48#define LIBS_TERMCAP -ltermcap
8#endif 49#endif
9 50
51#ifndef __GNUC__
52/* eggert thinks all versions of SunPro C allowed this. */
53#define C_DEBUG_SWITCH -g -O
54#endif /* GCC */
55
56/* Info from fnf@cygnus.com suggests this is appropriate. */
57#define POSIX_SIGNALS
58
59/* We don't need the definition from usg5-4.h with POSIX_SIGNALS. */
60#undef sigsetmask
61
62/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock
63 rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't
64 work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x
65 (x<2) but I'm not sure. fnf@cygnus.com */
66/* This sets the name of the slave side of the PTY. On SysVr4,
67 grantpt(3) forks a subprocess, so keep sigchld_handler() from
68 intercepting that death. If any child but grantpt's should die
69 within, it should be caught after sigrelse(2). */
70
71#undef PTY_TTY_NAME_SPRINTF
72#define PTY_TTY_NAME_SPRINTF \
73 { \
74 char *ptsname (), *ptyname; \
75 \
76 sigblock (sigmask (SIGCLD)); \
77 if (grantpt (fd) == -1) \
78 { emacs_close (fd); return -1; } \
79 sigunblock (sigmask (SIGCLD)); \
80 if (unlockpt (fd) == -1) \
81 { emacs_close (fd); return -1; } \
82 if (!(ptyname = ptsname (fd))) \
83 { emacs_close (fd); return -1; } \
84 strncpy (pty_name, ptyname, sizeof (pty_name)); \
85 pty_name[sizeof (pty_name) - 1] = 0; \
86 }
87
88/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet.
89 Instead, dynamically check whether USE_MOTIF expands to something. */
90#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; }
91
92#ifndef __GNUC__
93#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \
94 `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'`
95#else /* GCC */
96/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
97 has anything in it. It can be empty.
98 This works ok in temacs. */
99#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \
100 `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \
101 `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'`
102
103/* Get rid of -traditional and let const really do its thing. */
104#undef C_SWITCH_SYSTEM
105#undef const
106#endif /* GCC */
107
108/* Gregory Neil Shapiro <gshapiro@hhmi.org> reports the Motif header files
109 are in this directory on Solaris 2.4. */
110#define C_SWITCH_X_SYSTEM -I/usr/dt/include
111
112/* -lgen is needed for the regex and regcmp functions
113 which are used by Motif. In the future we can try changing
114 regex.c to provide them in Emacs, but this is safer for now. */
115#define LIB_MOTIF -lXm -lgen
116
117/* This is the only known way to avoid some crashes
118 that seem to relate to screwed up malloc data
119 after deleting a frame. */
120/* rms: I think the problems using ralloc had to do with system
121 libraries that called the system malloc even if we linked in the
122 GNU malloc. I could not see any way to fix the problem except to
123 have just one malloc and that had to be the system one. */
124/* This is not always necessary. Turned off at present for testers to
125 identify any problems with gmalloc more accurately. */
126/* #define SYSTEM_MALLOC */
127
128/* Probably OK also on earlier versions. */
129#define GC_SETJMP_WORKS 1
130#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
131
10/* arch-tag: 71ea3857-89dc-4395-9623-77964e6ed3ca 132/* arch-tag: 71ea3857-89dc-4395-9623-77964e6ed3ca
11 (do not change this comment) */ 133 (do not change this comment) */