Changeset 2763 in lmdz_wrf for trunk/tools
- Timestamp:
- Nov 16, 2019, 6:24:42 PM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tools/Makefile.ypy.gcc
r1824 r2763 3 3 # A following python 'library' creation is required 4 4 ## Compilation 5 # Prior to compilation, a copy of the file __test_Fmods.f90__ has to be done 6 # $ cp __test_Fmods.f90__ test_Fmods.f90 5 7 # make >& run_make.log 8 # NOTE: One will not be able to compile all the set of programs within an anaconda environment 9 # due to problems with anaconda. Installation of netcdf4 colides with installed libnetcdff 10 # - netcdf4 11 # The following packages will be downloaded: 12 # 13 # package | build 14 # ---------------------------|----------------- 15 # libnetcdf-4.6.1 | h10edf3e_2 1.3 MB 16 # 17 # The following NEW packages will be INSTALLED: 18 # 19 # netcdf4: 1.4.2-py27h4b4f87f_0 20 # 21 # The following packages will be REMOVED: 22 # 23 # libnetcdff: 4.4.4-0 matthewharrison 24 # 25 # The following packages will be UPDATED: 26 # 27 # libnetcdf: 4.4.0-hf6ef953_0 matthewharrison --> 4.6.1-h10edf3e_2 28 ##### 29 # Because of that, Makefile is splitted in two compilation sub-sets 30 ## 31 # $ make pymods: compilation of Fortran modules used in the python scripts 32 # $ make NCfortran: compiation of Fortran modules and main programs which require 33 # netCDF-fortran interface: (for: DistriCorrection and trajectories_overlap) 34 # $ make: compiles all components 35 ## 6 36 7 37 FC = gfortran … … 13 43 NCLIBFOLD = /home/lluis.fita/bin/netcdf/4.5.0/gcc/lib 14 44 NCINCFOLD = /home/lluis.fita/bin/netcdf/4.5.0/gcc/include 15 LIB_NETCDF = -L$(NCLIBFOLD) -lnetcdff -lnetcdf -I$(NCINCFOLD) 45 NCLIBFFOLD = /home/lluis.fita/bin/netcdf/4.5.0/gcc/lib 46 NCINCFFOLD = /home/lluis.fita/bin/netcdf/4.5.0/gcc/include 47 LIB_NETCDF = -L$(NCLIBFOLD) -L$(NCLIBFFOLD) -lnetcdff -lnetcdf -I$(NCINCFOLD) -I$(NCINCFFOLD) 16 48 17 49 FCFLAGS = $(FCF) $(DBGFLAGS) … … 23 55 intsrcs = $(srcs) module_ForInterpolate.f90 24 56 scisrcs = $(srcs) 57 gensrcs = module_definitions.f90 module_basic.f90 module_generic.f90 25 58 defsrcs = module_definitions.f90 26 59 … … 35 68 module_ForInterpolate.o \ 36 69 module_ForDiagnosticsVars.o \ 37 module_ForDiagnostics.o \ 38 module_DistriCorrection.o 70 module_ForDiagnostics.o 39 71 40 72 FINTMODULES = \ … … 44 76 module_scientific.o \ 45 77 module_ForInterpolate.o 78 79 FEXECMODULES = \ 80 module_definitions.o \ 81 module_basic.o \ 82 module_generic.o \ 83 module_scientific.o \ 84 module_NCgeneric.o \ 85 module_ForInterpolate.o \ 86 module_DistriCorrection.o 87 88 FTESTMODULES = \ 89 module_definitions.o \ 90 module_basic.o \ 91 module_generic.o \ 92 module_NCgeneric.o \ 93 module_scientific.o \ 94 module_ForDiagnosticsVars.o \ 95 module_ForDiagnostics.o 46 96 47 97 all : \ … … 53 103 pyintmods.o \ 54 104 pyscimods.o \ 105 pygenmods.o \ 55 106 pydefmods.o \ 107 trajectories_overlap.o \ 108 test_Fmods.o 109 110 pymods : \ 111 module_ForDiagnostics.o \ 112 pydistrimods.o \ 113 pydiagmods.o \ 114 pyintmods.o \ 115 pyscimods.o \ 116 pygenmods.o \ 117 pydefmods.o 118 119 NCfortran : \ 120 module_definitions.o \ 121 module_basic.o \ 122 module_generic.o \ 123 module_NCgeneric.o \ 124 module_ForInterpolate.o \ 125 DistriCorrection.o \ 56 126 trajectories_overlap.o 57 127 … … 60 130 61 131 clean : 62 $(RM) *.mod *.o interpolate module_ForDiag.so module_ForInt.so module_ForDistriCorrect.so module_ForSci.so module_ForDef.so132 $(RM) *.mod *.o interpolate test_Fmods module_ForDiag.so module_ForInt.so module_ForDistriCorrect.so module_ForSci.so module_ForGen.so module_ForDef.so 63 133 64 134 ######## ####### … … 84 154 $(FC) $(FCFLAGS) $(LIB_INC) module_ForInterpolate.f90 85 155 86 module_ForDiagnosticsVars.o: module_definitions.o module_basic.o module_generic.o 156 module_ForDiagnosticsVars.o: module_definitions.o module_basic.o module_generic.o module_scientific.o 87 157 $(FC) $(FCFLAGS) $(LIB_INC) module_ForDiagnosticsVars.f90 88 158 … … 94 164 95 165 FCEXEFINTCFLAGS = $(FINTMODULES) $(LIB_NETCDF) $(LIB_INC) 96 FCEXECFLAGS = $(MODULES) $(LIB_NETCDF) $(LIB_INC) 166 FCEXECFLAGS = $(FEXECMODULES) $(LIB_NETCDF) $(LIB_INC) 167 FCEXECTESTFLAGS = $(FTESTMODULES) $(LIB_NETCDF) $(LIB_INC) 97 168 98 169 interpolate.o: module_definitions.o module_basic.o module_generic.o module_scientific.o module_ForInterpolate.o … … 102 173 $(FC) $(FCEXECFLAGS) DistriCorrection.f90 -o DistriCorrection 103 174 175 test_Fmods.o: module_definitions.o module_basic.o module_generic.o module_scientific.o module_ForDiagnostics.o module_ForDiagnosticsVars.o 176 $(FC) $(FCEXECTESTFLAGS) test_Fmods.f90 -o test_Fmods 177 104 178 pydistrimods.o: 105 $(F2PY) -c -I$(NCINCFOLD) -m module_ForDistriCorrect $(distrisrcs) -L$(NCLIBFOLD)179 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForDistriCorrect $(distrisrcs) -L$(NCLIBFOLD) 106 180 107 181 pydiagmods.o: 108 $(F2PY) -c -I$(NCINCFOLD) -m module_ForDiag $(diagsrcs) -L$(NCLIBFOLD)182 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForDiag $(diagsrcs) -L$(NCLIBFOLD) 109 183 110 184 pyintmods.o: 111 $(F2PY) -c -I$(NCINCFOLD) -m module_ForInt $(intsrcs) -L$(NCLIBFOLD)185 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForInt $(intsrcs) -L$(NCLIBFOLD) 112 186 113 187 pyscimods.o: 114 $(F2PY) -c -I$(NCINCFOLD) -m module_ForSci $(scisrcs) -L$(NCLIBFOLD) 188 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForSci $(scisrcs) -L$(NCLIBFOLD) 189 190 pygenmods.o: 191 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForGen $(gensrcs) -L$(NCLIBFOLD) 115 192 116 193 pydefmods.o: 117 $(F2PY) -c -I$(NCINCFOLD) -m module_ForDef $(defsrcs) -L$(NCLIBFOLD)194 $(F2PY) -c $(F2PYF) -I$(NCINCFOLD) -m module_ForDef $(defsrcs) -L$(NCLIBFOLD) 118 195 119 196 trajectories_overlap.o: module_definitions.o module_basic.o module_generic.o module_NCgeneric.o module_scientific.o
Note: See TracChangeset
for help on using the changeset viewer.