Guest User

Untitled

a guest
Feb 21st, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.98 KB | None | 0 0
  1. diff -Naur emacs-21.3-old/configure emacs-21.3/configure
  2. --- emacs-21.3-old/configure 2003-12-14 03:34:27.000000000 +0000
  3. +++ emacs-21.3/configure 2003-12-14 03:35:13.000000000 +0000
  4. @@ -1632,6 +1632,11 @@
  5. machine=ia64 opsys=gnu-linux
  6. ;;
  7.  
  8. + ## X86-64
  9. + x86_64*-*-linux* )
  10. + machine=x86_64 opsys=gnu-linux
  11. + ;;
  12. +
  13. ## Intel 386 machines where we don't care about the manufacturer
  14. i[3456]86-*-* )
  15. machine=intel386
  16. diff -Naur emacs-21.3-old/configure.in emacs-21.3/configure.in
  17. --- emacs-21.3-old/configure.in 2003-12-14 03:34:27.000000000 +0000
  18. +++ emacs-21.3/configure.in 2003-12-14 03:35:04.000000000 +0000
  19. @@ -1006,6 +1006,11 @@
  20. machine=ia64 opsys=gnu-linux
  21. ;;
  22.  
  23. + ## X86-64
  24. + x86_64*-*-linux* )
  25. + machine=x86_64 opsys=gnu-linux
  26. + ;;
  27. +
  28. ## Intel 386 machines where we don't care about the manufacturer
  29. i[3456]86-*-* )
  30. machine=intel386
  31. diff -Naur emacs-21.3-old/src/m/x86_64.h emacs-21.3/src/m/x86_64.h
  32. --- emacs-21.3-old/src/m/x86_64.h 1970-01-01 00:00:00.000000000 +0000
  33. +++ emacs-21.3/src/m/x86_64.h 2003-12-14 03:35:04.000000000 +0000
  34. @@ -0,0 +1,175 @@
  35. +/* machine description file for the X86-64 architecture.
  36. + Copyright (C) 2000 Free Software Foundation, Inc.
  37. +
  38. +This file is part of GNU Emacs.
  39. +
  40. +GNU Emacs is free software; you can redistribute it and/or modify
  41. +it under the terms of the GNU General Public License as published by
  42. +the Free Software Foundation; either version 1, or (at your option)
  43. +any later version.
  44. +
  45. +GNU Emacs is distributed in the hope that it will be useful,
  46. +but WITHOUT ANY WARRANTY; without even the implied warranty of
  47. +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  48. +GNU General Public License for more details.
  49. +
  50. +You should have received a copy of the GNU General Public License
  51. +along with GNU Emacs; see the file COPYING. If not, write to
  52. +the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
  53. +Boston, MA 02111-1307, USA. */
  54. +
  55. +#define BITS_PER_LONG 64
  56. +#define BITS_PER_EMACS_INT 64
  57. +
  58. +/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
  59. + is the most significant byte. */
  60. +
  61. +#undef WORDS_BIG_ENDIAN
  62. +
  63. +/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
  64. + group of arguments and treat it as an array of the arguments. */
  65. +
  66. +#define NO_ARG_ARRAY
  67. +
  68. +/* Define WORD_MACHINE if addresses and such have
  69. + to be corrected before they can be used as byte counts. */
  70. +
  71. +/* #define WORD_MACHINE */
  72. +
  73. +/* Now define a symbol for the cpu type, if your compiler
  74. + does not define it automatically:
  75. + Ones defined so far include vax, m68000, ns16000, pyramid,
  76. + orion, tahoe, APOLLO and many others */
  77. +
  78. +/* __x86_64__ defined automatically */
  79. +
  80. +
  81. +/* Use type EMACS_INT rather than a union, to represent Lisp_Object */
  82. +/* This is desirable for most machines. */
  83. +
  84. +#define NO_UNION_TYPE
  85. +
  86. +/* Define the type to use. */
  87. +#define EMACS_INT long
  88. +#define EMACS_UINT unsigned long
  89. +#define SPECIAL_EMACS_INT
  90. +
  91. +/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
  92. + the 24-bit bit field into an int. In other words, if bit fields
  93. + are always unsigned.
  94. +
  95. + If you use NO_UNION_TYPE, this flag does not matter. */
  96. +
  97. +#define EXPLICIT_SIGN_EXTEND
  98. +
  99. +/* Data type of load average, as read out of kmem. */
  100. +
  101. +#define LOAD_AVE_TYPE long
  102. +
  103. +/* Convert that into an integer that is 100 for a load average of 1.0 */
  104. +
  105. +#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
  106. +
  107. +/* Define CANNOT_DUMP on machines where unexec does not work.
  108. + Then the function dump-emacs will not be defined
  109. + and temacs will do (load "loadup") automatically unless told otherwise. */
  110. +#if 0
  111. +#define CANNOT_DUMP
  112. +#endif
  113. +
  114. +/* Define VIRT_ADDR_VARIES if the virtual addresses of
  115. + pure and impure space as loaded can vary, and even their
  116. + relative order cannot be relied on.
  117. +
  118. + Otherwise Emacs assumes that text space precedes data space,
  119. + numerically. */
  120. +
  121. +/* #define VIRT_ADDR_VARIES */
  122. +
  123. +/* Define C_ALLOCA if this machine does not support a true alloca
  124. + and the one written in C should be used instead.
  125. + Define HAVE_ALLOCA to say that the system provides a properly
  126. + working alloca function and it should be used.
  127. + Define neither one if an assembler-language alloca
  128. + in the file alloca.s should be used. */
  129. +
  130. +#define HAVE_ALLOCA
  131. +
  132. +/* Define the following if GNU malloc and the relocating allocator do
  133. + not work together with X. */
  134. +
  135. +/* #define SYSTEM_MALLOC */
  136. +
  137. +/* Define NO_REMAP if memory segmentation makes it not work well
  138. + to change the boundary between the text section and data section
  139. + when Emacs is dumped. If you define this, the preloaded Lisp
  140. + code will not be sharable; but that's better than failing completely. */
  141. +
  142. +/* #define NO_REMAP */
  143. +
  144. +/* Some really obscure 4.2-based systems (like Sequent DYNIX) do not
  145. + support asynchronous I/O (using SIGIO) on sockets, even though it
  146. + works fine on tty's. If you have one of these systems, define the
  147. + following, and then use it in config.h (or elsewhere) to decide
  148. + when (not) to use SIGIO.
  149. +
  150. + You'd think this would go in an operating-system description file,
  151. + but since it only occurs on some, but not all, BSD systems, the
  152. + reasonable place to select for it is in the machine description
  153. + file. */
  154. +
  155. +/* #define NO_SOCK_SIGIO */
  156. +
  157. +#ifdef __ELF__
  158. +#undef UNEXEC
  159. +#define UNEXEC unexelf.o
  160. +#endif
  161. +
  162. +#define PNTR_COMPARISON_TYPE unsigned long
  163. +
  164. +/* On the 64 bit architecture, we can use 60 bits for addresses */
  165. +
  166. +#define VALBITS 60
  167. +
  168. +/* Define XINT and XUINT so that they can take arguments of type int */
  169. +
  170. +#define XINT(a) (((long) (a) << (BITS_PER_LONG - VALBITS)) >> (BITS_PER_LONG - VALBITS))
  171. +#define XUINT(a) ((long) (a) & VALMASK)
  172. +
  173. +/* Declare malloc and realloc in a way that is clean.
  174. + But not in makefiles! */
  175. +
  176. +#ifndef NOT_C_CODE
  177. +/* We need these because pointers are larger than the default ints. */
  178. +# if !defined(__NetBSD__) && !defined(__OpenBSD__)
  179. +# include <alloca.h>
  180. +# else
  181. +# include <stdlib.h>
  182. +# endif
  183. +
  184. +/* We need to prototype these for the lib-src programs even if we don't
  185. + use the system malloc for the Emacs proper. */
  186. +#ifdef _MALLOC_INTERNAL
  187. +/* These declarations are designed to match the ones in gmalloc.c. */
  188. +#if defined (__STDC__) && __STDC__
  189. +extern void *malloc (), *realloc (), *calloc ();
  190. +#else
  191. +extern char *malloc (), *realloc (), *calloc ();
  192. +#endif
  193. +#else /* not _MALLOC_INTERNAL */
  194. +extern void *malloc (), *realloc (), *calloc ();
  195. +#endif /* not _MALLOC_INTERNAL */
  196. +
  197. +#ifdef REL_ALLOC
  198. +#ifndef _MALLOC_INTERNAL
  199. +/* "char *" because ralloc.c defines it that way. gmalloc.c thinks it
  200. + is allowed to prototype these as "void *" so we don't prototype in
  201. + that case. You're right: it stinks! */
  202. +extern char *r_alloc (), *r_re_alloc ();
  203. +extern void r_alloc_free ();
  204. +#endif /* not _MALLOC_INTERNAL */
  205. +#endif /* REL_ALLOC */
  206. +
  207. +#endif /* not NOT_C_CODE */
  208. +
  209. +#define HAVE_TEXT_START
  210. diff -Naur emacs-21.3-old/src/s/gnu-linux.h emacs-21.3/src/s/gnu-linux.h
  211. --- emacs-21.3-old/src/s/gnu-linux.h 2003-12-14 03:34:28.000000000 +0000
  212. +++ emacs-21.3/src/s/gnu-linux.h 2003-12-14 03:35:04.000000000 +0000
  213. @@ -173,8 +173,12 @@
  214. /* GNU/Linux usually has crt0.o in a non-standard place */
  215. #define START_FILES pre-crt0.o /usr/lib/crt0.o
  216. #else
  217. +#if defined(__x86_64)
  218. +#define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o
  219. +#else
  220. #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o
  221. #endif
  222. +#endif
  223.  
  224. #ifdef __ELF__
  225. /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option
  226. @@ -225,8 +229,12 @@
  227. #else
  228. #undef LIB_GCC
  229. #define LIB_GCC
  230. +#if defined(__x86_64)
  231. +#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o
  232. +#else
  233. #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o
  234. #endif
  235. +#endif
  236.  
  237. /* Don't use -g in test compiles in configure.
  238. This is so we will use the same shared libs for that linking
Add Comment
Please, Sign In to add comment