Commit dfbbda83 authored by Glenn Morris's avatar Glenn Morris

Minor simplications for src/m/amdx86-64.h.

* m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
(START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
since CRT_DIR defaults to /usr/lib.  Suggested by Dan Nicolaescu.
parent 1ddac986
2010-04-24 Glenn Morris <rgm@gnu.org>
* m/amdx86-64.h (START_FILES, LIB_STANDARD) [__OpenBSD__]:
For clarity, revert to using fixed /usr/lib rather than $CRT_DIR.
(START_FILES, LIB_STANDARD) [__FreeBSD__]: Merge into the generic case,
since CRT_DIR defaults to /usr/lib. Suggested by Dan Nicolaescu.
2010-04-24 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (display_line): Use `reseat' instead of `reseat_1', and
......
......@@ -72,30 +72,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
#undef DATA_SEG_BITS
#ifdef __FreeBSD__
/* The libraries for binaries native to the build host's architecture are
installed under /usr/lib in FreeBSD, and the ones that need special paths
are 32-bit compatibility libraries (installed under /usr/lib32). To build
a native binary of Emacs on FreeBSD/amd64 we can just point to /usr/lib. */
#ifdef __OpenBSD__
#undef START_FILES
#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o
/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
The reason is that some functions in libgcc.a call functions from libc.a,
and some libc.a functions need functions from libgcc.a. Since most
versions of ld are one-pass linkers, we need to mention -lgcc twice,
or else we risk getting unresolved externals. */
#define START_FILES pre-crt0.o /usr/lib/crt0.o /usr/lib/crtbegin.o
#undef LIB_STANDARD
#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o
#elif defined(__OpenBSD__)
#undef START_FILES
#define START_FILES pre-crt0.o $(CRT_DIR)/crt0.o $(CRT_DIR)/crtbegin.o
#undef LIB_STANDARD
#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtend.o
#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o
#elif defined(__NetBSD__)
......@@ -110,19 +92,25 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* LIB_STANDARD and START_FILES set correctly in s/darwin.h */
#else /* !__OpenBSD__ && !__FreeBSD__ && !__NetBSD__ && !SOLARIS2
&& !__APPLE__ */
#else /* !__OpenBSD__ && !__NetBSD__ && !SOLARIS2 && !__APPLE__ */
/* CRT_DIR defaults to /usr/lib. On GNU/Linux, it may be /usr/lib64.
On FreeBSD, the libraries for binaries native to the build host's
architecture are installed under /usr/lib, and the ones that need
special paths are 32-bit compatibility libraries (installed under
/usr/lib32). So to build a native binary of Emacs on FreeBSD/amd64
we can just point to /usr/lib.
*/
#undef START_FILES
#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o
/* The duplicate -lgcc is intentional in the definition of LIB_STANDARD.
The reason is that some functions in libgcc.a call functions from libc.a,
and some libc.a functions need functions from libgcc.a. Since most
versions of ld are one-pass linkers, we need to mention -lgcc twice,
or else we risk getting unresolved externals. */
#undef START_FILES
#undef LIB_STANDARD
#define START_FILES pre-crt0.o $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o
#define LIB_STANDARD -lgcc -lc -lgcc $(CRT_DIR)/crtn.o
#endif /* __FreeBSD__ */
#endif /* __OpenBSD__ */
#endif /* !i386 */
/* arch-tag: 8a5e001d-e12e-4692-a3a6-0b15ba271c6e
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment