# Makefile for GNU binary-file utilities # Copyright (C) 1992, 93, 94, 95, 96, 97, 1998 Free Software Foundation, Inc. # This file is part of GNU binutils. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. VPATH = @srcdir@ srcdir = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ host_alias = @host_alias@ target_alias = @target_alias@ program_transform_name = @program_transform_name@ bindir = @bindir@ libdir = @libdir@ tooldir = $(exec_prefix)/$(target_alias) datadir = @datadir@ mandir = @mandir@ man1dir = $(mandir)/man1 man2dir = $(mandir)/man2 man3dir = $(mandir)/man3 man4dir = $(mandir)/man4 man5dir = $(mandir)/man5 man6dir = $(mandir)/man6 man7dir = $(mandir)/man7 man8dir = $(mandir)/man8 man9dir = $(mandir)/man9 infodir = @infodir@ includedir = @includedir@ # This can be referenced by the gettext configuration code. top_builddir = .. SHELL = /bin/sh INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ AR = @AR@ AR_FLAGS = qv CC = @CC@ CFLAGS = @CFLAGS@ MAKEINFO = makeinfo TEXI2DVI = texi2dvi RANLIB = @RANLIB@ TEXI2ROFF=texi2roff MAKEOVERRIDES= CC_FOR_BUILD = @CC_FOR_BUILD@ HDEFINES = @HDEFINES@ TDEFINES = # Comment these out if using lex. # Distribution version # Distribution name # Where to find texinfo.tex to format docn with TeX TEXIDIR = $(srcdir)/../texinfo # These should all be the same program too. RUN_PROG=run SIM_LIB=libsim.a ADDL_LIBS= PROGS = $(RUN_PROG) LIBS= $(SIM_LIB) DISTSTUFF = $(PROGS) $(LIBS) BASEDIR = $(srcdir)/../.. BFDDIR = $(BASEDIR)/bfd INCDIR = $(BASEDIR)/include GDBDIR = $(BASEDIR)/gdb INCLUDES = -I. -I$(srcdir) -I../../bfd -I$(BFDDIR) -I$(INCDIR) -I$(GDBDIR) #### host and target dependant Makefile fragments come in here. ### ALL_CFLAGS = $(INCLUDES) $(HDEFINES) $(TDEFINES) $(CFLAGS) .c.o: $(CC) -c $(ALL_CFLAGS) $< LIBIBERTY = ../../libiberty/libiberty.a BFD = ../../bfd/libbfd.a INTLLIBS = @INTLLIBS@ INTLDEPS = @INTLDEPS@ RUNTEST = runtest RUNTESTFLAGS = FLAGS_TO_PASS = \ "CC=$(CC)" \ "CFLAGS=$(CFLAGS)" \ "RUNTEST=$(RUNTEST)" \ "RUNTESTFLAGS=$(RUNTESTFLAGS)" # ## The rules all: $(LIBS) $(PROGS) $(RUN_PROG): $(LIBS) run.o $(BFD) $(INTLDEPS) $(CC) $(CFLAGS) $(LDFLAGS) -o $(RUN_PROG) run.o $(SIM_LIB) $(BFD) $(INTLLIBS) $(LIBIBERTY) $(SIM_LIB): case.o interp.o rm -f $(SIM_LIB) $(AR) $(AR_FLAGS) $(SIM_LIB) case.o interp.o $(RANLIB) $(SIM_LIB) case.c: gencode ./gencode -c >case.c ; \ if [ -x /usr/latest/bin/indent ] ; then \ /usr/latest/bin/indent case.c ; \ fi optable:gencode ./gencode >optable ./gencode -a >$(srcdir)/../../opcodes/w65-opc.h gencode:gencode.c $(CC_FOR_BUILD) -o gencode $< run.o:run.c config.h interp.o:interp.c config.h ###################################################################### mostlyclean: -rm -f *.o *~ \#* core binutils.?? binutils.??? case.c clean: mostlyclean -rm -f $(PROGS) *.o *.a distclean: -rm -f Makefile config.status sysdep.h *.o *~ \#* core y.* \ binutils.?? binutils.??s binutils.aux binutils.log \ binutils.toc gencode run config.log -rm -f $(PROGS) config.h stamp-h maintainer-clean realclean: clean distclean -rm -f $(DISTSTUFF) TAGS etags tags: TAGS TAGS: force etags $(INCDIR)/*.h $(srcdir)/*.[hc] install: all installdirs for i in $(PROGS) ; do \ n=`echo $$i | sed -e 's/.new//' | sed '$(program_transform_name)'`; \ $(INSTALL_PROGRAM) $$i $(bindir)/$$n; \ done installdirs: $(SHELL) $(srcdir)/../../mkinstalldirs $(bindir) install-info: clean-info: -rm -rf *.info* # Making a dist: # cvs rtag binutils-x-yy ld+utils # cvs co -r binutils-x-yy ld+utils # cd {HERE}; make dist [-f Makefile.in] dist: $(DIST_NAME).tar.z diststuff: $(DISTSTUFF) $(DIST_NAME).tar.z: cd ../..; rm -f $(DIST_NAME); ln -s devo $(DIST_NAME) make diststuff -f Makefile.in cd ../ld; make diststuff -f Makefile.in cd ../gprof; make diststuff -f Makefile.in cd ../texinfo; mv texinfo.tex ..; rm -rf *; mv ../texinfo.tex . # Take out texinfo from configurable dirs mv ../configure.in tmp; \ sed -e '/^host_tools=/s/texinfo //' ../configure.in; rm tmp cd ..; chmod og=u `find . -print` cd ../..; tar chf - $(DIST_NAME) | gzip >$(DIST_NAME).tar.z rm -rf ../../$(DIST_NAME) # Dummy target to force execution of dependent targets. # force: # Target to uncomment host-specific lines in this makefile. Such lines must # have the following string beginning in column 1: #____# # 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: Makefile.in config.status CONFIG_FILES=Makefile CONFIG_HEADERS= $(SHELL) ./config.status config.h: stamp-h ; @true stamp-h: config.in config.status CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status config.status: configure $(SHELL) ./config.status --recheck ### Local Variables: *** ### mode:fundamental *** ### page-delimiter: "^# " *** ### End: *** ### end of file