Don't ignore .line directives
[deliverable/binutils-gdb.git] / ld / Makefile
index 014b17fc4fd5165a28390038b77a75721e834267..a565bbf5095307469b23ff0d6c4e3099aa6cbc19 100755 (executable)
@@ -3,25 +3,42 @@
 #
 # $Id$
 #
-srcdir = .
+srcdir=../common
+VPATH=../common
 BASEDIR        = ../..
-
+HOSTDIR = ../$(HOST)/
 INCLUDE        = $(srcdir)/$(BASEDIR)/include-cygnus
-INCLUDES = -I$(srcdir)  -I$(INCLUDE) 
+INCLUDES = -I. -I$(srcdir)  -I$(INCLUDE) 
 DEBUG  = -g
-CFLAGS = $(INCLUDES) $(DEBUG) 
+
+
+#__sun3__#EXTRA_DEF=-DHOST_SYS=SUN3_SYS
+#__sun4__#EXTRA_DEF=-DHOST_SYS=SUN4_SYS
+#__dgux__#EXTRA_DEF=-DHOST_SYS=DGUX_SYS
+
+CFLAGS = $(INCLUDES) $(EXTRA_DEF) $(DEBUG)
+LINTFLAGS =  $(INCLUDES) $(EXTRA_DEF) 
+
+.SUFFIXES: .y
+
+.y.o:
+       yacc -tvd $<
+       mv y.tab.c ldgram.tab.c
+       $(CC) -c $(CFLAGS) ldgram.tab.c
+       mv ldgram.tab.o ldgram.o
+
 
 # go directly to ld.new in case this ld isn't capable of
 # linking native object on this host.  It can be renamed on
 # install.
-PROGS  = ld.new
+PROGS  = $(HOSTDIR)/ld.new
 
 # for self hosting
 GNUTARGET=a.out-generic-big
 LDEMULATION=gld
-bfdlib=$(srcdir)/$(BASEDIR)/bfd/$(HOST)/libbfd.a
+BFDLIB=$(srcdir)/$(BASEDIR)/bfd/$(HOST)/libbfd.a
 
-OBJS= ldgram.o ldlex.o ldlang.o ldmain.o ldwrite.o ldexp.o ld-lnk960.o \
+OBJS= ldgram.o ldlex.o ldlang.o ldmain.o ldwrite.o ldexp.o ld-lnk960.o ld-gld68k.o \
        ld-gld.o ld-gld960.o ld-emul.o ldversion.o ldmisc.o ldsym.o ldfile.o
 
 HEADERS=config.h ldmain.h ldmain.h ldmisc.h ldsym.h ldlang.h ldexp.h \
@@ -29,49 +46,49 @@ HEADERS=config.h ldmain.h ldmain.h ldmisc.h ldsym.h ldlang.h ldexp.h \
 
 MANSOURCES=ld.tex
 
-LDCSOURCES=ldlang.c ldmain.c ldwrite.c ld-lnk960.c ld-gld.c \
+LDCSOURCES=ldlang.c ldmain.c ldwrite.c ld-lnk960.c ld-gld.c ld-gld68k.c \
        ld-gld960.c ld-emul.c ldversion.c ldmisc.c ldexp.c ldsym.c ldfile.c
 
-GENERATED_SOURCES=ldgram.tab.c ldlex.c
+GENERATED_SOURCES=ldgram.tab.c ldlex.c ldgram.tab.h y.tab.h
 GENERATED_HEADERS=ldgram.tab.h
 
 LDSOURCES=$(LDCSOURCES) ldgram.y ldlex.l
 
-#BFDSOURCES=../bfd/libbfd.c ../bfd/bfd.c  ../bfd/sunos.c ../bfd/icoff.c ../bfd/b.out.c   ../bfd/archive.c  ../bfd/srec.c
+BFDSOURCES=../../bfd/common/*.c
 
 SOURCES= $(LDSOURCES) $(BFDSOURCES)
 LINTSOURCES=   $(LDCSOURCES) $(BFDSOURCES) $(GENERATED_SOURCES)
 
-all: $(PROGS)
+all: Makefile $(PROGS) 
+
+
 
-$(PROGS): $(OBJS)
+$(BFDLIB): $(BFDSOURCES)
+       (cd ../bfd; make)
+
+$(PROGS): $(OBJS) $(BFDLIB)
 #      (cd ../bfd; make)
-#      LDEMULATION=gld; export LDEMULATION;  GNUTARGET=a.out-generic-big;./ldok -format a.out-generic-big  -o ld /lib/crt0.o   $(OBJS) $(bfdlib) -lc /usr/local/lib/gcc/sparc/1.91/gnulib
-#      gld -o ld /lib/crt0.o   $(OBJS) $(bfdlib) -lc /usr/local/lib/gcc/sparc/1.91/gnulib
-       $(CC) -Bstatic -o ld.new $(OBJS) $(bfdlib)
+#      LDEMULATION=gld; export LDEMULATION;  GNUTARGET=a.out-generic-big;./ldok -format a.out-generic-big  -o ld /lib/crt0.o   $(OBJS) $(BFDLIB) -lc /usr/local/lib/gcc/sparc/1.91/gnulib
+#      gld -o ld /lib/crt0.o   $(OBJS) $(BFDLIB) -lc /usr/local/lib/gcc/sparc/1.91/gnulib
+       $(CC) -Bstatic -o ld.new $(OBJS) $(BFDLIB)
 
 
 ld1: ld
-       gcc -v  -B./ -o ld1  $(OBJS) $(bfdlib)
+       gcc -v  -B./ -o ld1  $(OBJS) $(BFDLIB)
 
 ld2: ld1
        mv ld1 ld
-       gcc -v  -B./ -o ld2  $(OBJS) $(bfdlib)
+       gcc -v  -B./ -o ld2  $(OBJS) $(BFDLIB)
 
 ld3: ld2
        mv ld2 ld
-       gcc -v  -B./ -o ld3  $(OBJS) $(bfdlib)
+       gcc -v  -B./ -o ld3  $(OBJS) $(BFDLIB)
 
 ld.dvi:ld.tex
        tex ld.tex
 
-ldgram.o:ldgram.y
-       yacc -d ldgram.y
-       mv y.tab.c ldgram.tab.c
-       $(CC) -c $(CFLAGS) ldgram.tab.c
-       mv ldgram.tab.o ldgram.o
-
-ldgram.tab.h:ldgram.o 
+ldgram.o: ldgram.y
+ldgram.tab.h:ldgram.y
        cp y.tab.h ldgram.tab.h
        
 ldlex.c: ldlex.l ldgram.tab.h
@@ -83,19 +100,21 @@ ldfile.o: ldfile.c
 ldwrite.o: ldwrite.c
 ldlang.o: ldlang.c ldgram.tab.h
 ld-gld.o: ld-gld.c
+ld-gld68k.o: ld-gld68k.c
 ld-gld960.o: ld-gld960.c
-ld-emul.o:ld-emul.c
-ld-lnk960.o:ld-lnk960.c
-ldexp.o:ldexp.c ldgram.tab.h
-ldmisc.o:ldmisc.c 
-ldsym.o:ldsym.c 
+ld-emul.o: ld-emul.c
+ld-lnk960.o: ld-lnk960.c
+ldexp.o: ldexp.c ldgram.tab.h
+ldmisc.o: ldmisc.c 
+ldsym.o: ldsym.c 
 
 clean:
        - rm -f $(OBJS) $(GENERATED_SOURCES) $(GENERATED_HEADERS)
-       - rm -f ld ld1 ld2
+       - rm -f ld ld1 ld2 ld3 ld.new
+
 
 lintlog:$(SOURCES) Makefile
-       $(LINT) -abhxzn  $(CFLAGS)  $(LINTSOURCES) \
+       $(LINT) -abhxzn  $(LINTFLAGS)  $(LINTSOURCES) \
 | grep -v "pointer casts may be troublesome" \
 | grep -v "possible pointer alignment problem" \
 | grep -v "ignore" \
This page took 0.024736 seconds and 4 git commands to generate.