6
|
1 # |
|
2 # Makefile for octave's libcruft directory |
|
3 # |
|
4 # John W. Eaton |
|
5 # jwe@che.utexas.edu |
|
6 # Department of Chemical Engineering |
|
7 # The University of Texas at Austin |
|
8 |
|
9 TOPDIR = .. |
|
10 |
|
11 srcdir = @srcdir@ |
|
12 VPATH = @srcdir@ |
|
13 |
|
14 include $(TOPDIR)/Makeconf |
|
15 |
|
16 # List of the directories that contain Fortran source. Simply copying |
|
17 # a new .f file into one of these directories is sufficient to have it |
|
18 # added to libcruft.a. If you add a new directory here, you also need |
|
19 # generate a new configure script (edit configure.in and run autoconf). |
|
20 |
41
|
21 CRUFT_DIRS = balgen blas dassl eispack fftpack fsqp lapack linpack \ |
|
22 minpack misc npsol odepack qpsol quadpack ranlib villad |
6
|
23 |
|
24 SUBDIRS = $(CRUFT_DIRS) |
|
25 |
|
26 DISTFILES = Makefile.in Makerules.in $(SOURCES) STOP.patch |
|
27 |
|
28 all: make-objects ../libcruft.a |
|
29 .PHONY: all |
|
30 |
|
31 make-objects: |
|
32 for dir in $(SUBDIRS); do echo making all in $$dir; cd $$dir; $(MAKE) $(MDEFINES) all; cd ..; done |
|
33 .PHONY: make-objects |
|
34 |
|
35 CRUFT_FSRC = $(foreach dir, $(SUBDIRS), $(wildcard $(srcdir)/$(dir)/*.f)) |
|
36 CRUFT_OBJ3 = $(patsubst $(srcdir)/%, %, $(CRUFT_FSRC)) |
|
37 CRUFT_OBJ2 = $(patsubst %.f, %.o, $(CRUFT_OBJ3)) |
|
38 CRUFT_OBJ1 = $(subst misc/d1mach.o, , $(CRUFT_OBJ2)) |
|
39 CRUFT_OBJ = $(CRUFT_OBJ1) misc/d1mach.o misc/dostop.o |
|
40 |
|
41 ../libcruft.a: $(CRUFT_OBJ) |
|
42 rm -f ../libcruft.a |
|
43 $(AR) $(ARFLAGS) ../libcruft.a $(CRUFT_OBJ) |
|
44 $(RANLIB) ../libcruft.a |
|
45 |
|
46 $(CRUFT_OBJ): |
|
47 |
|
48 check: all |
|
49 .PHONY: check |
|
50 |
|
51 install: |
|
52 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
53 if test -d $(libdir) ; then true ; else $(TOPDIR)/mkpath $(libdir) ; fi |
|
54 rm -f $(libdir)/libcruft.a |
|
55 $(INSTALL_DATA) ../libcruft.a $(libdir)/libcruft.a |
|
56 $(RANLIB) $(libdir)/libcruft.a |
|
57 .PHONY: install |
|
58 |
|
59 uninstall: |
|
60 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
61 rm -f $(libdir)/libcruft.a |
|
62 .PHONY: uninstall |
|
63 |
|
64 tags: $(SOURCES) |
|
65 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
66 ctags $(SOURCES) |
|
67 |
|
68 TAGS: $(SOURCES) |
|
69 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
70 etags $(SOURCES) |
|
71 |
|
72 clean: |
|
73 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
74 rm -f *.a *.o |
|
75 .PHONY: clean |
|
76 |
|
77 mostlyclean: |
|
78 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
79 rm -f *.a *.o |
|
80 .PHONY: mostlyclean |
|
81 |
|
82 distclean: |
|
83 rm -f *.a *.o ../libcruft.a Makefile |
|
84 .PHONY: distclean |
|
85 |
|
86 realclean: |
|
87 for dir in $(SUBDIRS); do echo making $@ in $$dir; cd $$dir; $(MAKE) $(MDEFINES) $@; cd ..; done |
|
88 rm -f *.a *.o ../libcruft.a tags TAGS Makefile |
|
89 .PHONY: realclean |
|
90 |
|
91 local-dist: |
|
92 for dir in $(SUBDIRS); do mkdir ../`cat ../.fname`/libcruft/$$dir; cd $$dir; $(MAKE) $@; cd ..; done |
|
93 ln $(DISTFILES) ../`cat ../.fname`/libcruft |
|
94 .PHONY: local-dist |
|
95 |
|
96 dist: |
|
97 for dir in $(SUBDIRS); do mkdir ../`cat ../.fname`/libcruft/$$dir; cd $$dir; $(MAKE) $@; cd ..; done |
|
98 ln $(DISTFILES) ../`cat ../.fname`/libcruft |
|
99 .PHONY: dist |