]> git.eshelyaron.com Git - emacs.git/commitdiff
Move "system type" macros from src/s to configure
authorGlenn Morris <rgm@gnu.org>
Fri, 13 Jul 2012 02:34:05 +0000 (19:34 -0700)
committerGlenn Morris <rgm@gnu.org>
Fri, 13 Jul 2012 02:34:05 +0000 (19:34 -0700)
* configure.ac (BSD4_2, BSD_SYSTEM, USG, USG5, _AIX, CYGWIN)
(DARWIN_OS, GNU_LINUX, HPUX, IRIX6_5, SOLARIS2):
Move "system type" macros here from src/s.
(BSD_SYSTEM_AHB): New hack macro.
(AH_BOTTOM): Set BSD_SYSTEM, using BSD_SYSTEM_AHB.

* src/s/usg5-4-common.h (USG, USG5):
* src/s/template.h (USG5, USG, HPUX, BSD4_2, BSD_SYSTEM):
* src/s/sol2-6.h (SOLARIS2):
* src/s/irix6-5.h (IRIX6_5):
* src/s/hpux10-20.h (USG, USG5, HPUX):
* src/s/gnu-linux.h (USG, GNU_LINUX):
* src/s/freebsd.h (BSD_SYSTEM):
* src/s/darwin.h (BSD4_2, BSD_SYSTEM, DARWIN_OS):
* src/s/cygwin.h (CYGWIN):
* src/s/bsd-common.h (BSD_SYSTEM, BSD4_2):
* src/s/aix4-2.h (USG, USG5, _AIX): Move "system type" macros to configure.

14 files changed:
ChangeLog
configure.ac
src/ChangeLog
src/s/aix4-2.h
src/s/bsd-common.h
src/s/cygwin.h
src/s/darwin.h
src/s/freebsd.h
src/s/gnu-linux.h
src/s/hpux10-20.h
src/s/irix6-5.h
src/s/sol2-6.h
src/s/template.h
src/s/usg5-4-common.h

index 2902ec882ed89511e124c7ad520c8b059716054b..27a65e562e42036ea87e550a3c66bc375bb3cdd8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2012-07-13  Glenn Morris  <rgm@gnu.org>
 
+       * configure.ac (BSD4_2, BSD_SYSTEM, USG, USG5, _AIX, CYGWIN)
+       (DARWIN_OS, GNU_LINUX, HPUX, IRIX6_5, SOLARIS2):
+       Move "system type" macros here from src/s.
+       (BSD_SYSTEM_AHB): New hack macro.
+       (AH_BOTTOM): Set BSD_SYSTEM, using BSD_SYSTEM_AHB.
+
        * configure.ac (NSIG_MINIMUM, ULIMIT_BREAK_VALUE):
        Move here from src/s.
 
index 6b3642766d4284c27f4610f147419a96d7275447..35866fd40a2ca2320329853940c24a472e5553b5 100644 (file)
@@ -3481,7 +3481,7 @@ case $opsys in
 
   gnu | gnu-linux | gnu-kfreebsd )
     AC_MSG_CHECKING([for style of pending output formalism])
-    dnl In autoconf 2.67 (?) and later, we could use a single test
+    dnl In autoconf 2.67 and later, we could use a single test
     dnl since the preprocessed output is accessible in "conftest.i".
     AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
 #include <stdio.h>
@@ -3595,6 +3595,87 @@ case $opsys in
 esac
 
 
+dnl Define symbols to identify the version of Unix this is.
+dnl Define all the symbols that apply correctly.
+AH_TEMPLATE(BSD4_2, [Define if the system is compatible with BSD 4.2.])
+AH_TEMPLATE(BSD_SYSTEM, [Define if the system is compatible with BSD 4.2.])
+AH_TEMPLATE(USG, [Define if the system is compatible with System III.])
+AH_TEMPLATE(USG5, [Define if the system is compatible with System V.])
+
+case $opsys in
+  aix4-2)
+    AC_DEFINE(USG, [])
+    AC_DEFINE(USG5, [])
+    dnl This symbol should be defined on AIX Version 3  ???????
+    AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
+#ifndef _AIX
+# error "_AIX not defined"
+#endif
+    ]], [[]])], [], AC_DEFINE(_AIX, [], [Define if the system is AIX.]))
+    ;;
+
+  cygwin)
+    AC_DEFINE(CYGWIN, 1, [Define if the system is Cygwin.])
+    ;;
+
+  darwin)
+    dnl BSD4_3 and BSD4_4 are already defined in sys/param.h.
+    AC_DEFINE(BSD4_2, [])
+    AC_DEFINE(BSD_SYSTEM, [])
+    dnl More specific than the above two.  We cannot use __APPLE__ as this
+    dnl may not be defined on non-OSX Darwin, and we cannot define DARWIN
+    dnl here because Panther and lower CoreFoundation.h uses DARWIN to
+    dnl distinguish OS X from pure Darwin.
+    AC_DEFINE(DARWIN_OS, [], [Define if the system is Darwin.])
+    ;;
+
+  freebsd)
+    AC_DEFINE(BSD4_2, [])
+    dnl Hack to avoid calling AC_PREPROC_IFELSE multiple times.
+    dnl Would not be needed with autoconf >= 2.67, where the
+    dnl preprocessed output is accessible in "conftest.i".
+    AC_DEFINE(BSD_SYSTEM_AHB, 1, [Define if AH_BOTTOM should change BSD_SYSTEM.])
+    ;;
+
+  gnu | netbsd | openbsd )
+    AC_DEFINE(BSD4_2, [])
+    AC_PREPROC_IFELSE([AC_LANG_PROGRAM([[
+#ifndef BSD_SYSTEM
+# error "BSD_SYSTEM not defined"
+#endif
+    ]], [[]])], [], AC_DEFINE(BSD_SYSTEM, 43) )
+    ;;
+
+  gnu-linux | gnu-kfreebsd )
+    AC_DEFINE(USG, [])
+    AC_DEFINE(GNU_LINUX, [], [Define if ths system is compatible with GNU/Linux.])
+    ;;
+
+  hpux*)
+    AC_DEFINE(USG, [])
+    AC_DEFINE(USG5, [])
+    AC_DEFINE(HPUX, [], [Define if the system is HPUX.])
+    ;;
+
+  irix6-5)
+    AC_DEFINE(USG, [])
+    AC_DEFINE(USG5, [])
+    AC_DEFINE(IRIX6_5, [], [Define if the system is IRIX.])
+    ;;
+
+  sol2*)
+    AC_DEFINE(USG, [])
+    AC_DEFINE(USG5, [])
+    AC_DEFINE(SOLARIS2, [], [Define if the system is Solaris.])
+    ;;
+
+  unixware)
+    AC_DEFINE(USG, [])
+    AC_DEFINE(USG5, [])
+    ;;
+esac
+
+
 case $opsys in
   dnl Emacs supplies its own malloc, but glib (part of Gtk+) calls
   dnl memalign and on Cygwin, that becomes the Cygwin-supplied memalign.
@@ -4035,6 +4116,19 @@ AH_BOTTOM([
 # error "alloca not available on this machine"
 #endif
 
+/* This silences a few compilation warnings on FreeBSD.  */
+#ifdef BSD_SYSTEM_AHB
+#undef BSD_SYSTEM_AHB
+#undef BSD_SYSTEM
+#if __FreeBSD__ == 1
+#define BSD_SYSTEM 199103
+#elif __FreeBSD__ == 2
+#define BSD_SYSTEM 199306
+#elif __FreeBSD__ >= 3
+#define BSD_SYSTEM 199506
+#endif
+#endif
+
 /* Define AMPERSAND_FULL_NAME if you use the convention
    that & in the full name stands for the login id.  */
 /* Turned on June 1996 supposing nobody will mind it.  */
index 8a0142eb2b8a59a53ddc65a9ef99cbbe56fb4cb7..8baa986fc5cac2bbaf9ccdeacea96688a6ece8cb 100644 (file)
@@ -1,3 +1,17 @@
+2012-07-13  Glenn Morris  <rgm@gnu.org>
+
+       * s/usg5-4-common.h (USG, USG5):
+       * s/template.h (USG5, USG, HPUX, BSD4_2, BSD_SYSTEM):
+       * s/sol2-6.h (SOLARIS2):
+       * s/irix6-5.h (IRIX6_5):
+       * s/hpux10-20.h (USG, USG5, HPUX):
+       * s/gnu-linux.h (USG, GNU_LINUX):
+       * s/freebsd.h (BSD_SYSTEM):
+       * s/darwin.h (BSD4_2, BSD_SYSTEM, DARWIN_OS):
+       * s/cygwin.h (CYGWIN):
+       * s/bsd-common.h (BSD_SYSTEM, BSD4_2):
+       * s/aix4-2.h (USG, USG5, _AIX): Move "system type" macros to configure.
+
 2012-07-13  BT Templeton  <bpt@hcoop.net>  (tiny change)
 
        * nsfont.m (ns_charset_covers): Don't abort if no bitmap (Bug#11853).
index 55000f6f2792cfce2b3632a9cbc35a6dd2ca8f36..debc9f78c1672019d06bf8e4a1e8a2028236d0a9 100644 (file)
@@ -16,19 +16,6 @@ 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/>.  */
 
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.  */
-#define USG                            /* System III, System V, etc */
-#define USG5
-
-/* This symbol should be defined on AIX Version 3  ??????? */
-#ifndef _AIX
-#define _AIX
-#endif
-
-\f
-/* Special items needed to make Emacs run on this system.  */
-
 /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct.  */
 #undef sigmask
 
index 681f659901041c62d3a43d3074d28d0f0deb8329..9e8c9ba4726b7e720625f70ded9ec4f0fb8b9b36 100644 (file)
@@ -18,21 +18,3 @@ You should have received a copy of the GNU General Public License
 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.   */
-
-/* We give these symbols the numeric values found in <sys/param.h> to
-   avoid warnings about redefined macros.  */
-
-/* Nothing in Emacs uses this any more.
-   ifndef BSD4_3
-   define BSD4_3 1
-   endif
-*/
-
-#ifndef BSD_SYSTEM
-#define BSD_SYSTEM 43
-#endif /* BSD_SYSTEM */
-
-/* For mem-limits.h.  */
-#define BSD4_2
index 7c32fd3f90de80260afe172b1dedfd005e0aaf1b..1295083cd8e53ea6b652985d4aa1600204714aec 100644 (file)
@@ -17,5 +17,4 @@ 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/>.  */
 
-/* Used in various places to enable cygwin-specific code changes.  */
-#define CYGWIN 1
+
index 8b46113a72061b163b169a0210d3dddbebb2ee28..20d576e49869cba0196a269d455f512b51b830d2 100644 (file)
@@ -17,19 +17,6 @@ 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/>.  */
 
-
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.  */
-#define BSD4_2
-/* BSD4_3 and BSD4_4 are already defined in sys/param.h */
-#define BSD_SYSTEM
-
-/* More specific than the above two.  We cannot use __APPLE__ as this
-   may not be defined on non-OSX Darwin, and we cannot define DARWIN
-   here because Panther and lower CoreFoundation.h uses DARWIN to
-   distinguish OS X from pure Darwin.  */
-#define DARWIN_OS
-
 /* Definitions for how to compile & link.  */
 #ifdef emacs
 #define malloc unexec_malloc
index 8200238bf1f253f2ccf476b513c4354c5708b3d8..f5838266143fafbb8da406df7925ba63711f143c 100644 (file)
@@ -23,16 +23,6 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 /* Get most of the stuff from bsd-common */
 #include "bsd-common.h"
 
-/* This silences a few compilation warnings.  */
-#undef BSD_SYSTEM
-#if __FreeBSD__ == 1
-#define BSD_SYSTEM 199103
-#elif __FreeBSD__ == 2
-#define BSD_SYSTEM 199306
-#elif __FreeBSD__ >= 3
-#define BSD_SYSTEM 199506
-#endif
-
 /* Tell that garbage collector that setjmp is known to save all
    registers relevant for conservative garbage collection in the jmp_buf.  */
 #define GC_SETJMP_WORKS 1
index 30bdf0407be25876549cbee099e1bffe2aa47e9d..6c20c788150764421ee2d2cba7ce1f177756e795 100644 (file)
@@ -20,18 +20,6 @@ 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/>.  */
 
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.  */
-#define USG
-#define GNU_LINUX
-
-/* Here, on a separate page, add any special hacks needed
-   to make Emacs work on this system.  For example,
-   you might define certain system call names that don't
-   exist on your system, or that do different things on
-   your system and must be used only through an encapsulation
-   (Which you should place, by convention, in sysdep.c).  */
-\f
 #ifdef __ia64__
 #define GC_MARK_SECONDARY_STACK()                              \
   do {                                                         \
index 6115565e9d0444fc9e3f28e251386fe517626789..c913062701a0268ab95c740de52cd0afa94c5a73 100644 (file)
@@ -17,15 +17,6 @@ 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/>.  */
 
-
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.  */
-#define USG                            /* System III, System V, etc */
-#define USG5
-#define HPUX
-
-/* Special hacks needed to make Emacs run on this system.  */
-
 /* We have to go this route, rather than hpux9's approach of renaming the
    functions via macros.  The system's stdlib.h has fully prototyped
    declarations, which yields a conflicting definition of srand48; it
index a8923d230d2c37d58c805af1408c2e3b9d3ad45e..a7365a76a91ac19aaeab5509e48e6f0703e15a3f 100644 (file)
@@ -17,8 +17,6 @@ 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/>.  */
 
-
-#define IRIX6_5                        /* used in m/iris4d */
 #include "usg5-4-common.h"
 
 #undef _longjmp /* use system versions, not conservative aliases */
index ff6cfc277cc16fea18e6e0d0fc6fc7d217360da7..78d13f2063d7f09358d574d4a0bb9bc8516e41aa 100644 (file)
@@ -19,6 +19,4 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #include "usg5-4-common.h"
 
-#define SOLARIS2
-
 #define GC_SETJMP_WORKS 1
index f14890bc2921c62be8cf64aaa6b958d89c0c5a5e..e6f43896aacaee876e0a613be50e4a59a0e25ee8 100644 (file)
@@ -19,16 +19,6 @@ 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/>.  */
 
-
-/* Define symbols to identify the version of Unix this is.
-   Define all the symbols that apply correctly.  */
-
-/* #define USG5 */
-/* #define USG */
-/* #define HPUX */
-/* #define BSD4_2 */
-/* #define BSD_SYSTEM */
-
 /* subprocesses should be undefined if you do NOT want to
    have code for asynchronous subprocesses
    (as used in M-x compile and M-x shell).
index 883d0b5dc21b50f577ba12be80d3d3435a320ee2..93a05ebec545c47cc0679dbdf2782bb8114c0418 100644 (file)
@@ -20,13 +20,6 @@ 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/>.  */
 
-/* Use the SysVr3 file for at least base configuration.  */
-#define USG                            /* System III, System V, etc */
-
-#define USG5
-/* Nothing in Emacs use this any more.  */
-/* #define USG5_4 */
-
 /* setjmp and longjmp can safely replace _setjmp and _longjmp,
    but they will run slower.  */
 #define _setjmp setjmp