Makefile 2.13 KB
Newer Older
thomas.forbriger's avatar
thomas.forbriger committed
1
2
# this is <Makefile>
# ----------------------------------------------------------------------------
thomas.forbriger's avatar
thomas.forbriger committed
3
# $Id$
thomas.forbriger's avatar
thomas.forbriger committed
4
5
6
7
8
9
10
# 
# Copyright (c) 2009 by Thomas Forbriger (BFO Schiltach) 
# 
# fidase: prepare a homogeneous data set from individual shot files
# 
# REVISIONS and CHANGES 
#    08/04/2009   V1.0   Thomas Forbriger
thomas.forbriger's avatar
thomas.forbriger committed
11
#    15/11/2010   V1.1   reworked makefile; avoid makedoc.tcl and incdep
thomas.forbriger's avatar
thomas.forbriger committed
12
13
# 
# ============================================================================
14
#
thomas.forbriger's avatar
thomas.forbriger committed
15
16
17
18
19
20
21
 
all: fidase

CHECKVAR=$(if $($(1)),,$(error ERROR: missing variable $(1)))
CHECKVARS=$(foreach var,$(1),$(call CHECKVAR,$(var)))

$(call CHECKVARS,LOCINCLUDEDIR LOCLIBDIR LOCBINDIR)
22

thomas.forbriger's avatar
thomas.forbriger committed
23
LINLIB=-lblas -llapack
thomas.forbriger's avatar
thomas.forbriger committed
24
25
PGPLOTLIB=$(TF_LINK_PGPLOT)
CFLAGS= -I${LOCINCLUDEDIR} 
thomas.forbriger's avatar
thomas.forbriger committed
26
FFLAGS += -ff2c -Wall -ffixed-line-length-0 -fno-backslash $(FLAGS)
thomas.forbriger's avatar
thomas.forbriger committed
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42

#----------------------------------------------------------------------

.PHONY: clean edit

flist: Makefile $(FIDAOBS:.o=.f) *.inc
	echo $< > $@
	echo $(FIDAOBS:.o=.f) | tr ' ' '\n' | sort >> $@
	echo *.inc | tr ' ' '\n' | sort >> $@

edit: flist; vim $<

clean:
	-/bin/rm *.o *.bak *.d

#----------------------------------------------------------------------
43
44

FIDAOBS=fidase.o fidase_readdata.o fidase_skipdata.o fidase_writedata.o \
thomas.forbriger's avatar
thomas.forbriger committed
45
46
  fidase_readtaper.o fidase_evaltaper.o fidase_enfit.o fidase_resamp.o \
  fidase_destack.o
47

thomas.forbriger's avatar
thomas.forbriger committed
48
#----------------------------------------------------------------------
49

thomas.forbriger's avatar
thomas.forbriger committed
50
51
52
%.d: %.f
	echo $<: $(shell cat $< | egrep '^ +include' | cut -f 2 -d \' | sort | uniq) > $@
-include $(patsubst %.o,%.d,$(FIDAOBS))
53

thomas.forbriger's avatar
thomas.forbriger committed
54
#----------------------------------------------------------------------
thomas.forbriger's avatar
thomas.forbriger committed
55

thomas.forbriger's avatar
thomas.forbriger committed
56
57
58
59
60
61
62
63
fidase.doc: $(patsubst %.o,%.f,$(FIDAOBS))
	/usr/bin/awk 'BEGIN{ hot=0; } \
        /^cS/ { hot=1; \
	    print FILENAME; \
          print "  c\n  c"; \
          next; } \
        /^cE/ { hot=0; } \
        { if (hot==1) { print "  " $$0; } }' $^ > $@
thomas.forbriger's avatar
thomas.forbriger committed
64

thomas.forbriger's avatar
thomas.forbriger committed
65
#----------------------------------------------------------------------
66

thomas.forbriger's avatar
thomas.forbriger committed
67
68
%.o: %.f
	$(FC) -o $@ -c $< $(FFLAGS)
69
70

fidase: $(FIDAOBS)
thomas.forbriger's avatar
thomas.forbriger committed
71
	$(FC) -o fidase $(FIDAOBS) \
72
        -ltf -lts -lsffu -ltime_trad -lsff \
73
        $(PGPLOTLIB) $(LINLIB) \
thomas.forbriger's avatar
thomas.forbriger committed
74
75
        -L$(LOCLIBDIR) 
	/bin/mv -fv $@ $(LOCBINDIR)
76

thomas.forbriger's avatar
thomas.forbriger committed
77
# ----- END OF Makefile -----