Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[examples,smpi] remove warnings and resolve a bug (I hope I amn't sure)
[simgrid.git] / examples / smpi / NAS / LU / Makefile
1 SHELL=/bin/sh
2 BENCHMARK=lu
3 BENCHMARKU=LU
4 VEC=
5
6 include ../config/make.def
7
8 OBJS = lu.o init_comm.o read_input.o bcast_inputs.o proc_grid.o neighbors.o \
9        nodedim.o subdomain.o setcoeff.o sethyper.o setbv.o exact.o setiv.o \
10        erhs.o ssor.o exchange_1.o exchange_3.o exchange_4.o exchange_5.o \
11        exchange_6.o rhs.o l2norm.o jacld.o blts$(VEC).o jacu.o buts$(VEC).o \
12        error.o pintgr.o verify.o ${COMMON}/print_results.o ${COMMON}/timers.o
13
14 include ../sys/make.common
15
16
17 # npbparams.h is included by applu.incl
18 # The following rule should do the trick but many make programs (not gmake)
19 # will do the wrong thing and rebuild the world every time (because the
20 # mod time on header.h is not changed. One solution would be to 
21 # touch header.h but this might cause confusion if someone has
22 # accidentally deleted it. Instead, make the dependency on npbparams.h
23 # explicit in all the lines below (even though dependence is indirect). 
24
25 # applu.incl: npbparams.h
26
27 ${PROGRAM}: config
28         @if [ x$(VERSION) = xvec ] ; then       \
29                 ${MAKE} VEC=_vec exec;          \
30         elif [ x$(VERSION) = xVEC ] ; then      \
31                 ${MAKE} VEC=_vec exec;          \
32         else                                    \
33                 ${MAKE} exec;                   \
34         fi
35
36 exec: $(OBJS)
37         ${FLINK} ${FLINKFLAGS} -o ${PROGRAM} ${OBJS} ${FMPI_LIB}
38
39 .f.o :
40         ${FCOMPILE} $<
41
42 lu.o:           lu.f applu.incl npbparams.h
43 bcast_inputs.o: bcast_inputs.f applu.incl npbparams.h mpinpb.h
44 blts$(VEC).o:   blts$(VEC).f
45 buts$(VEC).o:   buts$(VEC).f
46 erhs.o:         erhs.f applu.incl npbparams.h
47 error.o:        error.f applu.incl npbparams.h mpinpb.h
48 exact.o:        exact.f applu.incl npbparams.h
49 exchange_1.o:   exchange_1.f applu.incl npbparams.h mpinpb.h
50 exchange_3.o:   exchange_3.f applu.incl npbparams.h mpinpb.h
51 exchange_4.o:   exchange_4.f applu.incl npbparams.h mpinpb.h
52 exchange_5.o:   exchange_5.f applu.incl npbparams.h mpinpb.h
53 exchange_6.o:   exchange_6.f applu.incl npbparams.h mpinpb.h
54 init_comm.o:    init_comm.f applu.incl npbparams.h mpinpb.h 
55 jacld.o:        jacld.f applu.incl npbparams.h
56 jacu.o:         jacu.f applu.incl npbparams.h
57 l2norm.o:       l2norm.f mpinpb.h
58 neighbors.o:    neighbors.f applu.incl npbparams.h
59 nodedim.o:      nodedim.f
60 pintgr.o:       pintgr.f applu.incl npbparams.h mpinpb.h
61 proc_grid.o:    proc_grid.f applu.incl npbparams.h
62 read_input.o:   read_input.f applu.incl npbparams.h mpinpb.h
63 rhs.o:          rhs.f applu.incl npbparams.h
64 setbv.o:        setbv.f applu.incl npbparams.h
65 setiv.o:        setiv.f applu.incl npbparams.h
66 setcoeff.o:     setcoeff.f applu.incl npbparams.h
67 sethyper.o:     sethyper.f applu.incl npbparams.h
68 ssor.o:         ssor.f applu.incl npbparams.h mpinpb.h
69 subdomain.o:    subdomain.f applu.incl npbparams.h mpinpb.h
70 verify.o:       verify.f applu.incl npbparams.h
71
72 clean:
73         - /bin/rm -f npbparams.h
74         - /bin/rm -f *.o *~