File: fortran.patch

package info (click to toggle)
flexpart 9.02-27
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 4,944 kB
  • sloc: f90: 14,310; makefile: 29; sh: 18
file content (90 lines) | stat: -rw-r--r-- 2,862 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Author: Alastair McKinstry <mckinstry@debian.org>
Description: Makefile changes needed for Debian
Last-Updated: 2016-07-07
Forwarded: not-needed

Index: flexpart-9.02/makefile.gfs_gfortran
===================================================================
--- flexpart-9.02.orig/makefile.gfs_gfortran
+++ flexpart-9.02/makefile.gfs_gfortran
@@ -1,14 +1,14 @@
 SHELL = /bin/bash
-MAIN = FLEXPART_GFS_GFORTRAN
+MAIN = flexpart.gfs
 INCF	= incl* 
 #
 
 FC       = gfortran
-INCPATH  = /xnilu_wrk/flex_wrk/bin64/grib_api/include
-LIBPATH1 = /xnilu_wrk/flex_wrk/bin64/grib_api/lib
-LIBPATH2 = /flex_wrk/flexpart/lib64/gfortran/lib/
-FFLAGS   =   -O2 -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4 -I$(INCPATH)
-LDFLAGS  = $(FFLAGS) -L$(LIBPATH2) -L$(LIBPATH1) -lgrib_api_f90 -lgrib_api -lm -ljasper
+INCPATH  = /usr/include
+LIBPATH1 = /usr/lib
+LIBPATH2 = 
+FFLAGS   = -O2 -fdefault-real-8 -fconvert=little-endian -frecord-marker=4 -I$(INCPATH) 
+LFLAGS:= $(LDFLAGS) $(FFLAGS) -L$(LIBPATH1) -Wl,--as-needed  -lgrib_api_f90 -lgrib_api -lm
 #
 
 MODOBJS = \
@@ -78,7 +78,7 @@ dynamic_viscosity.o     get_settling.o
 
 
 $(MAIN): $(MODOBJS) $(OBJECTS)
-	$(FC) *.o -o $(MAIN) $(LDFLAGS)
+	$(FC) `LC_ALL=C ls *.o` -o $(MAIN) $(LFLAGS)
 
 $(OBJECTS): $(MODOBJS)
 
@@ -86,5 +86,5 @@ $(OBJECTS): $(MODOBJS)
 	$(FC) -c $(FFLAGS) $<
 
 clean:
-	rm *.o *.mod
+	rm -f *.o *.mod $(MAIN)
 
Index: flexpart-9.02/makefile.ecmwf_gfortran
===================================================================
--- flexpart-9.02.orig/makefile.ecmwf_gfortran
+++ flexpart-9.02/makefile.ecmwf_gfortran
@@ -1,15 +1,14 @@
 SHELL = /bin/bash
-MAIN = FLEXPART_GFORTRAN
+MAIN = flexpart.ecmwf
 #
 
 FC       = gfortran
-INCPATH  = /xnilu_wrk/flex_wrk/bin64/grib_api/include
-LIBPATH1 = /xnilu_wrk/flex_wrk/bin64/grib_api/lib
-LIBPATH2 = /flex_wrk/flexpart/lib64/gfortran/lib/
-#FFLAGS   =   -O3 -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4 -I$(INCPATH)
-FFLAGS   =   -O2 -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4 -I$(INCPATH)
-#FFLAGS   =   -fbounds-check -m64 -mcmodel=medium -fconvert=little-endian -frecord-marker=4 -I$(INCPATH)
-LDFLAGS  = $(FFLAGS) -L$(LIBPATH2) -L$(LIBPATH1) -lgrib_api_f90 -lgrib_api -lm -ljasper
+INCPATH  = /usr/include
+LIBPATH1 = /usr/lib
+LIBPATH2 = 
+FFLAGS   = -O2 -fdefault-real-8 -fconvert=little-endian -frecord-marker=4 -I$(INCPATH) 
+LFLAGS  = $(LDFLAGS) $(FFLAGS) -Wl,--as-needed -L$(LIBPATH2) -L$(LIBPATH1) -lgrib_api_f90 -lgrib_api -lm
+MODPATH = /usr/include
 #
 
 MODOBJS = \
@@ -79,13 +78,13 @@ dynamic_viscosity.o     get_settling.o
 
 
 $(MAIN): $(MODOBJS) $(OBJECTS)
-	$(FC) *.o -o $(MAIN) $(LDFLAGS)
+	$(FC) `LC_ALL=C ls *.o` -o $(MAIN) $(LFLAGS)
 
 $(OBJECTS): $(MODOBJS)
 
 %.o: %.f90
-	$(FC) -c $(FFLAGS) $<
+	$(FC) -c $(FFLAGS) -I$(MODPATH) $<
 
 clean:
-	rm *.o *.mod
+	rm -f *.o *.mod