changeset 108510:b9450230de5c

Simplify linker-related logic in src/Makefile.in. * src/Makefile.in (YMF_PASS_LDFLAGS, LD, LINKER): Simplify the logic. (LINKER_WAS_SPECIFIED): Remove.
author Glenn Morris <rgm@gnu.org>
date Tue, 11 May 2010 20:44:36 -0700
parents 0db9ef2f88bd
children f8e62c2bf3e9
files src/ChangeLog src/Makefile.in
diffstat 2 files changed, 26 insertions(+), 36 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Tue May 11 20:09:56 2010 -0700
+++ b/src/ChangeLog	Tue May 11 20:44:36 2010 -0700
@@ -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]:
--- a/src/Makefile.in	Tue May 11 20:09:56 2010 -0700
+++ b/src/Makefile.in	Tue May 11 20:44:36 2010 -0700
@@ -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_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 @@
    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
+/* 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`
+#endif /* defined (__GNUC__) && ! defined (LINKER) */
 
-#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.  */
-#define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
-#else
-#define YMF_PASS_LDFLAGS(flags) flags
-#endif
-
-#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