source: trunk/src/makefile @ 85

Last change on this file since 85 was 59, checked in by pinsard, 15 years ago

add some try/catch on opening file for reading

File size: 2.4 KB
Line 
1#+
2#
3# TODO
4# ====
5#
6# executable path =f(uname -m, compiler)
7# see cmake
8#
9# missing forcing of little endian in pgf90 and nag (f95)
10#
11# remove -fpstkchk for non i32 (ex: dedale)
12#
13# add test
14#
15# EVOLUTIONS
16# ==========
17#
18# - fplod 2009-02-11T11:16:11Z aedon.locean-ipsl.upmc.fr (Darwin)
19#
20#   * main source renamed from .f to .F90
21#   * add gfortran
22#   * improve nag and g95 options
23#
24# - fplod 2009-02-05T15:22:33Z aedon.locean-ipsl.upmc.fr (Darwin)
25#
26#   * add pgf90 macros
27#
28#   * add nag macros
29#
30# - fplod 2009-02-04T11:41:38Z aedon.locean-ipsl.upmc.fr (Darwin)
31#
32#   * creation
33#
34#-
35
36DIRBASE = \
37../
38
39DIRSRC = \
40./
41
42DIRBIN = \
43$(DIRBASE)/bin/
44
45# uncomment FC, LD and FFLAGS lines to choose compiler/linker
46FC=g95
47LD=g95
48
49FFLAGS=-g -O -ffixed-form -fbounds-check \
50-Wimplicit-none -Wall \
51-Wextra -Wunused -Wuninitialized -Wprecision-loss \
52-ftrapv -fexceptions -std=f2003 -fno-static \
53-freal=nan \
54-fendian=little \
55-pedantic-errors
56
57# ++ missing forcing of little endian in pgf90
58# only -byteswapio (swap)
59#FC=pgf90
60#LD=pgf90
61#FFLAGS=-g -Mstandard \
62#-Ktrap=inv,divz,ovf,denorm,unf -Mdclchk -Mnosave -Minform=inform -C
63
64# ++ missing forcing of little endian in nag fortran
65# ++ -gline inefficient
66#FC=f95
67#LD=f95
68#FFLAGS=-g -fixed -strict95 -gline \
69#-ieee=stop -nan -info -C
70
71#
72#FC=ifort
73#LD=ifort
74#FFLAGS=-g -O0 -inline_debug_info -fixed -stand f90 \
75#-fpe:0 -ftz- -check all -warn all \
76#-convert little_endian
77#LDOPTS=-g -O0
78
79# 32 bits -fpe:0 -ftz-  -fpstkchk -check all -warn all \
80
81# !! -fconvert in gfortran only works for main program
82#FC=gfortran
83#LD=gfortran
84#FFLAGS=-g -ffixed-form -fbounds-check
85#-std=f95 -fall-intrinsics -pedantic-errors -Wall \
86#-ffpe-trap=invalid,zero,overflow,underflow,precision,denormal \
87#-frange-check \
88#-fconvert=little-endian
89#LDOPTS=-g
90
91LDFLAGS=$(LDOPTS)
92
93LOADLIBES=$(BIBLIO)
94
95help :
96        @echo "tapez la commande :"
97        @echo " $$ make exec"
98
99clean :
100        @-/bin/rm -i *.lis
101        @-/bin/rm -i *.o
102        @-/bin/rm -i $(DIRBIN)/*.x
103
104$(DIRBIN)/progfiltrage_simulation.x : \
105progfiltrage_simulation.o \
106forfilter.o
107        @$(LD) $(LDFLAGS) \
108        progfiltrage_simulation.o \
109        forfilter.o \
110        $(LOADLIBES) -o $@
111
112progfiltrage_simulation.o: \
113$(DIRSRC)/SIMULS_IRCAAM/progfiltrage_simulation.F90
114        @$(FC) -c $(FFLAGS) -o $@ \
115        $(DIRSRC)/SIMULS_IRCAAM/progfiltrage_simulation.F90
116
117forfilter.o: \
118$(DIRSRC)/forfilter.f
119        @$(FC) -c $(FFLAGS) -o $@ \
120        $(DIRSRC)/forfilter.f
121
122exec: \
123$(DIRBIN)/progfiltrage_simulation.x
Note: See TracBrowser for help on using the repository browser.