Mercurial > octave-nkf
view libcruft/Makefile.in @ 3209:fbb332b96e4f
[project @ 1998-11-03 20:48:54 by jwe]
author | jwe |
---|---|
date | Tue, 03 Nov 1998 20:48:58 +0000 |
parents | 3f6a813eb09e |
children | 30770ba4457a |
line wrap: on
line source
# # Makefile for octave's libcruft directory # # John W. Eaton # jwe@bevo.che.wisc.edu # University of Wisconsin-Madison # Department of Chemical Engineering TOPDIR = .. srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ include $(TOPDIR)/Makeconf INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ # List of the directories that contain Fortran source. Simply copying # a new .f file into one of these directories is sufficient to have it # added to libcruft.a. If you add a new directory here, you also need # generate a new configure script in the top-level directory (edit # configure.in and run autoconf). CRUFT_DIRS = blas dassl fftpack lapack linpack minpack misc odepack \ ordered-qz quadpack ranlib slatec-err slatec-fn specfun villad SUBDIRS = $(CRUFT_DIRS) DISTFILES = Makefile.in ChangeLog Makerules.in $(SOURCES) STOP.patch ifeq ($(SHARED_LIBS), true) BINDISTLIBS = libcruft/libcruft BINDISTFILES = libcruft.$(SHLEXT_VER) endif all: $(SUBDIRS) shared-lib .PHONY: all $(SUBDIRS): echo making all in $@ cd $@; $(MAKE) all .PHONY: $(SUBDIRS) # XXX FIXME XXX -- this should build the shared library directly from # a normal archive file (created from PIC code, though). MISC_OBJ := misc/machar.o misc/dostop.o misc/f77-extern.o \ misc/f77-fcn.o misc/lo-error.o CRUFT_FSRC := $(foreach dir, $(SUBDIRS), $(wildcard $(srcdir)/$(dir)/*.f)) CRUFT_OBJ2 := $(patsubst $(srcdir)/%, %, $(CRUFT_FSRC)) CRUFT_OBJ1 := $(patsubst %.f, %.o, $(CRUFT_OBJ2)) CRUFT_OBJ := $(CRUFT_OBJ1) $(MISC_OBJ) ifeq ($(SHARED_LIBS), true) ifdef FPICFLAG CRUFT_OBJ_DIR := $(dir $(CRUFT_OBJ)) CRUFT_OBJ_PICDIR := $(addsuffix pic/, $(CRUFT_OBJ_DIR)) CRUFT_OBJ_NOTDIR := $(notdir $(CRUFT_OBJ)) CRUFT_PICOBJ := $(join $(CRUFT_OBJ_PICDIR), $(CRUFT_OBJ_NOTDIR)) else CRUFT_PICOBJ := $(CRUFT_OBJ) endif endif ifeq ($(SHARED_LIBS), true) shared-lib: libcruft.$(SHLEXT) else shared-lib: endif .PHONY: shared-lib libcruft.$(SHLEXT): libcruft.$(SHLEXT_VER) rm -f $@ $(LN_S) $< $@ libcruft.$(SHLEXT_VER): $(CRUFT_PICOBJ) $(SH_LD) $(SH_LDFLAGS) $(SONAME_FLAGS) -o $@ $^ $(CRUFT_OBJ): check: all .PHONY: check install install-strip uninstall clean mostlyclean distclean maintainer-clean:: @$(subdir-for-command) install:: $(top_srcdir)/mkinstalldirs $(octlibdir) if $(STATIC_LIBS); then \ rm -f $(octlibdir)/libcruft.$(LIBEXT) ; \ $(INSTALL_DATA) libcruft.$(LIBEXT) \ $(octlibdir)/libcruft.$(LIBEXT) ; \ $(RANLIB) $(octlibdir)/libcruft.$(LIBEXT) ; \ fi if $(SHARED_LIBS); then \ rm -f $(octlibdir)/libcruft.$(SHLEXT_VER); \ $(INSTALL_PROGRAM) \ libcruft.$(SHLEXT_VER) $(octlibdir)/libcruft.$(SHLEXT_VER); \ cd $(octlibdir); \ rm -f libcruft.$(SHLEXT); \ $(LN_S) libcruft.$(SHLEXT_VER) libcruft.$(SHLEXT); \ fi $(mk-libdir-link) install-strip:: $(MAKE) INSTALL_PROGRAM="$(INSTALL_PROGRAM) -s" install uninstall:: rm -f $(octlibdir)/libcruft.$(LIBEXT) rm -f $(octlibdir)/libcruft.$(SHLEXT) rm -f $(octlibdir)/libcruft.$(SHLEXT_VER) tags TAGS:: $(SOURCES) $(SUBDIR_FOR_COMMAND) tags:: ctags $(SOURCES) TAGS:: $(SOURCES) etags $(SOURCES) clean mostlyclean:: rm -f *.$(LIBEXT) *.o if $(SHARED_LIBS); then rm -f *.$(SHLEXT_VER) *.$(SHLEXT); fi distclean:: rm -f *.$(LIBEXT) *.o Makefile Makerules so_locations if $(SHARED_LIBS); then rm -f *.$(SHLEXT_VER); fi maintainer-clean:: rm -f *.$(LIBEXT) *.o configure Makefile Makerules rm -f so_locations tags TAGS if $(SHARED_LIBS); then rm -f *.$(SHLEXT_VER); fi dist: for dir in $(SUBDIRS); do mkdir ../`cat ../.fname`/libcruft/$$dir; cd $$dir; $(MAKE) $@; cd ..; done ln $(DISTFILES) ../`cat ../.fname`/libcruft .PHONY: dist bin-dist: if [ -n "$(BINDISTFILES)" ]; then \ ln $(BINDISTFILES) ../`cat ../.fname`/libcruft; \ fi if [ -n "$(BINDISTLIBS)" ]; then \ echo $(BINDISTLIBS) >> ../`cat ../.fname`/LIBRARIES; \ fi .PHONY: bin-dist