home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / gnu / emacs / bug / 1472 < prev    next >
Encoding:
Text File  |  1992-11-11  |  5.4 KB  |  178 lines

  1. Newsgroups: gnu.emacs.bug
  2. Path: sparky!uunet!convex!linac!pacific.mps.ohio-state.edu!cis.ohio-state.edu!quorum.COM!brown
  3. From: brown@quorum.COM (Robert E. Brown)
  4. Subject: configuration files for Next computers
  5. Message-ID: <9211120219.AA01526@_grettir.quorum.com_>
  6. Sender: gnulists@ai.mit.edu
  7. Organization: GNUs Not Usenet
  8. Distribution: gnu
  9. Date: Wed, 11 Nov 1992 16:19:04 GMT
  10. Approved: bug-gnu-emacs@prep.ai.mit.edu
  11. Lines: 165
  12.  
  13. I grabbed Emacs version 18.59 from prep and compiled it on my Next computer,
  14. which is running the latest release of the Next OS (version 3.0).  While doing
  15. this, I noticed that the current config files for Next computers are a little
  16. bit messy -- multiple definitions and other cruft.
  17.  
  18. Enclosed are the config files I used.  My s-mach.h file is much shorter than
  19. the version 18.59 version, but I'd be tempted to get rid of s-mach2.h
  20. entirely.  Just tell people to use s-bsd4-3.h instead!  In particular, I don't
  21. know if the loader flags defined in s-mach2.h are required for all Mach
  22. systems, or just the Next.  If the latter, then there's an even stronger case
  23. for getting rid of s-mach2.h and moving the definition of LD_SWITCH_SYSTEM to
  24. m-next.h
  25.  
  26.                 bob
  27.  
  28.  
  29. ========================================
  30. s-mach2.h
  31. ========================================
  32. /* Definitions for Emacs running on Mach version 2 (non-kernelized system).
  33.    Copyright (C) 1990 Free Software Foundation, Inc.
  34.  
  35. This file is part of GNU Emacs.
  36.  
  37. GNU Emacs is free software; you can redistribute it and/or modify
  38. it under the terms of the GNU General Public License as published by
  39. the Free Software Foundation; either version 1, or (at your option)
  40. any later version.
  41.  
  42. GNU Emacs is distributed in the hope that it will be useful,
  43. but WITHOUT ANY WARRANTY; without even the implied warranty of
  44. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  45. GNU General Public License for more details.
  46.  
  47. You should have received a copy of the GNU General Public License
  48. along with GNU Emacs; see the file COPYING.  If not, write to
  49. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  50.  
  51. #include "s-bsd4-3.h"
  52.  
  53. #define LD_SWITCH_SYSTEM -X -noseglinkedit
  54. ========================================
  55. m-next.h
  56. ========================================
  57. /* Configuration file for NeXT computers.
  58.    Copyright (C) 1990 Free Software Foundation, Inc.
  59.  
  60. This file is part of GNU Emacs.
  61.  
  62. GNU Emacs is free software; you can redistribute it and/or modify
  63. it under the terms of the GNU General Public License as published by
  64. the Free Software Foundation; either version 1, or (at your option)
  65. any later version.
  66.  
  67. GNU Emacs is distributed in the hope that it will be useful,
  68. but WITHOUT ANY WARRANTY; without even the implied warranty of
  69. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  70. GNU General Public License for more details.
  71.  
  72. You should have received a copy of the GNU General Public License
  73. along with GNU Emacs; see the file COPYING.  If not, write to
  74. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  75.  
  76.  
  77. /* SYSTEM_TYPE should indicate the kind of system you are using.
  78.  It sets the Lisp variable system-type.  We'll need to undo the bsd one. */
  79.  
  80. #undef SYSTEM_TYPE
  81. #define SYSTEM_TYPE "next-mach"
  82.  
  83. /* The following three symbols give information on
  84.  the size of various data types.  */
  85.  
  86. #define SHORTBITS 16        /* Number of bits in a short */
  87.  
  88. #define INTBITS 32        /* Number of bits in an int */
  89.  
  90. #define LONGBITS 32        /* Number of bits in a long */
  91.  
  92. /* Let the compiler tell us what byte order architecture we're compiling for */
  93.  
  94. #ifdef __BIG_ENDIAN__
  95. #define BIG_ENDIAN
  96. #endif
  97.  
  98. /* Define how to take a char and sign-extend into an int.
  99.    On machines where char is signed, this is a no-op.  */
  100.  
  101. #define SIGN_EXTEND_CHAR(c) (c)
  102.  
  103. /* Use type int rather than a union, to represent Lisp_Object */
  104.  
  105. #define NO_UNION_TYPE
  106.  
  107. /* XINT must explicitly sign-extend */
  108.  
  109. #define EXPLICIT_SIGN_EXTEND
  110.  
  111. /* Data type of load average, as read out of kmem.  */
  112.  
  113. #define LOAD_AVE_TYPE long
  114.  
  115. /* Convert that into an integer that is 100 for a load average of 1.0  */
  116.  
  117. #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
  118.  
  119. /* Say that the text segment of a.out includes the header;
  120.    the header actually occupies the first few bytes of the text segment
  121.    and is counted in hdr.a_text.  */
  122.  
  123. #define A_TEXT_OFFSET(HDR) sizeof (HDR)
  124.  
  125. /* Use dk.h, not dkstat.h, in loadst.c.  */
  126.  
  127. #define DK_HEADER_FILE
  128.  
  129. /* Mask for address bits within a memory segment */
  130.  
  131. #define SEGSIZ 0x20000
  132. #define SEGMENT_MASK (SEGSIZ - 1)
  133.  
  134. #define HAVE_ALLOCA
  135.  
  136. #define SYSTEM_MALLOC
  137.  
  138. #define HAVE_UNIX_DOMAIN
  139.  
  140. #define LIB_X11_LIB -L/usr/lib/X11 -lX11
  141.  
  142. /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
  143.  
  144. #define NO_T_CHARS_DEFINES
  145.  
  146. /* Use our own unexec routines */
  147.  
  148. #define UNEXEC unexnext.o
  149.  
  150. /* We don't use _start, etext, or edata */
  151.  
  152. #define TEXT_START    NULL /* wrong: but nobody uses it anyway */
  153. #define TEXT_END    get_etext()
  154. #define DATA_END    get_edata()
  155.  
  156. /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
  157.  
  158. #define LIBS_DEBUG
  159.  
  160. /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
  161.  
  162. #define LIB_GCC
  163.  
  164. /* Compile "strict bsd" to avoid warnings from include files */
  165.  
  166. #define C_SWITCH_MACHINE    -bsd
  167.  
  168. /* Link this program just by running cc.  */
  169.  
  170. #define ORDINARY_LINK
  171.  
  172. /* Where to find the kernel, for load average.  */
  173.  
  174. #undef KERNEL_FILE
  175. #define KERNEL_FILE "/mach"
  176. ========================================
  177.  
  178.