Simplify linker-related logic in src/Makefile.in.
* src/Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic. (LINKER_WAS_SPECIFIED): Remove.
This commit is contained in:
parent
057886a3ac
commit
b5457f146f
2 changed files with 25 additions and 35 deletions
|
@ -1,5 +1,8 @@
|
|||
2010-05-12 Glenn Morris <rgm@gnu.org>
|
||||
|
||||
* Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic.
|
||||
(LINKER_WAS_SPECIFIED): Remove.
|
||||
|
||||
* Makefile.in (LIB_GCC): Set using configure, not cpp.
|
||||
(GNULIB_VAR) [!ORDINARY_LINK]: Always set to $LIB_GCC.
|
||||
* m/arm.h (LIB_GCC) [GNU_LINUX]:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
# Makefile for GNU Emacs.
|
||||
# Copyright (C) 1985, 1987, 1988, 1993, 1994, 1995, 1999, 2000, 2001, 2002,
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
# Free Software Foundation, Inc.
|
||||
# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
||||
# Free Software Foundation, Inc.
|
||||
|
||||
# This file is part of GNU Emacs.
|
||||
|
||||
|
@ -260,16 +260,22 @@ LIBX_BASE=$(LIBXMENU) LD_SWITCH_X_SITE
|
|||
LIBX_OTHER=@LIBX_OTHER@
|
||||
#endif /* not HAVE_X_WINDOWS */
|
||||
|
||||
#ifndef ORDINARY_LINK
|
||||
|
||||
/* A macro which other sections of Makefile can redefine to munge the
|
||||
flags before they are passed to LD. This is helpful if you have
|
||||
redefined LD to something odd, like "gcc".
|
||||
(The YMF prefix is a holdover from the old name "ymakefile".) */
|
||||
#define YMF_PASS_LDFLAGS(flags) flags
|
||||
|
||||
|
||||
#ifdef ORDINARY_LINK
|
||||
LD = $(CC)
|
||||
|
||||
#else /* not ORDINARY_LINK */
|
||||
GNULIB_VAR = $(LIB_GCC)
|
||||
|
||||
/* Fix linking if compiled with GCC. */
|
||||
#ifdef __GNUC__
|
||||
|
||||
#ifdef LINKER
|
||||
#define LINKER_WAS_SPECIFIED
|
||||
#endif
|
||||
|
||||
#if defined (__GNUC__) && ! defined (LINKER)
|
||||
/* Versions of GCC >= 2.0 put their library, libgcc.a, in obscure
|
||||
places that are difficult to figure out at make time. Fortunately,
|
||||
these same versions allow you to pass arbitrary flags on to the
|
||||
|
@ -278,42 +284,23 @@ GNULIB_VAR = $(LIB_GCC)
|
|||
Well, it is not quite perfect. The "-nostdlib" keeps GCC from
|
||||
searching for libraries in its internal directories, so we have to
|
||||
ask GCC explicitly where to find libgcc.a. */
|
||||
|
||||
#ifndef LINKER
|
||||
#define LINKER $(CC) -nostdlib
|
||||
#endif
|
||||
|
||||
#ifndef LINKER_WAS_SPECIFIED
|
||||
/* GCC passes any argument prefixed with -Xlinker directly to the
|
||||
linker. See prefix-args.c for an explanation of why we do not do
|
||||
this with the shell''s ``for'' construct.
|
||||
Note that some people do not have '.' in their paths, so we must
|
||||
use ./prefix-args. */
|
||||
/* GCC passes any argument prefixed with -Xlinker directly to the linker.
|
||||
See prefix-args.c for an explanation of why we do not do this with the
|
||||
shell''s ``for'' construct. Note that sane people do not have '.' in
|
||||
their paths, so we must use ./prefix-args. */
|
||||
#undef YMF_PASS_LDFLAGS
|
||||
#define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
|
||||
#else
|
||||
#define YMF_PASS_LDFLAGS(flags) flags
|
||||
#endif
|
||||
#endif /* defined (__GNUC__) && ! defined (LINKER) */
|
||||
|
||||
#endif /* not ORDINARY_LINK */
|
||||
|
||||
#ifdef ORDINARY_LINK
|
||||
LD = $(CC)
|
||||
#else
|
||||
#ifdef LINKER
|
||||
LD=LINKER
|
||||
#else /* not LINKER */
|
||||
LD=ld
|
||||
#endif /* not LINKER */
|
||||
|
||||
#endif /* not ORDINARY_LINK */
|
||||
|
||||
/* A macro which other sections of Makefile can redefine to munge the
|
||||
flags before they are passed to LD. This is helpful if you have
|
||||
redefined LD to something odd, like "gcc".
|
||||
(The YMF prefix is a holdover from the old name "ymakefile".)
|
||||
*/
|
||||
#ifndef YMF_PASS_LDFLAGS
|
||||
#define YMF_PASS_LDFLAGS(flags) flags
|
||||
#endif
|
||||
|
||||
#ifdef MSDOS
|
||||
#ifdef HAVE_X_WINDOWS
|
||||
|
|
Loading…
Add table
Reference in a new issue