aboutsummaryrefslogtreecommitdiff
path: root/ld/Makefile.in
diff options
context:
space:
mode:
authorK. Richard Pixley <rich@cygnus>1993-06-30 22:48:51 +0000
committerK. Richard Pixley <rich@cygnus>1993-06-30 22:48:51 +0000
commit559d7baf896f333a1f32eb350d00491321e1ac24 (patch)
tree49b0477ec61ef563a70ee62b6264dcdea7b8b3fc /ld/Makefile.in
parentc2e247c4ff760324df53fe50a9ef9168fd5e9452 (diff)
downloadgdb-559d7baf896f333a1f32eb350d00491321e1ac24.zip
gdb-559d7baf896f333a1f32eb350d00491321e1ac24.tar.gz
gdb-559d7baf896f333a1f32eb350d00491321e1ac24.tar.bz2
* Makefile.in (ldgram.[hc]): rewrite this rule in such a way that gnu
make can run in parallel without colliding on yacc's static file names.
Diffstat (limited to 'ld/Makefile.in')
-rw-r--r--ld/Makefile.in13
1 files changed, 10 insertions, 3 deletions
diff --git a/ld/Makefile.in b/ld/Makefile.in
index a27e3ea..2181f43 100644
--- a/ld/Makefile.in
+++ b/ld/Makefile.in
@@ -41,7 +41,9 @@ man9dir = $(mandir)/man9
infodir = $(prefix)/info
includedir = $(prefix)/include
docdir = $(datadir)/doc
-scriptdir = $(datadir)/ld
+# We can't put the scripts in $(datadir) because the SEARCH_DIR
+# directives need to be different for native and cross linkers.
+scriptdir = $(tooldir)/lib/ld
gcclibdir = $(libdir)/gcc/$(target_alias)
@@ -76,7 +78,7 @@ LIB_PATH =
BASEDIR = ../..
INCLUDE = $(srcdir)/../include
-INCLUDES = -I. -I$(srcdir) -I../include -I$(srcdir)/../bfd -I../bfd -I$(INCLUDE)
+INCLUDES = -I. -I$(srcdir) -I$(srcdir)/../bfd -I../bfd -I$(INCLUDE)
# What version of the manual to build
DOCVER = gen
@@ -166,7 +168,12 @@ all: $(LD_PROG)
info: ld.info
-ldgram.h ldgram.c: ldgram.y
+# This somewhat odd makefile construction prevents a parallel gnu make
+# from spinning off two bison processes concurrently. This is
+# important because yacc uses static file names and multiple instances
+# will collide.
+ldgram.h ldgram.c: ldgram-files
+ldgram-files: ldgram.y
$(BISON) $(BISONFLAGS) -d $(srcdir)/ldgram.y
mv -f y.tab.c ldgram.c
mv -f y.tab.h ldgram.h