Added stage stuff.

This commit is contained in:
K. Richard Pixley 1991-05-22 01:30:56 +00:00
parent 839df5c343
commit 7da15eff0d

View file

@ -4,6 +4,12 @@
# # # #
#################################################################### ####################################################################
srcdir = .
destdir = /usr/local
#### host and target dependent Makefile fragments come in here.
##
# Here is a rule for making .o files from .c files that doesn't force # Here is a rule for making .o files from .c files that doesn't force
# the type of the machine (like -sun3) into the flags. # the type of the machine (like -sun3) into the flags.
.c.o: .c.o:
@ -11,8 +17,8 @@
# Destination installation directory. The libraries are copied to DESTDIR # Destination installation directory. The libraries are copied to DESTDIR
# when you do a `make install', and the header files to INCDIR/readline/*.h. # when you do a `make install', and the header files to INCDIR/readline/*.h.
DESTDIR = /usr/local/lib DESTDIR = $(destdir)/lib
INCDIR = /usr/local/include INCDIR = $(destdir)/include
# Define TYPES as -DVOID_SIGHANDLER if your operating system uses # Define TYPES as -DVOID_SIGHANDLER if your operating system uses
# a return type of "void" for signal handlers. # a return type of "void" for signal handlers.
@ -38,12 +44,13 @@ CFLAGS = $(DEBUG_FLAGS) $(SYSV) -I.
# A good alternative is gcc -traditional. # A good alternative is gcc -traditional.
#CC = gcc -traditional #CC = gcc -traditional
CC = cc CC = cc
RANLIB = /usr/bin/ranlib RANLIB = /bin/ranlib
AR = ar AR = ar
AR_FLAGS = clq
RM = rm RM = rm
CP = cp CP = cp
LOCAL_INCLUDES = -I../ LOCAL_INCLUDES = -I$(srcdir)/../
CSOURCES = readline.c history.c funmap.c keymaps.c vi_mode.c \ CSOURCES = readline.c history.c funmap.c keymaps.c vi_mode.c \
emacs_keymap.c vi_keymap.c emacs_keymap.c vi_keymap.c
@ -60,12 +67,14 @@ THINGS_TO_TAR = $(SOURCES) $(SUPPORT)
########################################################################## ##########################################################################
STAGESTUFF = *.o *.a *.log *.cp *.tp *.vr *.fn *.aux *.pg *.toc
all: libreadline.a all: libreadline.a
libreadline.a: readline.o history.o funmap.o keymaps.o libreadline.a: readline.o history.o funmap.o keymaps.o
$(RM) -f libreadline.a $(RM) -f libreadline.a
$(AR) clq libreadline.a readline.o history.o funmap.o keymaps.o $(AR) $(AR_FLAGS) libreadline.a readline.o history.o funmap.o keymaps.o
-if [ -f $(RANLIB) ]; then $(RANLIB) libreadline.a; fi $(RANLIB) libreadline.a
readline.o: readline.h chardefs.h keymaps.h history.h readline.c vi_mode.c readline.o: readline.h chardefs.h keymaps.h history.h readline.c vi_mode.c
history.o: history.c history.h history.o: history.c history.h
@ -95,9 +104,45 @@ includes:
fi fi
$(CP) readline.h keymaps.h chardefs.h $(INCDIR)/readline/ $(CP) readline.h keymaps.h chardefs.h $(INCDIR)/readline/
clean: clean:
rm -f *.o *.a *.log *.cp *.tp *.vr *.fn *.aux *.pg *.toc rm -f $(STAGESTUFF)
$(DESTDIR)/libreadline.a: libreadline.a $(DESTDIR)/libreadline.a: libreadline.a
-mv $(DESTDIR)/libreadline.a $(DESTDIR)/libreadline.old -mv $(DESTDIR)/libreadline.a $(DESTDIR)/libreadline.old
cp libreadline.a $(DESTDIR)/libreadline.a cp libreadline.a $(DESTDIR)/libreadline.a
$(RANLIB) -t $(DESTDIR)/libreadline.a $(RANLIB) -t $(DESTDIR)/libreadline.a
# Copy the object files from a particular stage into a subdirectory.
stage1: force
-mkdir stage1
-mv $(STAGESTUFF) stage1
stage2: force
-mkdir stage2
-mv $(STAGESTUFF) stage2
stage3: force
-mkdir stage3
-mv $(STAGESTUFF) stage3
de-stage1: force
- (cd stage1 ; mv -f * ..)
- rmdir stage1
de-stage2: force
- (cd stage2 ; mv -f * ..)
- rmdir stage2
de-stage3: force
- (cd stage3 ; mv -f * ..)
- rmdir stage3
force:
# with the gnu make, this is done automatically.
Makefile: $(srcdir)/Makefile.in $(srcdir)/configure
(cd $(srcdir) ; \
./configure +destdir=$(destdir) +norecurse \
`if [ "$(srcdir)" != "." ] ; then echo +f; fi` \
$(host) +target=$(target))