From 06a97fbd00ac686154ce466fe97e45e4b15d6a85 Mon Sep 17 00:00:00 2001 From: Per Bothner Date: Mon, 7 Oct 1991 23:14:30 +0000 Subject: [PATCH] * ar.c, Makefile.in, new files {is,not,maybe}-ranlib.c: Make two different binaries for ar and ranlib, instead of distinguishing them at run time using argv[0]. (Old behavior is still available if you "make ar_with_ranlib", but it is not the default.) * ranlib.sh (new): An alternative one-line shell implementation of ranlib. --- binutils/.Sanitize | 15 ++++++++++++++- binutils/ChangeLog | 10 ++++++++++ binutils/Makefile.in | 27 +++++++++++++++++++-------- 3 files changed, 43 insertions(+), 9 deletions(-) diff --git a/binutils/.Sanitize b/binutils/.Sanitize index 487a9007cca..f466de38506 100644 --- a/binutils/.Sanitize +++ b/binutils/.Sanitize @@ -32,6 +32,9 @@ Makefile.in TODO alloca.c ar.c +is-ranlib.o +not-ranlib.o +maybe-ranlib.o bucomm.c config config.sub @@ -47,6 +50,7 @@ m68k-pinsn.c nm.c objdump.c ostrip.c +ranlib.sh size.c sparc-pinsn.c strip.c @@ -59,7 +63,16 @@ echo Done in `pwd`. # # # $Log$ -# Revision 1.3 1991/09/01 03:47:07 steve +# Revision 1.4 1991/10/07 23:14:30 bothner +# * ar.c, Makefile.in, new files {is,not,maybe}-ranlib.c: +# Make two different binaries for ar and ranlib, instead of +# distinguishing them at run time using argv[0]. +# (Old behavior is still available if you "make ar_with_ranlib", +# but it is not the default.) +# * ranlib.sh (new): An alternative one-line +# shell implementation of ranlib. +# +# Revision 1.3 1991/09/01 03:47:07 steve # Added config.sub # # Revision 1.2 1991/07/15 23:38:04 steve diff --git a/binutils/ChangeLog b/binutils/ChangeLog index b1e9e476ea0..416155a65aa 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,13 @@ +Mon Oct 7 11:31:05 1991 Per Bothner (bothner at cygnus.com) + + * ar.c, Makefile.in, new files {is,not,maybe}-ranlib.c: + Make two different binaries for ar and ranlib, instead of + distinguishing them at run time using argv[0]. + (Old behavior is still available if you "make ar_with_ranlib", + but it is not the default.) + * ranlib.sh (new): An alternative one-line + shell implementation of ranlib. + Fri Oct 4 21:49:44 1991 John Gilmore (gnu at cygnus.com) * objdump.c: Cope with renames of a few BFD types & enums. diff --git a/binutils/Makefile.in b/binutils/Makefile.in index 75a5d01182c..61320b4c657 100644 --- a/binutils/Makefile.in +++ b/binutils/Makefile.in @@ -5,7 +5,7 @@ srcdir = . destdir = /usr/local -version=`$(srcdir)/../gcc$(subdir)/gcc -dumpversion` +version=`$(unsubdir)/../gcc$(subdir)/gcc -dumpversion` prefix = $(destdir) bindir = $(prefix)/bin libdir = $(prefix)/lib @@ -19,7 +19,7 @@ INSTALL_FILE = $(INSTALL) # These should be all you need set before compiling #CC=gcc -Wall -# these two should be the same program +# these two are almost the same program AR_PROG=ar RANLIB_PROG=ranlib @@ -35,8 +35,8 @@ OBJDUMP_PROG=objdump PROGS = $(SIZE_PROG) $(COPY_PROG) $(OBJDUMP_PROG) $(NM_PROG) $(AR_PROG) $(STRIP_PROG) $(RANLIB_PROG) STAGESTUFF = $(PROGS) *.o -BASEDIR = $(srcdir)/.. -LIBDIR = $(srcdir)/../bfd$(subdir) +BASEDIR = $(unsubdir)/.. +LIBDIR = $(unsubdir)/../bfd$(subdir) #### host and target dependant Makefile fragments come in here. ### @@ -65,7 +65,7 @@ DISASMS = m68k-pinsn.o i960-pinsn.o sparc-pinsn.o am29k-pinsn.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. -LIBIBERTY = $(srcdir)/../libiberty$(subdir)/libiberty.a +LIBIBERTY = $(unsubdir)/../libiberty$(subdir)/libiberty.a # Code shared by all the binutils. BULIBS = bucomm.o version.o filemode.o @@ -94,10 +94,21 @@ $(NM_PROG): $(ADDL_LIBS) nm.o $(BFD) $(OBJDUMP_PROG): $(ADDL_LIBS) size.o objdump.o $(DISASMS) $(BFD) $(CC) $(LDFLAGS) $(CFLAGS) -o $(OBJDUMP_PROG) objdump.o $(DISASMS) $(ADDL_LIBS) $(LOADLIBES) -$(AR_PROG): $(ADDL_LIBS) ar.o $(BFD) - $(CC) $(LDFLAGS) $(CFLAGS) -o $(AR_PROG) ar.o $(ADDL_LIBS) $(LOADLIBES) +$(AR_PROG): $(ADDL_LIBS) ar.o not-ranlib.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(AR_PROG) ar.o not-ranlib.o $(ADDL_LIBS) $(LOADLIBES) -$(RANLIB_PROG): $(AR_PROG) +$(RANLIB_PROG): $(ADDL_LIBS) ar.o is-ranlib.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(AR_PROG) ar.o is-ranlib.o $(ADDL_LIBS) $(LOADLIBES) + +# This rule creates a single binary that switches between ar and ranlib +# by looking at argv[0]. Use this kludge to save some disk space. +# However, you have to install things by hand. +# (That is after 'make install', replace the installed ranlib by a link to ar.) + +# Alternatively, you can install ranlib.sh as ranlib. + +ar_with_ranlib: $(ADDL_LIBS) ar.o maybe-ranlib.o $(BFD) + $(CC) $(LDFLAGS) $(CFLAGS) -o $(AR_PROG) ar.o maybe-ranlib.o $(ADDL_LIBS) $(LOADLIBES) -rm -f $(RANLIB_PROG) -ln $(AR_PROG) $(RANLIB_PROG) -- 2.30.2