diff options
author | K. Richard Pixley <rich@cygnus> | 1991-04-04 18:37:36 +0000 |
---|---|---|
committer | K. Richard Pixley <rich@cygnus> | 1991-04-04 18:37:36 +0000 |
commit | 99a42820d9dc6b393e98446f726f51c702fce28b (patch) | |
tree | 0dffcb2bfb58b891ef5c27ea46b0cb8bb462a0fe /binutils/Makefile.in | |
parent | 0e39a8bbfe9e77100c9f0672415b2ae32df54d29 (diff) | |
download | binutils-gdb-99a42820d9dc6b393e98446f726f51c702fce28b.tar.gz |
Initial revision
Diffstat (limited to 'binutils/Makefile.in')
-rw-r--r-- | binutils/Makefile.in | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/binutils/Makefile.in b/binutils/Makefile.in new file mode 100644 index 00000000000..fc04fc4052b --- /dev/null +++ b/binutils/Makefile.in @@ -0,0 +1,189 @@ +### Makefile for GNU binary-file utilities + +#$Id$ + +## Configuration options +# These should be all you need set before compiling + +# these two should be the same program +AR=ar +RANLIB=ranlib + +# copy and strip should be the same program +COPY=copy +STRIP=strip + +# These should all be the same program too. +SIZE=size +NM=nm +OBJDUMP=objdump + +PROGS = $(SIZE) $(COPY) $(OBJDUMP) $(NM) $(AR) $(STRIP) $(RANLIB) + +srcdir = . +BASEDIR = $(srcdir)/../.. + +# Let rich do this for now: +LIBDIR = $(BASEDIR)/bfd/$(HOST) + +#__sun3__#DEFINES=-DHOST_SYS=SUN3_SYS +#__sun3__#LDFLAGS = -Bstatic + +#__sun4__#DEFINES=-DHOST_SYS=SUN4_SYS +#__sun4__#LDFLAGS = -Bstatic + +#__sun386i__#LDFLAGS = -Bstatic + +#__rs6000__#DEFINES=-Daix +#__rs6000__#ALLOCA = alloca.o + +#__i386v__#ALLOCA = alloca.o +#__i386v__#DEFINES=-DUSG + +INCDIR = $(BASEDIR)/include-cygnus + +CFLAGS = -g -I$(INCDIR) $(DEFINES) + + +bindir=$(BASEDIR)/bin + +DISASMS = m68k-pinsn.o i960-pinsn.o sparc-pinsn.o +# +## Random definitions +# Hopefully all these may be flushed once we get configuration down pat. + +# alloca only needed for systems which don't have it and when cc != gcc. +# ALLOCA = alloca.o + +# nm tries to malloc enough space for the string table. The old GNU malloc +# rounds this up to a power of two (e.g. 5M becomes 8M), and so it might +# fail unnecessarily. I've also seen some Unix malloc's fail, even when +# there is enough memory. So use the new GNU malloc. +# MALLOC = gmalloc.o + +# Use the GNU getopt unless you have problems with it. +# The IRIS version could probably benefit from being assembled with +# libmalloc rather than the ordinary malloc. +GNU_GETOPT = getopt.o $(ALLOCA) +GNU_GETOPT_LONG = getopt1.o $(GNU_GETOPT) + +# This is supposed to become part of the standard GNU libs, whatever +# that means. +FILEMODE = filemode.o + + + +# Code shared by all the binutils. +BULIBS = bucomm.o version.o + +ADDL_LIBS = $(GNU_GETOPT_LONG) $(MALLOC) $(FILEMODE) $(BULIBS) + +BFD = $(LIBDIR)/libbfd.a +# +## The rules + +all: $(ADDL_LIBS) $(PROGS) + +$(SIZE): $(ADDL_LIBS) size.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(SIZE) size.o $(ADDL_LIBS) $(BFD) + +$(COPY): $(ADDL_LIBS) copy.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(COPY) copy.o $(ADDL_LIBS) $(BFD) + +$(NM): $(ADDL_LIBS) nm.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(NM) nm.o $(MALLOC) $(ADDL_LIBS) $(BFD) + +$(OBJDUMP): $(ADDL_LIBS) size.o objdump.o $(DISASMS) $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(OBJDUMP) objdump.o $(DISASMS) $(ADDL_LIBS) $(BFD) + +$(AR): $(ADDL_LIBS) ar.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(AR) ar.o $(MALLOC) $(ADDL_LIBS) $(BFD) + +$(RANLIB): $(AR) + -rm -f $(RANLIB) + -ln $(AR) $(RANLIB) + +$(STRIP): $(COPY) + -rm -f $(STRIP) + -ln $(COPY) $(STRIP) + +clean: + -rm -f *.o *~ \#* core $(PROGS) TAGS + +etags tags: TAGS + +TAGS: .force + etags $(INCDIR)/*.h $(BFDSRC)/*.[hc] *.[hc] + +realclean: clean + -rm -f $(PROGS) TAGS + +install: $(PROGS) + for prog in $(PROGS); do \ + rm -f $G960BASE/bin/$$prog-new; cp $$prog $$G960BASE/bin/$$prog-new ; \ + done + + +bucomm.o: bucomm.c +version.o: version.c +size.o: size.c +copy.o: copy.c +objdump.o: objdump.c +m68k-pinsn.o: m68k-pinsn.c +m68k-pinsn.o: ./m68k-opcode.h +i960-pinsn.o: i960-pinsn.c +sparc-pinsn.o: sparc-pinsn.c +sparc-pinsn.o: ./sparc-opcode.h +nm.o: nm.c +ar.o: ar.c +strip.o: strip.c + + +#----------------------------------------------------------------------------- +# 'STANDARD' GNU/960 TARGETS BELOW THIS POINT +# +# 'VERSION' file must be present and contain a string of the form "x.y" +#----------------------------------------------------------------------------- + +ver960.c: FORCE + rm -f ver960.c + echo "char ${TARG}_ver[]= \"${TARG} `cat VERSION`, `date`\";" > ver960.c + + +# Dummy target to force execution of dependent targets. +# +.force: +FORCE: + +# Target to uncomment host-specific lines in this makefile. Such lines must +# have the following string beginning in column 1: #__<hostname>__# +# Original Makefile is backed up as 'Makefile.old'. +# +# Invoke with: make make HOST=xxx +# +make: + -@if test $(HOST)x = x ; then \ + echo 'Specify "make make HOST=???"'; \ + exit 1; \ + fi ; \ + grep -s "^#The next line was generated by 'make make'" Makefile; \ + if test $$? = 0 ; then \ + echo "Makefile has already been processed with 'make make'";\ + exit 1; \ + fi ; \ + mv -f Makefile Makefile.old; \ + echo "#The next line was generated by 'make make'" >Makefile ; \ + echo "HOST=$(HOST)" >>Makefile ; \ + echo >>Makefile ; \ + sed "s/^#__$(HOST)__#//" < Makefile.old >>Makefile + +# + +Makefile: $(srcdir)/Makefile.in $(srcdir)/configure + (cd $(srcdir) ; ./configure -host=$(host) $(target)) + +### Local Variables: *** +### mode:fundamental *** +### page-delimiter: "^#" *** +### End: *** +### end of file |