1 jones 1.3 SHELL = /bin/sh
2 RM = rm -f
|
3 jones 1.1 MYOS := $(subst -,,$(shell uname))
|
4 jones 1.2 C_EXE = ../$(MYOS)/bin/convert
|
5 jones 1.1
6 C_OBJ = convert.o \
7 db_replace.o print_me.o gen_name.o
8
|
9 jones 1.2 CB_EXE = ../$(MYOS)/bin/convertback
|
10 jones 1.1
11 CB_OBJ = convertback.o \
12 db_replace.o printer.o db_read_parse.o parse_name.o \
13 parse_initial.o parse_final.o
14
15
16
17 ifeq ($(MYOS),SunOS)
18 CERN_ROOT =/site/cernlib/sun4_solaris2/95a
19 endif
20 CERN_DIR = $(CERN_ROOT)/lib
21
22 CERNLIBS = -L$(CERN_DIR) \
23 -lpawlib \
24 -lpacklib \
25 -lmathlib \
26 -lgraflib \
27 -lgrafX11 \
28 -lpacklib \
29 -lherwig \
30 -lkernlib \
31 jones 1.1 -lphotos \
32 -lphtools
33
34 MOTIF = /usr/lib/Motif1.2
35 MLIB = -L$(MOTIF) \
36 -lMrm \
37 -lXm
38
39
40 X11LIBDIR = /usr/lib/X11R5
41 X11LIBS = -L$(X11LIBDIR)\
42 -lX11\
43 -lXt
44
45
46 ifeq ($(MYOS),SunOS)
47 FFLAGS=-e -O -C
48 FC=f77
49 LIBS = -lc -lm -lnsl -lsocket -L/usr/lib -ldl
50 endif
51
52 jones 1.1
53 ifeq ($(MYOS),Linux)
54 FFLAGS= -s -W -N2 -N22 -N90 -B108 -f
55 FC=f77
56 LIBS = -lc -lm -lnsl -L/usr/lib -lcrypt -ldl -L/apps/egcs/egcs-1.1.2/lib/gcc-lib/i686-pc-linux-gnu/egcs-2.91.66/ -lg2c
57 MLIB = -L/usr/X11R6/lib -lMrm -lXm -lXp -lXext
58 CERNLIBS = -L$(CERN_DIR) -lpawlib -lmathlib -lpacklib \
59 -lmathlib \
60 -lgraflib \
61 -lgrafX11 \
62 -lpacklib
63 endif
64
65 all: $(C_EXE) $(CB_EXE)
66
67 $(C_EXE): $(C_OBJ) ../$(MYOS)/bin
68 $(FC) $(FFLAGS) -o $(C_EXE) $(C_OBJ) $(MLIB) $(CERNLIBS) $(X11LIBS) $(LIBS)
69
70 $(CB_EXE): $(CB_OBJ) ../$(MYOS)/bin
71 $(FC) $(FFLAGS) -o $(CB_EXE) $(CB_OBJ) $(MLIB) $(CERNLIBS) $(X11LIBS) $(LIBS)
72
73 jones 1.1 ../$(MYOS)/bin:
74 mkdir ../$(MYOS)
75 mkdir ../$(MYOS)/bin
76
77 clean:
78 $(RM) *.o $(C_EXE) $(CB_EXE) core
79
|
80 jones 1.3 #the rule below updates a file, Makefile.dep, that lists which include files
81 #each fortran file uses. If an include file is changed, all the fortran files
82 #that use it will automatically be recompiled. p.mckee dec03
83 Makefile.dep : *.inc
84 @ echo "Updating dependencies on include files"
85 @ echo -e "#specify include files used by each .f file\n" > Makefile.dep
86 @ for file in `ls *.f | sed 's/\.f//'` ; do\
87 inc_files=`cat $$file.f | sed -n 's/^[[:blank:]]*[Ii][Nn][Cc][Ll][Uu][Dd][Ee][ ]*['\''"]\(.*\)['\''"]/\1/p' | sort | uniq | xargs echo -n` ;\
88 if [ -n "$$inc_files" ]; then \
89 echo "$$file.o : $$file.f $$inc_files" >> Makefile.dep;\
90 fi;\
91 done
92
93 include Makefile.dep
|
94 jones 1.1
95
96
97
98
99
100
101
102
103
104
105
|