aboutsummaryrefslogtreecommitdiffstats
path: root/src/m
diff options
context:
space:
mode:
authorGlenn Morris2010-04-26 20:14:14 -0700
committerGlenn Morris2010-04-26 20:14:14 -0700
commit76cda504fbe7474fc404611a00764b3db703e650 (patch)
tree41bc0711c1d006e34dffe6f80cebf7c632b9071d /src/m
parent7186fb09de6c3c4789aaa808a4f9af97b1cf14d4 (diff)
downloademacs-76cda504fbe7474fc404611a00764b3db703e650.tar.gz
emacs-76cda504fbe7474fc404611a00764b3db703e650.zip
Use $CRT_DIR in more places.
* configure.in (--with-crt-dir): Doc fix (now valid for all platforms). (CRT_DIR): On (powerpc64|sparc64)-*-linux-gnu*, default to /usr/lib64. On hpux10-20, default to /lib. * src/m/amdx86-64.h (START_FILES, LIB_STANDARD): Change the logic around, since the defaults (set by the system file) are fine in most cases. [GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__]: Remove sections. * src/m/ibms390x.h (START_FILES, LIB_STANDARD): * src/m/macppc.h (START_FILES, LIB_STANDARD) [GNU_LINUX]: * src/m/sparc.h (START_FILES, LIB_STANDARD) [__linux__]: Remove definitions, since they are set correctly in s/gnu-linux.h. * src/s/freebsd.h (START_FILES, LIB_STANDARD): * src/s/gnu-linux.h (START_FILES, LIB_STANDARD): * src/s/hpux10-20.h (START_FILES): * src/s/netbsd.h (START_FILES, LIB_STANDARD, START_FILES_1, END_FILES_1): Use $CRT_DIR in place of fixed /usr/lib, /lib directories. * src/Makefile.in: Comment.
Diffstat (limited to 'src/m')
-rw-r--r--src/m/amdx86-64.h30
-rw-r--r--src/m/ibms390x.h6
-rw-r--r--src/m/macppc.h6
-rw-r--r--src/m/sparc.h11
4 files changed, 7 insertions, 46 deletions
diff --git a/src/m/amdx86-64.h b/src/m/amdx86-64.h
index 6d27c950ce4..f7dfb126e6e 100644
--- a/src/m/amdx86-64.h
+++ b/src/m/amdx86-64.h
@@ -67,34 +67,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
67/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */ 67/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
68#undef DATA_SEG_BITS 68#undef DATA_SEG_BITS
69 69
70#ifdef __OpenBSD__
71 70
71/* For GNU_LINUX, __OpenBSD__, __NetBSD__, __APPLE__, things are set
72 correctly in s/gnu-linux.h, netbsd.h, darwin.h. */
73#ifdef SOLARIS2
72#undef START_FILES 74#undef START_FILES
73#define START_FILES pre-crt0.o /usr/lib/crt0.o /usr/lib/crtbegin.o
74#undef LIB_STANDARD 75#undef LIB_STANDARD
75#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o 76#elif defined (__FreeBSD__) || (defined (DARWIN_OS) && !defined (__APPLE__))
76 77/* On FreeBSD, the libraries for binaries native to the build host's
77#elif defined(__NetBSD__)
78
79/* LIB_STANDARD and START_FILES set correctly in s/netbsd.h */
80
81#elif defined(SOLARIS2)
82
83#undef START_FILES
84#undef LIB_STANDARD
85
86#elif defined(__APPLE__)
87
88/* LIB_STANDARD and START_FILES set correctly in s/darwin.h */
89
90#else /* !__OpenBSD__ && !__NetBSD__ && !SOLARIS2 && !__APPLE__ */
91/* CRT_DIR defaults to /usr/lib. On GNU/Linux, it may be /usr/lib64.
92 On FreeBSD, the libraries for binaries native to the build host's
93 architecture are installed under /usr/lib, and the ones that need 78 architecture are installed under /usr/lib, and the ones that need
94 special paths are 32-bit compatibility libraries (installed under 79 special paths are 32-bit compatibility libraries (installed under
95 /usr/lib32). So to build a native binary of Emacs on FreeBSD/amd64 80 /usr/lib32). So to build a native binary of Emacs on FreeBSD/amd64
96 we can just point to /usr/lib. 81 we can just point to /usr/lib (the default $CRT_DIR). */
97 */
98#undef START_FILES 82#undef START_FILES
99#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o 83#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o
100/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD. 84/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
@@ -105,7 +89,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
105#undef LIB_STANDARD 89#undef LIB_STANDARD
106#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o 90#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o
107 91
108#endif /* __OpenBSD__ */ 92#endif /* SOLARIS2 */
109#endif /* !i386 */ 93#endif /* !i386 */
110 94
111/* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e 95/* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e
diff --git a/src/m/ibms390x.h b/src/m/ibms390x.h
index 3026266b349..18cd87f0b9a 100644
--- a/src/m/ibms390x.h
+++ b/src/m/ibms390x.h
@@ -85,11 +85,5 @@ NOTE-END */
85 85
86#define XPNTR(a) XUINT (a) 86#define XPNTR(a) XUINT (a)
87 87
88#undef START_FILES
89#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o
90
91#undef LIB_STANDARD
92#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o
93
94/* arch-tag: 4b87653c-6add-4663-8691-7d9dc17b5519 88/* arch-tag: 4b87653c-6add-4663-8691-7d9dc17b5519
95 (do not change this comment) */ 89 (do not change this comment) */
diff --git a/src/m/macppc.h b/src/m/macppc.h
index 112c15ed8e4..d58592d915a 100644
--- a/src/m/macppc.h
+++ b/src/m/macppc.h
@@ -39,12 +39,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
39 39
40#ifdef GNU_LINUX 40#ifdef GNU_LINUX
41#define LINKER $(CC) -nostdlib 41#define LINKER $(CC) -nostdlib
42#ifdef _ARCH_PPC64
43#undef START_FILES
44#define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o
45#undef LIB_STANDARD
46#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o
47#endif
48#endif 42#endif
49 43
50#ifdef _ARCH_PPC64 44#ifdef _ARCH_PPC64
diff --git a/src/m/sparc.h b/src/m/sparc.h
index b43e56bc3b9..22611636115 100644
--- a/src/m/sparc.h
+++ b/src/m/sparc.h
@@ -52,17 +52,6 @@ NOTE-END */
52 52
53#ifdef __arch64__ /* GCC, 64-bit ABI. */ 53#ifdef __arch64__ /* GCC, 64-bit ABI. */
54#define BITS_PER_LONG 64 54#define BITS_PER_LONG 64
55#ifdef __linux__
56#undef START_FILES
57#define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o
58
59/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
60 The reason is that some functions in libgcc.a call functions from libc.a,
61 and some libc.a functions need functions from libgcc.a. Since most
62 versions of ld are one-pass linkers, we need to mention -lgcc twice,
63 or else we risk getting unresolved externals. */
64#undef LIB_STANDARD
65#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o
66#endif 55#endif
67 56
68#ifndef _LP64 57#ifndef _LP64