aboutsummaryrefslogtreecommitdiffstats
path: root/src/m
diff options
context:
space:
mode:
authorKarl Berry2005-12-25 19:29:28 +0000
committerKarl Berry2005-12-25 19:29:28 +0000
commitd52c26e925297a2d1663e2293d46ce95e91c4689 (patch)
tree58f42057e24c4339d80ae20209a34a40ee10bf07 /src/m
parent6f9de17a614b75090861c9f5e70e9f0d08a7f0da (diff)
downloademacs-d52c26e925297a2d1663e2293d46ce95e91c4689.tar.gz
emacs-d52c26e925297a2d1663e2293d46ce95e91c4689.zip
FreeBSD and m/amdx86-64.h
Diffstat (limited to 'src/m')
-rw-r--r--src/m/amdx86-64.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/m/amdx86-64.h b/src/m/amdx86-64.h
index 2d7d86ce7c3..14ddd16406e 100644
--- a/src/m/amdx86-64.h
+++ b/src/m/amdx86-64.h
@@ -100,11 +100,38 @@ Boston, MA 02110-1301, USA. */
100/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */ 100/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
101#undef DATA_SEG_BITS 101#undef DATA_SEG_BITS
102 102
103#ifdef __FreeBSD__
104
105/* The libraries for binaries native to the build host's architecture are
106 installed under /usr/lib in FreeBSD, and the ones that need special paths
107 are 32-bit compatibility libraries (installed under /usr/lib32). To build
108 a native binary of Emacs on FreeBSD/amd64 we can just point to /usr/lib. */
109
110#undef START_FILES
111#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o
112
113/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
114 The reason is that some functions in libgcc.a call functions from libc.a,
115 and some libc.a functions need functions from libgcc.a. Since most
116 versions of ld are one-pass linkers, we need to mention -lgcc twice,
117 or else we risk getting unresolved externals. */
118#undef LIB_STANDARD
119#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o
120
121#else /* !__FreeBSD__ */
122
103#undef START_FILES 123#undef START_FILES
104#define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o 124#define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o
105 125
126/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
127 The reason is that some functions in libgcc.a call functions from libc.a,
128 and some libc.a functions need functions from libgcc.a. Since most
129 versions of ld are one-pass linkers, we need to mention -lgcc twice,
130 or else we risk getting unresolved externals. */
106#undef LIB_STANDARD 131#undef LIB_STANDARD
107#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o 132#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o
108 133
134#endif /* __FreeBSD__ */
135
109/* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e 136/* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e
110 (do not change this comment) */ 137 (do not change this comment) */