Changeset 12 for modipsl/trunk
- Timestamp:
- 03/12/07 17:13:47 (17 years ago)
- Location:
- modipsl/trunk/util
- Files:
-
- 1 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
modipsl/trunk/util/AA_make.gdef
r2 r12 1 1 #- 2 #- $Id : AA_make.gdef,v 2.24 2006/03/24 15:31:56 adm Exp$2 #- $Id$ 3 3 #- 4 #-Q- Darwin #- Global definitions for Mac OSX, g95 5 #-Q- Darwin M_K = make 6 #-Q- Darwin P_C = cpp 7 #-Q- Darwin P_O = -fpreprocessed -P -C -traditional $(P_P) 8 #-Q- Darwin F_C = g95 -c 9 #-Q- Darwin #-D- MD F_D = -g -Wall -fbounds-check 10 #-Q- Darwin #-D- MN F_D = 11 #-Q- Darwin #-P- I4R4 F_P = -i4 12 #-Q- Darwin #-P- I4R8 F_P = -i4 -r8 13 #-Q- Darwin #-P- I8R8 F_P = -i8 -r8 14 #-Q- Darwin w_w = -O5 -funroll-all-loops $(F_D) $(F_P) -I$(MODDIR) 15 #-Q- Darwin F_O = $(w_w) -fmod=$(MODDIR) 16 #-Q- Darwin F_L = g95 17 #-Q- Darwin L_O = 18 #-Q- Darwin A_C = ar -rs 19 #-Q- Darwin A_G = ar -x 20 #-Q- Darwin C_C = cc -c 21 #-Q- Darwin C_O = 22 #-Q- Darwin C_L = cc 23 #-Q- Darwin #- 24 #-Q- Darwin NCDF_INC = /usr/install/include 25 #-Q- Darwin NCDF_LIB = -L/usr/install/lib -lnetcdf 26 #-Q- Darwin #- 4 27 #-Q- aix #- Global definitions for IBM AIX (MPP) 5 28 #-Q- aix M_K = gmake … … 12 35 #-Q- aix #-P- I4R8 F_P = -qrealsize=8 13 36 #-Q- aix #-P- I8R8 F_P = 14 #-Q- aix #-P- ?? F_P = -qrealsize=815 37 #-Q- aix w_w = $(F_P) -O3 -qsuffix=f=f90 16 38 #-Q- aix F_O = $(w_w) -I$(MODDIR) -qmoddir=$(MODDIR) … … 36 58 #-Q- ax_mono #-P- I4R8 F_P = -qrealsize=8 37 59 #-Q- ax_mono #-P- I8R8 F_P = 38 #-Q- ax_mono #-P- ?? F_P = -qrealsize=839 60 #-Q- ax_mono w_w = $(F_P) -O3 -qsuffix=f=f90 40 61 #-Q- ax_mono F_O = $(w_w) -I$(MODDIR) -qmoddir=$(MODDIR) … … 60 81 #-Q- cray #-P- I4R8 F_P = 61 82 #-Q- cray #-P- I8R8 F_P = 62 #-Q- cray #-P- ?? F_P =63 83 #-Q- cray F_O = $(F_D) $(F_P) -v -p $(MODEL_LIB) 64 84 #-Q- cray F_L = f90 … … 73 93 #-Q- cray NCDF_LIB = -L/usr/local/pub/lib -lnetcdf 74 94 #-Q- cray #- 75 #-Q- Darwin #- Global definitions for Mac OSX, g95 76 #-Q- Darwin M_K = make 77 #-Q- Darwin P_C = cpp 78 #-Q- Darwin P_O = -fpreprocessed -P -C -traditional $(P_P) 79 #-Q- Darwin F_C = /usr/local/bin/mpif90 -fno-second-underscore -c 80 #-Q- Darwin #-D- MD F_D = 81 #-Q- Darwin #-D- MN F_D = 82 #-Q- Darwin #-P- I4R4 F_P = -i4 83 #-Q- Darwin #-P- I4R8 F_P = -i4 -r8 84 #-Q- Darwin #-P- I8R8 F_P = -i8 -r8 85 #-Q- Darwin #-P- ?? F_P = 86 #-Q- Darwin F_O = -I$(MODDIR) 87 #-Q- Darwin F_L = f90 88 #-Q- Darwin L_O = 89 #-Q- Darwin A_C = ar -rs 90 #-Q- Darwin A_G = ar -x 91 #-Q- Darwin C_C = cc -c 92 #-Q- Darwin C_O = 93 #-Q- Darwin C_L = cc 94 #-Q- Darwin #- 95 #-Q- Darwin NCDF_INC = /usr/local/include 96 #-Q- Darwin NCDF_LIB = -L/usr/local/lib -lnetcdf 97 #-Q- Darwin #- 95 #-Q- eshpux #- Global definitions for eshpux used as Earth Simulator front-end 96 #-Q- eshpux M_K = gmake 97 #-Q- eshpux P_C = escpp 98 #-Q- eshpux # FTRACE used for profiling 99 #-Q- eshpux FTRACE = -ftrace 100 #-Q- eshpux # FTRACE = 101 #-Q- eshpux P_O = -P -C $(P_P) 102 #-Q- eshpux F_C = esmpif90 -c 103 #-Q- eshpux #-D- MD F_D = 104 #-Q- eshpux #-D- MN F_D = 105 #-Q- eshpux #-P- I4R4 F_P = -dW 106 #-Q- eshpux #-P- I4R8 F_P = -dW -Wf\"-A idbl4\" 107 #-Q- eshpux #-P- I8R8 F_P = -ew 108 #-Q- eshpux F_O = $(F_D) $(F_P) $(FTRACE) -I $(MODDIR) 109 #-Q- eshpux F_L = esmpif90 110 #-Q- eshpux L_O = $(F_P) $(FTRACE) 111 #-Q- eshpux A_C = ar -rv 112 #-Q- eshpux A_G = ar -x 113 #-Q- eshpux A_X = esar -rv 114 #-Q- eshpux C_C = esmpicc -c 115 #-Q- eshpux C_O = 116 #-Q- eshpux C_L = esmpicc 117 #-Q- eshpux FC_C = cc -c 118 #-Q- eshpux FC_O = 119 #-Q- eshpux FC_L = cc 120 #-Q- eshpux #- 121 #-Q- eshpux NETCDFROOT = /S/home010/c0010/ES 122 #-Q- eshpux NCDF_INC = $(NETCDFROOT)/include 123 #-Q- eshpux NCDF_LIB = -L$(NETCDFROOT)/lib -lnetcdf 124 #-Q- eshpux #- 98 125 #-Q- fjvpp #- Global definitions for FUJITSU VPP 99 126 #-Q- fjvpp M_K = gmake … … 106 133 #-Q- fjvpp #-P- I4R8 F_P = -Ad 107 134 #-Q- fjvpp #-P- I8R8 F_P = -Ad 108 #-Q- fjvpp #-P- ?? F_P = -Ad109 135 #-Q- fjvpp w_w = -X9 -Oe -Sw $(F_D) $(F_P) -Am -M$(MODDIR) 110 136 #-Q- fjvpp F_O = $(w_w) -Of -Wv,-Of,-ilfunc,-preload … … 130 156 #-Q- g95 #-P- I4R8 F_P = -i4 -r8 131 157 #-Q- g95 #-P- I8R8 F_P = -i8 -r8 132 #-Q- g95 #-P- ?? F_P = -i4 -r8133 158 #-Q- g95 w_w = -O5 -funroll-all-loops $(F_D) $(F_P) -I$(MODDIR) 134 159 #-Q- g95 F_O = $(w_w) -fmod=$(MODDIR) -fno-second-underscore … … 144 169 #-Q- g95 NCDF_LIB = -L/usr/local/lib -lnetcdf 145 170 #-Q- g95 #- 146 #-Q- eshpux #- Global definitions for eshpux used as Earth Simulator front-end147 #-Q- eshpux M_K = gmake148 #-Q- eshpux P_C = escpp149 #-Q- eshpux # FTRACE used for profiling150 #-Q- eshpux FTRACE = -ftrace151 #-Q- eshpux # FTRACE =152 #-Q- eshpux P_O = -P -C $(P_P)153 #-Q- eshpux F_C = esmpif90 -c154 #-Q- eshpux #-D- MD F_D =155 #-Q- eshpux #-D- MN F_D =156 #-Q- eshpux #-P- I4R4 F_P = -dW157 #-Q- eshpux #-P- I4R8 F_P = -dW -Wf\"-A idbl4\"158 #-Q- eshpux #-P- I8R8 F_P = -ew159 #-Q- eshpux #-P- ?? F_P = -dW -Wf\"-A idbl4\"160 #-Q- eshpux F_O = $(F_D) $(F_P) $(FTRACE) -I $(MODDIR)161 #-Q- eshpux F_L = esmpif90162 #-Q- eshpux L_O = $(F_P) $(FTRACE)163 #-Q- eshpux A_C = ar -rv164 #-Q- eshpux A_G = ar -x165 #-Q- eshpux A_X = esar -rv166 #-Q- eshpux C_C = esmpicc -c167 #-Q- eshpux C_O =168 #-Q- eshpux C_L = esmpicc169 #-Q- eshpux FC_C = cc -c170 #-Q- eshpux FC_O =171 #-Q- eshpux FC_L = cc172 #-Q- eshpux #-173 #-Q- eshpux NETCDFROOT = /S/home010/c0010/ES174 #-Q- eshpux NCDF_INC = $(NETCDFROOT)/include175 #-Q- eshpux NCDF_LIB = -L$(NETCDFROOT)/lib -lnetcdf176 #-Q- eshpux #-177 171 #-Q- linux #- Global definitions for LINUX 178 172 #-Q- linux M_K = make … … 185 179 #-Q- linux #-P- I4R8 F_P = -i4 -r8 186 180 #-Q- linux #-P- I8R8 F_P = -i8 -r8 187 #-Q- linux #-P- ?? F_P = -i4 -r4188 181 #-Q- linux F_O = $(F_D) $(F_P) -Mfree -module $(MODDIR) 189 182 #-Q- linux F_L = pgf90 … … 208 201 #-Q- lxiv7 #-P- I4R8 F_P = -i4 -r8 209 202 #-Q- lxiv7 #-P- I8R8 F_P = -i8 -r8 210 #-Q- lxiv7 #-P- ?? F_P =211 203 #-Q- lxiv7 F_O = -O $(F_D) $(F_P) -I$(MODDIR) -module $(MODDIR) 212 204 #-Q- lxiv7 F_L = ifc … … 231 223 #-Q- lxiv8 #-P- I4R8 F_P = -i4 -r8 232 224 #-Q- lxiv8 #-P- I8R8 F_P = -i8 -r8 233 #-Q- lxiv8 #-P- ?? F_P =234 225 #-Q- lxiv8 F_O = -O $(F_D) $(F_P) -I$(MODDIR) -module $(MODDIR) 235 226 #-Q- lxiv8 F_L = ifort … … 244 235 #-Q- lxiv8 NCDF_LIB = -L/usr/local/lib -lnetcdf 245 236 #-Q- lxiv8 #- 246 #-Q- newsys #- Global definitions for System Test247 #-Q- newsys M_K = make248 #-Q- newsys P_C = cpp249 #-Q- newsys P_O = -P -C $(P_P)250 #-Q- newsys F_C = f90 -c251 #-Q- newsys #-D- MD F_D =252 #-Q- newsys #-D- MN F_D =253 #-Q- newsys #-P- I4R4 F_P =254 #-Q- newsys #-P- I4R8 F_P =255 #-Q- newsys #-P- I8R8 F_P =256 #-Q- newsys #-P- ?? F_P =257 #-Q- newsys F_O = $(F_D) $(F_P) -M$(MODDIR) -fast258 #-Q- newsys F_L = f90259 #-Q- newsys L_O =260 #-Q- newsys A_C = ar -r261 #-Q- newsys A_G = ar -x262 #-Q- newsys C_C = cc -c263 #-Q- newsys C_O =264 #-Q- newsys C_L = cc265 #-Q- newsys #-266 #-Q- newsys NCDF_INC = /distrib/local/include267 #-Q- newsys NCDF_LIB = -L/distrib/local/lib -lnetcdf268 #-Q- newsys #-269 237 #-Q- osf1 #- Global definitions for DEC OSF1 270 238 #-Q- osf1 M_K = gmake … … 277 245 #-Q- osf1 #-P- I4R8 F_P = -r8 278 246 #-Q- osf1 #-P- I8R8 F_P = -i8 -r8 279 #-Q- osf1 #-P- ?? F_P =280 247 #-Q- osf1 F_O = -O $(F_D) $(F_P) -I$(MODDIR) -module $(MODDIR) 281 248 #-Q- osf1 F_L = f90 … … 300 267 #-Q- osxxlf #-P- I4R8 F_P = -qintsize=4 -qrealsize=8 301 268 #-Q- osxxlf #-P- I8R8 F_P = -qintsize=8 -qrealsize=8 302 #-Q- osxxlf #-P- ?? F_P =303 269 #-Q- osxxlf w_w = $(F_P) -O2 $(F_D) -qsuffix=f=f90 304 270 #-Q- osxxlf F_O = $(w_w) -I$(MODDIR) -qmoddir=$(MODDIR) … … 324 290 #-Q- sgi6 #-P- I4R8 F_P = -i4 -r8 325 291 #-Q- sgi6 #-P- I8R8 F_P = -i8 -r8 326 #-Q- sgi6 #-P- ?? F_P = -i4 -r8327 292 #-Q- sgi6 F_O = $(F_D) $(F_P) -I $(MODDIR) 328 293 #-Q- sgi6 F_L = f90 … … 347 312 #-Q- solaris #-P- I4R8 F_P = -r8const 348 313 #-Q- solaris #-P- I8R8 F_P = -i8const -r8const 349 #-Q- solaris #-P- ?? F_P =350 314 #-Q- solaris F_O = $(F_D) $(F_P) -M$(MODDIR) -fast 351 315 #-Q- solaris F_L = f90 … … 360 324 #-Q- solaris NCDF_LIB = -L/distrib/local/lib -lnetcdf 361 325 #-Q- solaris #- 362 #-Q- sxdkrz #- Global definitions for sx6nec (DKRZ) 326 #-Q- sxdkrz #- Global definitions for sxdkrz 327 #-Q- sxdkrz #- compilation on DKRZ for NEC SX-6 363 328 #-Q- sxdkrz LIB_MPI = MPI2 364 329 #-Q- sxdkrz LIB_MPI_BIS = … … 374 339 #-Q- sxdkrz #-P- I4R8 F_P = -dw -Wf\"-A idbl4\" 375 340 #-Q- sxdkrz #-P- I8R8 F_P = -ew 376 #-Q- sxdkrz #-P- ?? F_P = -dw -Wf\"-A idbl4\"377 341 #-Q- sxdkrz F_O = $(F_D) $(F_P) -I $(MODDIR) 378 342 #-Q- sxdkrz F_L = sxmpif90 … … 391 355 #-Q- sxdkrz NCDF_LIB = -L/pool/SX-6/netcdf/netcdf-3.5.0/lib -lnetcdf_A_idbl4 392 356 #-Q- sxdkrz #- 393 #-Q- sxnec #- Global definitions for SXNEC : 394 #-Q- sxnec #- compilation on rhodes for NEC SX-5 395 #-Q- sxnec LIB_MPI = MPI2 396 #-Q- sxnec LIB_MPI_BIS = 397 #-Q- sxnec PRISM_ARCH = SX 398 #-Q- sxnec PRISM_NAME = rhodes 399 #-Q- sxnec M_K = gmake 400 #-Q- sxnec P_C = sxcpp 401 #-Q- sxnec P_O = -P -C $(P_P) 402 #-Q- sxnec F_C = sxmpif90 -c 403 #-Q- sxnec #-D- MD F_D = 404 #-Q- sxnec #-D- MN F_D = 405 #-Q- sxnec #-P- I4R4 F_P = -dW 406 #-Q- sxnec #-P- I4R8 F_P = -dW -Wf\"-A idbl4\" 407 #-Q- sxnec #-P- I8R8 F_P = -ew 408 #-Q- sxnec #-P- ?? F_P = -dW -Wf\"-A idbl4\" 409 #-Q- sxnec F_O = $(F_D) $(F_P) -I $(MODDIR) 410 #-Q- sxnec F_L = sxmpif90 411 #-Q- sxnec L_O = $(F_P) 412 #-Q- sxnec A_C = ar -rv 413 #-Q- sxnec A_G = ar -x 414 #-Q- sxnec A_X = sxar -rv 415 #-Q- sxnec C_C = sxcc -c 416 #-Q- sxnec C_O = 417 #-Q- sxnec C_L = sxcc 418 #-Q- sxnec FC_C = cc -c 419 #-Q- sxnec FC_O = 420 #-Q- sxnec FC_L = cc 421 #-Q- sxnec #- 422 #-Q- sxnec NCDF_INC = /SX/usr/local/pub/netcdf-3.5.0_opt/include 423 #-Q- sxnec NCDF_LIB = -L/SX/usr/local/pub/netcdf-3.5.0_opt/lib -lnetcdf 424 #-Q- sxnec #- 425 #-Q- sx6nec #- Global definitions for SX6NEC : 426 #-Q- sx6nec #- compilation on mercure for NEC SX-6 427 #-Q- sx6nec LIB_MPI = MPI2 428 #-Q- sx6nec LIB_MPI_BIS = 429 #-Q- sx6nec PRISM_ARCH = SX 430 #-Q- sx6nec PRISM_NAME = mercure 431 #-Q- sx6nec M_K = gmake 432 #-Q- sx6nec P_C = cpp 433 #-Q- sx6nec P_O = -P -C $(P_P) 434 #-Q- sx6nec F_C = sxmpif90 -c 435 #-Q- sx6nec #-D- MD F_D = 436 #-Q- sx6nec #-D- MN F_D = 437 #-Q- sx6nec #-P- I4R4 F_P = -dW 438 #-Q- sx6nec #-P- I4R8 F_P = -dW -Wf\"-A idbl4\" 439 #-Q- sx6nec #-P- I8R8 F_P = -ew 440 #-Q- sx6nec #-P- ?? F_P = -dW -Wf\"-A idbl4\" 441 #-Q- sx6nec F_O = $(F_D) $(F_P) -size_t64 -I $(MODDIR) 442 #-Q- sx6nec F_L = sxmpif90 443 #-Q- sx6nec L_O = -size_t64 $(F_P) 444 #-Q- sx6nec A_C = ar -rv 445 #-Q- sx6nec A_G = ar -x 446 #-Q- sx6nec A_X = sxar -rv 447 #-Q- sx6nec C_C = sxcc -size_t64 -c 448 #-Q- sx6nec C_O = 449 #-Q- sx6nec C_L = sxcc -size_t64 450 #-Q- sx6nec FC_C = gcc -c 451 #-Q- sx6nec FC_O = 452 #-Q- sx6nec FC_L = gcc 453 #-Q- sx6nec #- 454 #-Q- sx6nec NCDF_INC = /usr/local/SX6/soft/netcdf/include 455 #-Q- sx6nec NCDF_LIB = -L/usr/local/SX6/soft/netcdf/lib -lnetcdf 456 #-Q- sx6nec #- 357 #-Q- sx8brodie #- Global definitions for sx8brodie 358 #-Q- sx8brodie #- compilation on brodie for NEC SX-8 359 #-Q- sx8brodie LIB_MPI = MPI2 360 #-Q- sx8brodie LIB_MPI_BIS = 361 #-Q- sx8brodie PRISM_ARCH = SX 362 #-Q- sx8brodie PRISM_NAME = brodie 363 #-Q- sx8brodie M_K = sxgmake 364 #-Q- sx8brodie P_C = sxcpp 365 #-Q- sx8brodie P_O = -P -C $(P_P) 366 #-Q- sx8brodie F_C = sxmpif90 -c 367 #-Q- sx8brodie #-D- MD F_D = 368 #-Q- sx8brodie #-D- MN F_D = 369 #-Q- sx8brodie #-P- I4R4 F_P = -dW 370 #-Q- sx8brodie #-P- I4R8 F_P = -dW -Wf\"-A idbl4\" 371 #-Q- sx8brodie #-P- I8R8 F_P = -ew 372 #-Q- sx8brodie F_O = $(F_D) $(F_P) -I $(MODDIR) 373 #-Q- sx8brodie F_L = sxmpif90 374 #-Q- sx8brodie L_O = $(F_P) 375 #-Q- sx8brodie A_C = sxar -rv 376 #-Q- sx8brodie A_G = sxar -x 377 #-Q- sx8brodie A_X = sxar -rv 378 #-Q- sx8brodie C_C = sxcc -c 379 #-Q- sx8brodie C_O = 380 #-Q- sx8brodie C_L = sxcc 381 #-Q- sx8brodie FC_C = gcc -c 382 #-Q- sx8brodie FC_O = 383 #-Q- sx8brodie FC_L = gcc 384 #-Q- sx8brodie #- 385 #-Q- sx8brodie NCDF_INC = /SXlocal/pub/netCDF/netCDF-3.6.1/include 386 #-Q- sx8brodie NCDF_LIB = -L/SXlocal/pub/netCDF/netCDF-3.6.1/lib -lnetcdf 387 #-Q- sx8brodie #- 388 #-Q- sx8mercure #- Global definitions for sx8mercure 389 #-Q- sx8mercure #- compilation on mercure for NEC SX-8 390 #-Q- sx8mercure LIB_MPI = MPI2 391 #-Q- sx8mercure LIB_MPI_BIS = 392 #-Q- sx8mercure PRISM_ARCH = SX 393 #-Q- sx8mercure PRISM_NAME = mercure 394 #-Q- sx8mercure M_K = sxgmake 395 #-Q- sx8mercure P_C = cpp 396 #-Q- sx8mercure P_O = -P -C $(P_P) 397 #-Q- sx8mercure F_C = sxmpif90 -c 398 #-Q- sx8mercure #-D- MD F_D = 399 #-Q- sx8mercure #-D- MN F_D = 400 #-Q- sx8mercure #-P- I4R4 F_P = -dW 401 #-Q- sx8mercure #-P- I4R8 F_P = -dW -Wf\"-A idbl4\" 402 #-Q- sx8mercure #-P- I8R8 F_P = -ew 403 #-Q- sx8mercure F_O = $(F_D) $(F_P) -size_t64 -I $(MODDIR) 404 #-Q- sx8mercure F_L = sxmpif90 405 #-Q- sx8mercure L_O = -size_t64 $(F_P) 406 #-Q- sx8mercure A_C = sxar -rv 407 #-Q- sx8mercure A_G = sxar -x 408 #-Q- sx8mercure A_X = sxar -rv 409 #-Q- sx8mercure C_C = sxcc -size_t64 -c 410 #-Q- sx8mercure C_O = 411 #-Q- sx8mercure C_L = sxcc -size_t64 412 #-Q- sx8mercure FC_C = gcc -c 413 #-Q- sx8mercure FC_O = 414 #-Q- sx8mercure FC_L = gcc 415 #-Q- sx8mercure #- 416 #-Q- sx8mercure NCDF_INC = /usr/local/SX8/soft/netcdf/include 417 #-Q- sx8mercure NCDF_LIB = -L/usr/local/SX8/soft/netcdf/lib -lnetcdf 418 #-Q- sx8mercure #- 457 419 #-Q- t3e #- Global definitions for T3E 458 420 #-Q- t3e M_K = gmake … … 465 427 #-Q- t3e #-P- I4R8 F_P = 466 428 #-Q- t3e #-P- I8R8 F_P = 467 #-Q- t3e #-P- ?? F_P =468 429 #-Q- t3e w_w = $(F_D) $(F_P) -rm -O2 -Ounroll2 -Osplit2 -dp 469 430 #-Q- t3e F_O = $(w_w) -p $(MODEL_LIB) … … 489 450 #-Q- tx7 #-P- I4R8 F_P = -i4 -r8 490 451 #-Q- tx7 #-P- I8R8 F_P = -i8 -r8 491 #-Q- tx7 #-P- ?? F_P = -i4 -r8492 452 #-Q- tx7 F_O = -O $(F_D) $(F_P) -I$(MODDIR) -module $(MODDIR) 493 453 #-Q- tx7 F_L = efc … … 499 459 #-Q- tx7 C_L = cc 500 460 #-Q- tx7 #- 501 #-Q- tx7 NCDF_INC = /usr/local/ TX7/soft/netcdf/include502 #-Q- tx7 NCDF_LIB = -L/usr/local/ TX7/soft/netcdf/lib -lnetcdf461 #-Q- tx7 NCDF_INC = /usr/local/include 462 #-Q- tx7 NCDF_LIB = -L/usr/local/lib -lnetcdf 503 463 #-Q- tx7 #- 504 464 #-Q- unix #- Global definitions for UNIX … … 512 472 #-Q- unix #-P- I4R8 F_P = 513 473 #-Q- unix #-P- I8R8 F_P = 514 #-Q- unix #-P- ?? F_P =515 474 #-Q- unix F_O = $(F_D) $(F_P) -M$(MODDIR) -fast 516 475 #-Q- unix F_L = f90 -
modipsl/trunk/util/clr_make
r2 r12 1 1 #!/bin/ksh 2 # $Id : clr_make,v 2.3 2005/04/05 14:35:47 adm Exp$2 # $Id$ 3 3 #--------------------------------------------------------------------- 4 4 #- Suppression des Makefile propres a un environnement -
modipsl/trunk/util/ins_make
r2 r12 1 1 #!/bin/ksh 2 # $Id : ins_make,v 2.19 2006/01/18 05:59:17 adm Exp$2 # $Id$ 3 3 #--------------------------------------------------------------------- 4 4 #- Installation of Makefiles according to an environment 5 5 #--------------------------------------------------------------------- 6 b_n=$(basename $0) 7 d_n=$(dirname $0) 6 function ins_make_Usage 7 { 8 echo " 9 ins_make install the Makefile in the directories 10 11 Usage : 12 ${b_n} [-h] [-v] [-d] [-p r] [-t h] [-m m] 13 14 Options : 15 -h : help 16 -v : verbose mode 17 -d : debug mode 18 -p p : int and real precision I4R4/I4R8/I8R8/4/8 19 -t h : target host_name 20 -m m : mpi context choosen for the coupling MPI1/MPI2 21 22 Defaults : 23 -t local_host -p I4R8 24 25 Example for remote host compilation : 26 ins_make -t sx8brodie 27 " 28 } 29 #- dirname and basename 30 d_n=${0%/*}; b_n=${0##*/}; 8 31 #- Retrieving and validation of the options 9 x_v='silencious'; 10 x_d='normal'; 11 x_p=""; 12 x_t=""; 13 x_m='??'; 32 x_v='silencious'; x_d='normal'; x_p="??"; x_t="??"; x_m='??'; 14 33 while getopts :hvdp:m:t: V 15 34 do 16 case $V in 17 (h) echo "Usage : "${b_n} \ 18 " [-h] [-v] [-d] [-p r] [-t h] "; 19 echo " -h : help"; 20 echo " -v : verbose mode"; 21 echo " -t h : target host_name"; 22 echo " -d : debug mode"; 23 echo " -p p : int and real precision I4R4/I4R8/I8R8/4/8"; 24 echo " -m m : mpi context choosen for the coupling MPI1/MPI2"; 25 echo ""; 26 echo "Example for remote host compilation "; 27 echo "ins_make -t sxnec"; 28 echo ""; 29 echo "Defaults : -t local_host"; 30 echo ""; 31 exit 0;; 32 (v) x_v='verbose';; 33 (d) x_d='debug';; 34 (p) x_p=${OPTARG};; 35 (t) x_t=${OPTARG};; 36 (m) x_m=${OPTARG};; 37 (:) echo ${b_n}" : -"${OPTARG}" option : missing value" 1>&2; 38 exit 2;; 39 (\?) echo ${b_n}" : -"${OPTARG}" option : not supported" 1>&2; 40 exit 2;; 41 esac 35 case ${V} in 36 (h) ins_make_Usage; exit 0;; 37 (v) x_v='verbose';; 38 (d) x_d='debug';; 39 (p) x_p=${OPTARG};; 40 (t) x_t=${OPTARG};; 41 (m) x_m=${OPTARG};; 42 (:) echo ${b_n}" : -"${OPTARG}" option : missing value" 1>&2; 43 exit 2;; 44 (\?) echo ${b_n}" : -"${OPTARG}" option : not supported" 1>&2; 45 exit 2;; 46 esac 42 47 done 43 48 shift $(($OPTIND-1)); … … 47 52 # Default INTEGER and REAL precision 48 53 case ${x_p} in 49 ( I4R4 | I4R8 | I8R8 ) ;; 50 ( 4 ) x_p='I4R4';; 51 ( 8 ) x_p='I8R8';; 52 ("") x_p='??';; 53 (*) 54 echo 'Invalid precision ' 1>&2; 55 echo ${x_p}' (must be I4R4, I4R8, I8R8, 4 or 8)' 1>&2; 56 exit 1;; 54 ( I4R4 | 4 ) x_p='I4R4'; w_ip='4'; w_rp='4';; 55 ( I4R8 | ?? ) x_p='I4R8'; w_ip='4'; w_rp='8';; 56 ( I8R8 | 8 ) x_p='I8R8'; w_ip='8'; w_rp='8';; 57 (*) 58 echo 'Invalid precision ' 1>&2; 59 echo ${x_p}' (must be I4R4, I4R8, I8R8, 4 or 8)' 1>&2; 60 exit 1;; 57 61 esac 58 62 #- 59 63 # Target_Host Name 60 if [ '\?'${x_t} = '\?' ]; then 61 x_t=`${d_n}/w_i_h`; 62 if [ $? -ne 0 ]; then 63 echo "Bad installation : w_i_h/uname unreachable" 1>&2; 64 exit 1; 65 elif [ "$x_t" = "Unknown" ]; then 66 echo "Local_Host not supported" 1>&2; 67 exit 1; 68 fi; 69 fi; 70 case ${x_t} in 71 (aix | ax_mono | cray | Darwin | fjvpp | g95 | eshpux | \ 72 linux | lxiv7 | lxiv8 | osf1 | osxxlf | sgi6 | \ 73 solaris | sxdkrz | sxnec | sx6nec | t3e | tx7 | unix) ;; 74 (*) 75 echo "Target_Host "${x_t}" not supported" 1>&2; 76 exit 1;; 64 [[ ${x_t} = '??' ]] && \ 65 { x_t=$(${d_n}/w_i_h); 66 { [[ ${?} != 0 ]] && \ 67 { echo "Bad installation : w_i_h/uname unreachable" 1>&2; 68 exit 1; }; } || \ 69 [[ ${x_t} = "Unknown" ]] && \ 70 { echo "Local_Host not supported" 1>&2; exit 1; }; } 71 #- 72 MKTG=${d_n}'/AA_make.gdef' 73 [[ ! -f "${MKTG}" ]] && { echo "${MKTG} unreachable ..."; exit 3; } 74 #- 75 W_XX=$(sed -n -e "s/^#-Q- *\([^ ]*\).*$/\1/p" ${MKTG} | \ 76 sort -u | sed -e "/${x_t}/!d"); 77 [[ '\?'"${W_XX}" != '\?'${x_t} ]] && \ 78 { echo "Target_Host "${x_t}" not supported" 1>&2; exit 1; } 79 #- 80 case ${x_m} in 81 ( mpi1 | mpi2 | MPI1 | MPI2 | ?? );; 82 (*) echo "MPI context "${x_m}" not supported" 1>&2; exit 1;; 77 83 esac 78 84 #- 79 case ${x_m} in 80 ( mpi1 | mpi2 | MPI1 | MPI2 | ??) ;; 81 (*) 82 echo "MPI context "${x_m}" not supported" 1>&2; 83 exit 1;; 84 esac 85 [[ ${x_v} = 'verbose' ]] && \ 86 { echo ""; 87 echo '--- Mode : '${x_v}; 88 echo '--- Compilation : '${x_d}; 89 echo '--- Precision : '${x_p}; 90 echo '--- Target : '${x_t}; 91 echo '--- MPI context : '${x_m}; } 85 92 #- 86 if [ ${x_v} = 'verbose' ]; then 87 echo '--- Mode : '${x_v}; 88 echo '--- Compilation : '${x_d}; 89 echo '--- Precision : '${x_p}; 90 echo '--- Target : '${x_t}; 91 echo '--- MPI context : '${x_m}; 92 fi; 93 echo ""; echo "Installation of makefiles for ${x_t}"; echo ""; 93 94 #- 94 95 l_rep=$(find ${d_n}/.. -name AA_make -print) 95 #- 96 W_OS=${x_t}; 97 echo " "; 98 echo "Installation of makefiles for $W_OS"; 99 echo " "; 100 #- 101 MKTG=${d_n}'/AA_make.gdef' 102 if [ ! -f "$MKTG" ]; then 103 echo "$MKTG unreachable ..." 104 exit 3; 105 fi; 106 #- 107 for i in $l_rep 96 for i in ${l_rep} 108 97 do 109 j=${i%/AA_make} 110 echo "Installation in ${j} ..."; 111 MKTL="${j}"'/AA_make.ldef' 112 if [ ! -f "$MKTL" ]; then 113 echo "$MKTL unreachable ..." 114 exit 3; 115 fi; 116 MKTR="${j}"'/AA_make' 117 cat ${MKTL} ${MKTG} ${MKTR} > mk1.$$ 118 W_XX='#-Q- '$W_OS 119 sed -e "s/^$W_XX *//" mk1.$$ | grep -v '^#-Q- ' > mk2.$$ 98 j=${i%/AA_make}; 99 echo "Installation in ${j}"; 100 MKTL="${j}"'/AA_make.ldef'; 101 [[ ! -f "${MKTL}" ]] && { echo "${MKTL} unreachable ..."; exit 3; } 102 MKTR="${j}"'/AA_make'; 103 cat ${MKTL} ${MKTG} ${MKTR} > mk1.$$; 104 W_PR='#-Q- '; W_XX=${W_PR}${x_t}; 105 sed -e "/^${W_XX} */ s///" -e "/^${W_PR}/d" mk1.$$ > mk2.$$; 120 106 #- 121 107 # Default INTEGER and REAL precision 122 if [ ${x_p} = 'I4R4' ]; then 123 W_XX='#-P- I4R4' 124 elif [ ${x_p} = 'I4R8' ]; then 125 W_XX='#-P- I4R8' 126 elif [ ${x_p} = 'I8R8' ]; then 127 W_XX='#-P- I8R8' 128 else 129 W_XX='#-P- ??' 130 fi 131 sed -e "s/^$W_XX *//" mk2.$$ | grep -v '^#-P- ' > mk1.$$ 108 W_PR='#-P- '; W_XX=${W_PR}${x_p}; 109 sed -e "/^${W_XX} */ s///" -e "/^${W_PR}/d" mk2.$$ > mk1.$$; 132 110 #- 133 # Remove the module "defprec.f90" 134 # if the default precision has (eventually) been modified 135 if [ '!!'${j##*/modeles} = '!!/IOIPSL/src' ]; then 136 dp_n=${d_n}'/../modeles/IOIPSL/src/defprec.f90'; 137 if [ -f ${dp_n} ]; then 138 W_NEW=$(grep 'D_P =' mk1.$$ | tail -1 | sed "s/D_P = //") 139 if [ -f ${j}/Makefile ]; then 140 W_OLD=$(grep 'D_P =' ${j}/Makefile | tail -1 | sed "s/D_P = //") 141 else 142 W_OLD='!??!' 143 fi 144 if [ ${W_OLD} != ${W_NEW} ]; then 145 echo 'Remove '${dp_n}; 146 rm -f ${dp_n}; 147 fi 148 unset W_NEW W_OLD; 149 fi 150 unset dp_n; 151 fi 111 # Handle the precision module "defprec.f90" in "IOIPSL/src" 112 [[ '!!'${j##*/modeles} = '!!/IOIPSL/src' ]] && \ 113 { [[ ${x_v} = 'verbose' ]] && W_XX='-v' || W_XX=""; 114 ${d_n}/ins_m_prec ${W_XX} -i ${w_ip} -r ${w_rp}; r_c=${?}; 115 unset w_ip w_rp; 116 [[ ${r_c} != 0 ]] && exit ${r_c}; } 152 117 #- 153 118 # Debug 154 if [ ${x_d} = 'debug' ]; then 155 W_XX='#-D- MD' 156 else 157 W_XX='#-D- MN' 158 fi 159 sed -e "s/^$W_XX *//" mk1.$$ | grep -v '^#-D- ' > mk2.$$ 119 W_PR='#-D- '; 120 [[ ${x_d} = 'debug' ]] && W_XX=${W_PR}'MD' || W_XX=${W_PR}'MN'; 121 sed -e "/^${W_XX} */ s///" -e "/^${W_PR}/d" mk1.$$ > mk2.$$; 160 122 #- 161 123 # Retrieve the path of the directory … … 167 129 #- 168 130 # Choice of mpi library for the coupling 169 W_XX='LIB_MPI =' 170 W_XX_BIS='LIB_MPI_BIS =' 171 #- 172 case ${x_m} in 173 ( mpi1 | MPI1 ) 174 lib_mpi='MPI1' 175 lib_mpi_bis='MPI1' 131 W_XX='LIB_MPI ='; W_XX_BIS='LIB_MPI_BIS ='; 132 case ${x_m} in 133 ( mpi1 | MPI1 ) 134 lib_mpi='MPI1'; lib_mpi_bis='MPI1'; 176 135 sed -e "s!^${W_XX}.*!${W_XX} ${lib_mpi}!" \ 177 -e "s!^${W_XX_BIS}.*!${W_XX_BIS} ${lib_mpi_bis}!" mk1.$$ > ${j}/Makefile ;;178 ( mpi2 | MPI2 )179 lib_mpi='MPI2'180 lib_mpi _bis=''136 -e "s!^${W_XX_BIS}.*!${W_XX_BIS} ${lib_mpi_bis}!" \ 137 mk1.$$ > ${j}/Makefile;; 138 ( mpi2 | MPI2 ) 139 lib_mpi='MPI2'; lib_mpi_bis=''; 181 140 sed -e "s!^${W_XX}.*!${W_XX} ${lib_mpi}!" \ 182 -e "s!^${W_XX_BIS}.*!${W_XX_BIS} ${lib_mpi_bis}!" mk1.$$ > ${j}/Makefile ;; 183 (??) 184 cp mk1.$$ ${j}/Makefile ;; 185 (*) ;; 186 esac 187 unset lib_mpi; 188 unset lib_mpi_bis; 189 #- 141 -e "s!^${W_XX_BIS}.*!${W_XX_BIS} ${lib_mpi_bis}!" \ 142 mk1.$$ > ${j}/Makefile;; 143 (??) 144 cp mk1.$$ ${j}/Makefile;; 145 (*) ;; 146 esac 147 unset lib_mpi lib_mpi_bis; 190 148 done 191 149 #- 192 rm -f mk1.$$ mk2.$$ 150 echo ""; 151 unset W_XX W_XX_BIS; rm -f mk1.$$ mk2.$$; 193 152 #- 194 153 exit 0; 195 196 197 198 199 200 201 -
modipsl/trunk/util/ins_post
r2 r12 1 1 #!/bin/ksh 2 # $Id : ins_post,v 2.3 2004/12/22 16:04:12 adm Exp$2 # $Id$ 3 3 #----------------------------------------------- 4 4 #- Installation de scripts de post_traitement … … 35 35 shift $(($OPTIND-1)); 36 36 37 if [ "$x_t" = "sxnec" ]; then38 b_n_post=$(basename $HOME GAYA)39 d_n_post=$(dirname $HOME GAYA)37 if [ "$x_t" = "sx8brodie" ]; then 38 b_n_post=$(basename $HOME) 39 d_n_post=$(dirname $HOME | sed 's/home/u/') 40 40 elif [ "$x_t" = "fjvpp" ]; then 41 41 b_n_post=$(basename $DMFDIR) 42 42 d_n_post=\/$(dirname $DMFDIR | awk -F\/ '{print $4}') 43 elif [ "$x_t" = "sx 6nec" ]; then43 elif [ "$x_t" = "sx8mercure" ]; then 44 44 b_n_post=$(basename $DMFDIR) 45 45 d_n_post=$(dirname $DMFDIR) … … 67 67 68 68 case ${x_t} in 69 ( aix | cray | fjvpp | linux | osf1 | solaris | t3e | sxnec | sx6nec | unix ) ;; 69 ( aix | cray | fjvpp | linux | lxiv7 | lxiv8 | osf1 | \ 70 solaris | t3e | sx8brodie | sx8mercure | unix ) ;; 70 71 (*) 71 72 echo "Target_Host "${x_t}" not supported" 1>&2; … … 110 111 W_OS=${x_t}; 111 112 112 if [ ${W_OS} = "sxnec" ]; then113 if [ ${W_OS} = "sx8brodie" ]; then 113 114 format='\s' 114 115 elif [ ${W_OS} = "fjvpp" ]; then 115 116 format='\d' 116 elif [ ${W_OS} = "sx 6nec" ]; then117 elif [ ${W_OS} = "sx8mercure" ]; then 117 118 format='\g' 118 119 else -
modipsl/trunk/util/ins_script
r2 r12 1 1 #!/bin/ksh 2 # $Id : ins_script,v 2.3 2005/01/31 16:40:29 adm Exp$2 # $Id$ 3 3 #--------------------------------------------------------------------- 4 4 #- Installation de scripts de lancement d experiences propres a un environnement … … 50 50 fi; 51 51 52 if [ "$x_t" = "sxnec" ]; then53 b_n_atlas=$(basename $HOME GAYA)54 d_n_atlas=$(dirname $HOME GAYA)52 if [ "$x_t" = "sx8brodie" ]; then 53 b_n_atlas=$(basename $HOME) 54 d_n_atlas=$(dirname $HOME | sed 's/home/u/') 55 55 elif [ "$x_t" = "aix" ]; then 56 56 b_n_atlas=$LOGIN … … 59 59 b_n_atlas=$(basename $DMFDIR) 60 60 d_n_atlas=\/$(dirname $DMFDIR | awk -F\/ '{print $4}') 61 elif [ "$x_t" = "sx 6nec" ]; then61 elif [ "$x_t" = "sx8mercure" ]; then 62 62 b_n_atlas=$(basename $DMFDIR) 63 63 d_n_atlas=$(dirname $DMFDIR) … … 73 73 case ${x_t} in 74 74 ( aix | cray | fjvpp | linux | lxiv7 | lxiv8 | osf1 | \ 75 solaris | t3e | sx nec | sx6nec| unix ) ;;75 solaris | t3e | sx8brodie | sx8mercure | unix ) ;; 76 76 (*) 77 77 echo "Target_Host "${x_t}" not supported" 1>&2; … … 94 94 W_OS=${x_t}; 95 95 # 96 if [ ${W_OS} = "sxnec" ]; then96 if [ ${W_OS} = "sx8brodie" ]; then 97 97 format='\s' 98 98 elif [ ${W_OS} = "aix" ]; then … … 100 100 elif [ ${W_OS} = "fjvpp" ]; then 101 101 format='\d' 102 elif [ ${W_OS} = "sx 6nec" ]; then102 elif [ ${W_OS} = "sx8mercure" ]; then 103 103 format='\s' 104 104 else -
modipsl/trunk/util/mod.def
r2 r12 1 #- $ Header: /home/ioipsl/CVSROOT/modipsl/util/mod.def,v 2.43 2006/01/18 13:51:32 adm Exp$1 #- $Id$ 2 2 #--------------------------------------------------------------------- 3 #- Pour chaque modele on definit 4 #- ses composants (prefixe #-C-), leurs "tags" (prefixe #-T-), 5 #- et l'index du serveur CVS correspondant (prefixe #-I-) 6 #- dans la liste des serveurs (prefixe #-S-). 7 #- Le tag "?" est utilise pour les composants sans tag particulier. 8 #- Le tag "-?" est force avec l'option -H activee. 3 #-This file is the definition file of the script "model". 9 4 #--------------------------------------------------------------------- 10 #- Adresses des serveurs CVS 11 #- 12 #-S- 1 anonymous@cvs.ipsl.jussieu.fr:/home/ioipsl/CVSROOT 13 #-S- 2 sechiba@cvs.ipsl.jussieu.fr:/home/ssipsl/CVSREP 14 #-S- 3 lmdzbrowse@cvs.lmd.jussieu.fr:/home/cvsroot 15 #-S- 4 opa@cvs.ipsl.jussieu.fr:/home/opalod/CVSROOT 16 #-S- 5 nemo@cvs.ipsl.jussieu.fr:/home/opalod/NEMOCVSROOT 17 #-S- 6 inca@cvs.ipsl.jussieu.fr:/home/incaipsl/CVSROOT 5 #- Each model is defined by 6 #- (prefix #-H-) model informations, 7 #- (prefix #-C-) its components, 8 #- (prefix #-T-) its "tags", 9 #- (prefix #-L-) local working directory in modipsl, 10 #- (prefix #-D-) installation directory in the working directory, 11 #- (prefix #-M-) the email address of the model manager, 12 #- (prefix #-I-) a pointer on the repository server tables 13 #- (prefix #-S-) containing the repository system and server address. 14 #- 15 #- The tag "?" correspond to the default model version. 16 #- Invoking "model" with -H overrides any tags with "?". 18 17 #--------------------------------------------------------------------- 19 #- Informations relatives aux modeles 20 #- 21 #-H- IPSLCM4_v1 Modele couple IPSL en cours de finalisation 22 #-H- IPSLCM4_v1 ORCA tag ipsl_cm4_v1_9 18 #- Repository informations 19 #- 20 #-S- 1 cvs anonymous@cvs.ipsl.jussieu.fr:/home/ioipsl/CVSROOT 21 #-S- 2 cvs sechiba@cvs.ipsl.jussieu.fr:/home/ssipsl/CVSREP 22 #-S- 3 cvs lmdzbrowse@cvs.lmd.jussieu.fr:/home/cvsroot 23 #-S- 4 cvs opa@cvs.ipsl.jussieu.fr:/home/opalod/CVSROOT 24 #-S- 5 cvs nemo@cvs.ipsl.jussieu.fr:/home/opalod/NEMOCVSROOT 25 #-S- 6 cvs inca@cvs.ipsl.jussieu.fr:/home/incaipsl/CVSROOT 26 #-S- 7 svn --username nemo_user http://forge.ipsl.jussieu.fr/nemo/svn 27 #--------------------------------------------------------------------- 28 #- Models description 29 #- 30 #-H- IPSLCM4_v1 Modele couple IPSL dit IPCC 31 #-H- IPSLCM4_v1 ORCA tag ipsl_cm4_v1_10 23 32 #-H- IPSLCM4_v1 IOIPSL/src tag ipsl_cm4_v1_9_1 24 33 #-H- IPSLCM4_v1 LMDZ tag IPSL-CM4_IPCC 25 34 #-H- IPSLCM4_v1 ORCHIDEE tag orchidee_1_3 26 35 #-H- IPSLCM4_v1 CPL Oasis tag IPSL : ipsl_cm4_v1_2 27 #-H- IPSLCM4_v1 IPSLCM4_v1 configuration tag IPSL : ipsl_cm4_v1_ 536 #-H- IPSLCM4_v1 IPSLCM4_v1 configuration tag IPSL : ipsl_cm4_v1_6 28 37 #-M- IPSLCM4_v1 patricia.cadule@ipsl.jussieu.fr 29 #-C- IPSLCM4_v1 IOIPSL/src CPL ORCHIDEE LMDZ.3.3 IPSLCM4_v1 OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 30 #-T- IPSLCM4_v1 ipsl_cm4_v1_9_1 ipsl_cm4_v1_2 orchidee_1_3 IPSL-CM4_IPCC ipsl_cm4_v1_6 ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_8 38 #-C- IPSLCM4_v1 IOIPSL/src CPL ORCHIDEE LMDZ.3.3 IPSLCM4_v1 OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 39 #-T- IPSLCM4_v1 ipsl_cm4_v1_9_1 ipsl_cm4_v1_2 orchidee_1_3 IPSL-CM4_IPCC ipsl_cm4_v1_6 ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_8 31 40 #-I- IPSLCM4_v1 1 1 2 3 1 4 4 4 32 41 #-D- IPSLCM4_v1 . . . . . . . . … … 34 43 #-H- IPSLCM4_LOOP IPSL coupled model with tracer model and carbon cycle 35 44 #-H- IPSLCM4_LOOP ORCA (OPA+TRC+LIM) : tag ipsl_cm4_loop_1 36 #-H- IPSLCM4_LOOP IOIPSL/src tag ioipsl-2-0 45 #-H- IPSLCM4_LOOP IOIPSL/src tag ioipsl-2-0 37 46 #-H- IPSLCM4_LOOP LMDZ4 tag IPSL-CM4_LOOP 38 47 #-H- IPSLCM4_LOOP ORCHIDEE tag orchidee_1_4 … … 40 49 #-H- IPSLCM4_LOOP IPSLCM4_LOOP configuration tag IPSL : ipsl_cm4_loop_v1 41 50 #-H- IPSLCM4_LOOP Message sent to Patricia CADULE (IPSL) 42 #-M- IPSLCM4_LOOP patricia.cadule@ipsl.jussieu.fr 43 #-C- IPSLCM4_LOOP IOIPSL/src CPL ORCHIDEE LMDZ4 IPSLCM4_LOOP IPSLCM4_v1/Utilitaires OPA/SRC_ORCA OPA/SRC_UCL OPA/SRC_TRC UTIL/fait_AA_make 44 #-T- IPSLCM4_LOOP ioipsl-2-0 ? orchidee_1_4 IPSL-CM4_LOOP ? ipsl_cm4_v1_6 ipsl_cm4_loop_1 ipsl_cm4_loop_1 ipsl_cm4_loop_1 ipsl_cm4_v1_8 51 #-M- IPSLCM4_LOOP patricia.cadule@ipsl.jussieu.fr 52 #-C- IPSLCM4_LOOP IOIPSL/src CPL ORCHIDEE LMDZ4 IPSLCM4_LOOP IPSLCM4_v1/Utilitaires OPA/SRC_ORCA OPA/SRC_UCL OPA/SRC_TRC UTIL/fait_AA_make 53 #-T- IPSLCM4_LOOP ioipsl-2-0 ? orchidee_1_4 IPSL-CM4_LOOP ? ipsl_cm4_v1_6 ipsl_cm4_loop_1 ipsl_cm4_loop_1 ipsl_cm4_loop_1 ipsl_cm4_v1_8 45 54 #-I- IPSLCM4_LOOP 1 1 2 3 1 1 4 4 4 4 46 55 #-D- IPSLCM4_LOOP . . . . IPSLCM4_LOOP post_util . . . . 47 56 #-L- IPSLCM4_LOOP modeles modeles modeles modeles config . modeles modeles modeles modeles 48 57 #- 49 #-H- IPSLCM4_v1_OASIS3 Modele couple IPSL en cours de finalisation58 #-H- IPSLCM4_v1_OASIS3 IPSLCM4_v1_OASIS3 configuration with OASIS3 coupler 23/03/05 50 59 #-H- IPSLCM4_v1_OASIS3 ORCA tag ipsl_cm4_v1_10 51 #-H- IPSLCM4_v1_OASIS3 IOIPSL/src tag i psl_cm4_v1_9_152 #-H- IPSLCM4_v1_OASIS3 LMDZ4 tag IPSL-CM4_IPCC 53 #-H- IPSLCM4_v1_OASIS3 ORCHIDEE tag orchidee_1_3 54 #-H- IPSLCM4_v1_OASIS3 IPSLCM4_v1_OASIS3 configuration with OASIS3 coupler 23/03/0560 #-H- IPSLCM4_v1_OASIS3 IOIPSL/src tag ioipsl-2-1 61 #-H- IPSLCM4_v1_OASIS3 LMDZ4 tag IPSL-CM4_IPCC_branch 62 #-H- IPSLCM4_v1_OASIS3 ORCHIDEE tag orchidee_1_3_1 63 #-H- IPSLCM4_v1_OASIS3 OASIS3 55 64 #-M- IPSLCM4_v1_OASIS3 arnaud.caubel@cea.fr 56 #-C- IPSLCM4_v1_OASIS3 IOIPSL/src ORCHIDEE OASIS3 LMDZ4 IPSLCM4_v1_OASIS3 IPSLCM4_v1/Utilitaires OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 57 #-T- IPSLCM4_v1_OASIS3 ioipsl-2- 0 orchidee_1_3 ? IPSL-CM4_IPCC_branch ? ipsl_cm4_v1_6 ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_865 #-C- IPSLCM4_v1_OASIS3 IOIPSL/src ORCHIDEE OASIS3 LMDZ4 IPSLCM4_v1_OASIS3 IPSLCM4_v1/Utilitaires OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 66 #-T- IPSLCM4_v1_OASIS3 ioipsl-2-1 orchidee_1_3_1 ? IPSL-CM4_IPCC_branch ? ipsl_cm4_v1_6 ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_8 58 67 #-I- IPSLCM4_v1_OASIS3 1 2 1 3 1 1 4 4 4 59 #-D- IPSLCM4_v1_OASIS3 . . prism . . post_util . . . 68 #-D- IPSLCM4_v1_OASIS3 . . prism . . post_util . . . 60 69 #-L- IPSLCM4_v1_OASIS3 modeles modeles . modeles config . modeles modeles modeles 70 #- 71 #-H- IPSLCM4_v2_PAR IPSLCM4_v2_PAR configuration with parallel LMDZ4 and ORCHIDEE 72 #-H- IPSLCM4_v2_PAR working configuration 73 #-H- IPSLCM4_v2_PAR ORCA tag ipsl_cm4_v1_10 74 #-H- IPSLCM4_v2_PAR IOIPSL/src tag ioipsl-3-1 75 #-H- IPSLCM4_v2_PAR LMDZ4 tag V3_test 76 #-H- IPSLCM4_v2_PAR ORCHIDEE tag ORCHIDEE_PARA 77 #-H- IPSLCM4_v2_PAR OASIS3 tag HEAD 78 #-M- IPSLCM4_v2_PAR arnaud.caubel@cea.fr 79 #-C- IPSLCM4_v2_PAR IOIPSL/src ORCHIDEE OASIS3 LMDZ4 IPSLCM4_v2_PAR IPSLCM4_v1/Utilitaires OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 80 #-T- IPSLCM4_v2_PAR ioipsl-3-1 ORCHIDEE_PARA ? V3_test ? ipsl_cm4_v1_6 ipsl_cm4_v1_11 ipsl_cm4_v1_11 ipsl_cm4_v1_8 81 #-I- IPSLCM4_v2_PAR 1 2 1 3 1 1 4 4 4 82 #-D- IPSLCM4_v2_PAR . . prism . . post_util . . . 83 #-L- IPSLCM4_v2_PAR modeles modeles . modeles config . modeles modeles modeles 61 84 #- 62 85 #-H- IOIPSL IOIPSL source only … … 64 87 #-M- IOIPSL foujols@ipsl.jussieu.fr 65 88 #-C- IOIPSL IOIPSL/src 66 #-T- IOIPSL ioipsl- 2-089 #-T- IOIPSL ioipsl-3-1 67 90 #-I- IOIPSL 1 68 91 #-D- IOIPSL . … … 99 122 #-M- ORCHIDEE_OL_IO2 Martial.Mancip@ipsl.jussieu.fr 100 123 #-C- ORCHIDEE_OL_IO2 IOIPSL/src ORCHIDEE ORCHIDEE_OL 101 #-T- ORCHIDEE_OL_IO2 ioipsl-2- 0 orchidee_1_4old_ioipsl124 #-T- ORCHIDEE_OL_IO2 ioipsl-2-1 orchidee_1_5 old_ioipsl 102 125 #-I- ORCHIDEE_OL_IO2 1 2 2 103 126 #-D- ORCHIDEE_OL_IO2 . . . … … 115 138 #-M- LMDZ fairhead@lmd.jussieu.fr 116 139 #-C- LMDZ IOIPSL/src LMDZ.3.3 117 #-T- LMDZ ipsl_cm4_v1_9_1 rel-1-0-patch 140 #-T- LMDZ ipsl_cm4_v1_9_1 rel-1-0-patch 118 141 #-I- LMDZ 1 3 119 142 #-D- LMDZ . . … … 132 155 #-H- LMDZ4OR closest version to the IPSL coupled model IPSLCM4_v1_OASIS3 133 156 #-H- LMDZ4OR LMDZ4 IPSL-CM4_IPCC_branch version 134 #-H- LMDZ4OR ORCHIDEE tag orchidee_1_3 135 #-H- LMDZ4OR IOIPSL tag ioipsl-2- 0157 #-H- LMDZ4OR ORCHIDEE tag orchidee_1_3_1 158 #-H- LMDZ4OR IOIPSL tag ioipsl-2-1 136 159 #-M- LMDZ4OR fairhead@lmd.jussieu.fr 137 160 #-C- LMDZ4OR IOIPSL/src ORCHIDEE LMDZ4 LMDZ4OR IPSLCM4_v1/Utilitaires 138 #-T- LMDZ4OR ioipsl-2- 0 orchidee_1_3IPSL-CM4_IPCC_branch ? ipsl_cm4_v1_6161 #-T- LMDZ4OR ioipsl-2-1 orchidee_1_3_1 IPSL-CM4_IPCC_branch ? ipsl_cm4_v1_6 139 162 #-I- LMDZ4OR 1 2 3 1 1 140 163 #-D- LMDZ4OR . . . . post_util 141 164 #-L- LMDZ4OR modeles modeles modeles config . 165 #- 166 #-H- LMDZ4OR_V2 LMDZ4 with ORCHIDEE : 167 #-H- LMDZ4OR_V2 Latest validated LMDZ4 version 168 #-H- LMDZ4OR_V2 LMDZ4 LMDZ_V2 version 169 #-H- LMDZ4OR_V2 ORCHIDEE tag orchidee_1_3 170 #-H- LMDZ4OR_V2 IOIPSL tag ioipsl-2-1 171 #-M- LMDZ4OR_V2 fairhead@lmd.jussieu.fr 172 #-C- LMDZ4OR_V2 IOIPSL/src ORCHIDEE LMDZ4 LMDZ4OR IPSLCM4_v1/Utilitaires 173 #-T- LMDZ4OR_V2 ioipsl-2-1 orchidee_1_3 LMDZ4_V2 ? ipsl_cm4_v1_6 174 #-I- LMDZ4OR_V2 1 2 3 1 1 175 #-D- LMDZ4OR_V2 . . . . post_util 176 #-L- LMDZ4OR_V2 modeles modeles modeles config . 177 #- 178 #-H- LMDZ4OR_V3_CHILI LMDZ4 with ORCHIDEE : 179 #-H- LMDZ4OR_V3_CHILI Latest validated LMDZ4_v3 version 180 #-H- LMDZ4OR_V3_CHILI LMDZ4 LMDZ_V3 version 181 #-H- LMDZ4OR_V3_CHILI ORCHIDEE tag ORCHIDEE_PARA 182 #-H- LMDZ4OR_V3_CHILI IOIPSL tag ioipsl-3-1 183 #-M- LMDZ4OR_V3_CHILI fairhead@lmd.jussieu.fr 184 #-C- LMDZ4OR_V3_CHILI IOIPSL/src ORCHIDEE LMDZ4 LMDZ4OR libIGCM 185 #-T- LMDZ4OR_V3_CHILI ioipsl-3-1 ORCHIDEE_PARA V3_test ? ? 186 #-I- LMDZ4OR_V3_CHILI 1 2 3 1 1 187 #-D- LMDZ4OR_V3_CHILI . . . . . 188 #-L- LMDZ4OR_V3_CHILI modeles modeles modeles config scripts 142 189 #- 143 190 #-H- LMDZ4INCA LMDZ with INCA : … … 146 193 #-H- LMDZ4INCA INCA.2 reference version 147 194 #-H- LMDZ4INCA IOIPSL tag ioipsl-2-0 148 #-M- LMDZ4INCA Anne.Cozic@cea.fr 195 #-M- LMDZ4INCA Anne.Cozic@cea.fr 149 196 #-C- LMDZ4INCA IOIPSL/src INCA.2 LMDZ4 LMDZ4INCA 150 197 #-T- LMDZ4INCA ioipsl-2-0 ? ? ? … … 153 200 #-L- LMDZ4INCA modeles modeles modeles config 154 201 #- 155 #-H- LMDZOR_V1 LMDZ with ORCHIDEE. 156 #-H- LMDZOR_V1 ORCHIDEE no tag 202 #-H- LMDZ4INCA_V2 LMDZ with INCA : 203 #-H- LMDZ4INCA_V2 closest version to the IPSL coupled model IPSLCM4_v2_PAR 204 #-H- LMDZ4INCA_V2 LMDZ4 version v3_test 205 #-H- LMDZ4INCA_V2 INCA3 reference version 206 #-H- LMDZ4INCA_V2 IOIPSL tag ioipsl-3-1 207 #-M- LMDZ4INCA_V2 Anne.Cozic@cea.fr 208 #-C- LMDZ4INCA_V2 IOIPSL/src INCA3 LMDZ4 LMDZ4INCA_V2 209 #-T- LMDZ4INCA_V2 ioipsl-3-1 ? V3_test ? 210 #-I- LMDZ4INCA_V2 1 6 3 1 211 #-D- LMDZ4INCA_V2 . . . . 212 #-L- LMDZ4INCA_V2 modeles modeles modeles config 213 #- 214 #-H- LMDZOR_V1 LMDZ with ORCHIDEE. 215 #-H- LMDZOR_V1 ORCHIDEE no tag 157 216 #-H- LMDZOR_V1 LMDZ tag IPSL-CM4_v2x0 158 217 #-M- LMDZOR_V1 fairhead@lmd.jussieu.fr … … 182 241 #- 183 242 #-H- NEMO NEMO 184 #-H- NEMO OPA 185 #-H- NEMO LIM 186 #-H- NEMO TOP 187 #-H- NEMO IOIPSL/src tag ioipsl- 2-0243 #-H- NEMO OPA 244 #-H- NEMO LIM 245 #-H- NEMO TOP 246 #-H- NEMO IOIPSL/src tag ioipsl-3-1 188 247 #-H- NEMO NEMO sources and configurations 189 248 #-M- NEMO opatlod@lodyc.jussieu.fr 190 #-C- NEMO IOIPSL/src NEMO UTIL CONFIG/GYRECONFIG/ORCA2_LIM191 #-T- NEMO ioipsl-3- 0 nemo_v1_09 nemo_v1_09 nemo_v1_09 nemo_v1_09192 #-I- NEMO 1 5 5 5 5193 #-D- NEMO . . . GYREORCA2_LIM194 #-L- NEMO modeles modeles modeles configconfig249 #-C- NEMO IOIPSL/src AGRIF NEMO UTIL CONFIG/GYRE CONFIG/ORCA2_LIM 250 #-T- NEMO ioipsl-3-1 ? nemo_v2 nemo_v2 nemo_v2 nemo_v2 251 #-I- NEMO 1 5 5 5 5 5 252 #-D- NEMO . . . . GYRE ORCA2_LIM 253 #-L- NEMO modeles modeles modeles modeles config config 195 254 #- 196 255 #-H- ORCA4_LIM ORCA 4 degrees with Louvain Ice Model … … 245 304 #-H- EEL6 IOIPSL/src tag ipsl_cm4_v1_9_1 246 305 #-M- EEL6 opatlod@lodyc.jussieu.fr 247 #-C- EEL6 IOIPSL/src OPA/SRC_ORCA UTIL/fait_AA_makeCONFIG/EEL6248 #-T- EEL6 ipsl_cm4_v1_9_1 ipsl_cm4_v1_6 ipsl_cm4_v1_8 ?249 #-I- EEL6 1 4 44250 #-D- EEL6 . . .EEL6306 #-C- EEL6 IOIPSL/src OPA/SRC_ORCA UTIL/fait_AA_make CONFIG/EEL6 307 #-T- EEL6 ipsl_cm4_v1_9_1 ipsl_cm4_v1_6 ipsl_cm4_v1_8 ? 308 #-I- EEL6 1 4 4 4 309 #-D- EEL6 . . . EEL6 251 310 #- 252 311 #-H- EEL6_LOBSTER1 EEL6_LOBSTER1 configuration, EEL6+tracers - no ice model … … 254 313 #-H- EEL6_LOBSTER1 IOIPSL/src tag ipsl_cm4_v1_9_1 255 314 #-M- EEL6_LOBSTER1 opatlod@lodyc.jussieu.fr 256 #-C- EEL6_LOBSTER1 IOIPSL/src OPA/SRC_ORCA OPA/SRC_TRC UTIL/fait_AA_makeCONFIG/EEL6_LOBSTER1257 #-T- EEL6_LOBSTER1 ipsl_cm4_v1_9_1 ipsl_cm4_v1_6 ipsl_cm4_v1_6 ipsl_cm4_v1_8 ?258 #-I- EEL6_LOBSTER1 1 4 4 44259 #-D- EEL6_LOBSTER1 . . . .EEL6_LOBSTER1315 #-C- EEL6_LOBSTER1 IOIPSL/src OPA/SRC_ORCA OPA/SRC_TRC UTIL/fait_AA_make CONFIG/EEL6_LOBSTER1 316 #-T- EEL6_LOBSTER1 ipsl_cm4_v1_9_1 ipsl_cm4_v1_6 ipsl_cm4_v1_6 ipsl_cm4_v1_8 ? 317 #-I- EEL6_LOBSTER1 1 4 4 4 4 318 #-D- EEL6_LOBSTER1 . . . . EEL6_LOBSTER1 260 319 #- 261 320 #-M- TOY foujols@ipsl.jussieu.fr … … 267 326 #-H- ORCA_TOYATM Modele couple ORCA4 - TOYATM 268 327 #-H- ORCA_TOYATM ORCA tag ipsl_cm4_v1_10 269 #-H- ORCA_TOYATM IOIPSL/src tag Head328 #-H- ORCA_TOYATM IOIPSL/src tag ioipsl-2-1 270 329 #-H- ORCA_TOYATM ORCA_TOYATM configuration with OASIS3 coupler 06/2005 271 330 #-M- ORCA_TOYATM arnaud.caubel@cea.fr 272 #-C- ORCA_TOYATM IOIPSL/src OASIS3 TOY/ATM ORCA_TOYATM OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 273 #-T- ORCA_TOYATM ? ? ? ? ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_8 274 #-I- ORCA_TOYATM 1 1 1 1 4 4 4 275 #-D- ORCA_TOYATM . prism TOYATM . . . . 276 #-L- ORCA_TOYATM modeles . modeles config modeles modeles modeles 277 278 279 280 281 282 283 284 285 331 #-C- ORCA_TOYATM IOIPSL/src OASIS3 TOY/ATM ORCA_TOYATM OPA/SRC_ORCA OPA/SRC_UCL UTIL/fait_AA_make 332 #-T- ORCA_TOYATM ioipsl-2-1 ? ? ? ipsl_cm4_v1_10 ipsl_cm4_v1_10 ipsl_cm4_v1_8 333 #-I- ORCA_TOYATM 1 1 1 1 4 4 4 334 #-D- ORCA_TOYATM . prism TOYATM . . . . 335 #-L- ORCA_TOYATM modeles . modeles config modeles modeles modeles 336 #- 337 #-H- SVNNEMO NEMO source only 338 #-M- SVNNEMO opatlod@lodyc.jussieu.fr 339 #-C- SVNNEMO trunk/NEMO 340 #-T- SVNNEMO ? 341 #-I- SVNNEMO 7 342 #-D- SVNNEMO . 343 #- 344 #-H- NEMOSVN NEMO 345 #-H- NEMOSVN OPA 346 #-H- NEMOSVN LIM 347 #-H- NEMOSVN TOP 348 #-H- NEMOSVN IOIPSL/src tag ioipsl-3-1 349 #-H- NEMOSVN NEMO sources and configurations 350 #-M- NEMOSVN opatlod@lodyc.jussieu.fr 351 #-C- NEMOSVN IOIPSL/src trunk/AGRIF trunk/NEMO trunk/UTIL trunk/CONFIG/GYRE trunk/CONFIG/ORCA2_LIM 352 #-T- NEMOSVN ioipsl-3-1 ? 585 544 590 590 353 #-I- NEMOSVN 1 7 7 7 7 7 354 #-D- NEMOSVN . . . . GYRE ORCA2_LIM 355 #-L- NEMOSVN modeles modeles modeles modeles config config 356 #- -
modipsl/trunk/util/model
r2 r12 1 1 #!/bin/ksh 2 #- $Id : model,v 2.8 2005/06/17 11:43:38 adm Exp$2 #- $Id$ 3 3 #--------------------------------------------------------------------- 4 # @(#)Actions relatives aux modeles IPSL4 # @(#)Actions concerning IPSL models 5 5 #--------------------------------------------------------------------- 6 #-7 6 #set -xv 8 7 MAIL_ADDRESS=patricia.cadule@ipsl.jussieu.fr 9 8 MAIL_COM=mail 10 9 #MAIL_COM=Mail 11 #--- ---------------------------------------------------------12 #- D ecomposition du nom d'appel de la procedure (d_n/b_n) ---13 #--- ---------------------------------------------------------14 d_n=$ (dirname $0); b_n=$(basename $0);15 #--- -----------------------------------16 #- Saisie et validation des options ---17 #--- -----------------------------------18 m_n=""; m_a=""; m_v='silencious'; no_tag='false'; 10 #--- 11 #- Dirname and Basename 12 #--- 13 d_n=${0%/*}; b_n=${0##*/}; 14 #--- 15 #- Retrieve and validate the options 16 #--- 17 m_n=""; m_a=""; m_v='silencious'; no_tag='false'; 19 18 while getopts :heudrvH V 20 19 do … … 34 33 done 35 34 shift $(($OPTIND-1)); 36 case ${m_a} in 37 ( checkout | update | diff | remove ) ;; 38 ("") m_a='checkout';; 39 esac 40 #----------------------------- 41 #- Saisie du nom du modele --- 42 #----------------------------- 43 if [ ${#} -gt 1 ]; then 44 echo 'Only one model can be specified' 1>&2; 45 exit 3; 46 elif [ ${#} -eq 1 ]; then 47 m_n="${1}"; 48 elif [ ${m_a} != 'help' ]; then 35 #--- 36 #- Validate the action 37 #--- 38 [[ -z "${m_a}" ]] && { m_a='checkout'; } 39 [[ ${m_a} = help || ${m_a} = checkout || ${m_a} = update || \ 40 ${m_a} = diff || ${m_a} = remove ]] || \ 41 { echo 'Action '"${m_a}"' not supported' 1>&2; exit 4; } 42 #--- 43 #- Retrieve the model name 44 #--- 45 [[ ${#} -gt 1 ]] && \ 46 { echo 'Only one model can be specified' 1>&2; exit 3; } 47 [[ ${#} -eq 1 ]] && { m_n="${1}"; } 48 [[ ${m_a} != 'help' && -z ${m_n} ]] && \ 49 { 49 50 echo 'Model not specified' 1>&2; 50 51 echo 'Try "'${b_n}' -h [model-name]"' 1>&2; 51 52 exit 3; 52 fi 53 #--- --------------------------------------------54 #- Test d'existence du fichier de definition ---55 #--- --------------------------------------------53 } 54 #--- 55 #- Test of presence of the definition file 56 #--- 56 57 F_DEF=${d_n}'/mod.def' 57 [ ! -f "${F_DEF}" ] && { echo "${F_DEF} unreachable ..."; exit 3; } 58 #----------------------------------------------- 59 #- Extraction des noms des modeles supportes --- 60 #----------------------------------------------- 61 QQQ=$(sed -n -e "s/^#-C- *\([^ ]*\).*$/\1/p" ${F_DEF}); 62 qi=0; for i in ${QQQ}; do ((qi=qi+1)); m_x[qi]=${i}; done 63 #------------------------------------------------------------- 64 #- Validation du nom du modele et saisie des informations --- 65 #------------------------------------------------------------- 66 [ '\?'"${m_n}" != '\?' ] && \ 58 [[ ! -f "${F_DEF}" ]] && { echo "${F_DEF} unreachable ..."; exit 3; } 59 #--- 60 #- Extract the names of the supported models 61 #--- 62 qi=0; 63 while read v0 v1 v2 64 do 65 [[ -n "${v0}" && "${v0}" = '#-C-' ]] && \ 66 { ((qi=qi+1)); m_x[${qi}]=${v1}; } 67 done <${F_DEF} 68 unset v0 v1 v2; 69 #--- 70 #- Model name validation and data retrieving 71 #--- 72 [[ -n "${m_n}" ]] && \ 67 73 { 74 #- Validate the model name 68 75 i_m=-1; 69 76 qi=0; while (( ${qi} < ${#m_x[@]} )) 70 77 do 71 78 ((qi=qi+1)); 72 [ ${m_n} = ${m_x[qi]}] && { i_m=${qi}; break; };79 [[ ${m_n} = ${m_x[${qi}]} ]] && { i_m=${qi}; break; }; 73 80 done 74 81 (( ${i_m} < 0 )) && \ 75 82 { echo 'Model '"${m_n}"' unknown' 1>&2; 76 echo 'Try "'${b_n}' -h"' 1>&2; 77 exit 3; } 78 #- Recherche de l'adresse email a qui envoyer les infos 79 QQQ=$(sed -n -e "s/^#-M- *${m_n} *//p" ${F_DEF}); 80 [ '\?'"${QQQ}" = '\?' ] && \ 81 { echo 'Address mail not found for '${m_n}; exit 3; } 82 m_m=${QQQ} 83 #- Recherche des composants 84 QQQ=$(sed -n -e "s/^#-C- *${m_n} *//p" ${F_DEF}); 85 [ '\?'"${QQQ}" = '\?' ] && \ 86 { echo 'Components not found for '${m_n}; exit 3; } 87 qi=0; for i in ${QQQ}; do ((qi=qi+1)); m_c[qi]=${i}; done 88 #- Recherche des tags 89 QQQ=$(sed -n -e "s/^#-T- *${m_n} *//p" ${F_DEF}); 90 [ '\?'"${QQQ}" = '\?' ] && \ 91 { echo 'Tags not found for '${m_n}; exit 3; } 92 qi=0; for i in ${QQQ} 93 do 94 ((qi=qi+1)); 95 if [ ${no_tag} = 'false' ]; then 96 m_t[qi]=${i}; 97 else 98 m_t[qi]='?' 99 fi 100 done 101 #- Recherche des serveurs CVS 102 QQQ=$(sed -n -e "s/^#-I- *${m_n} *//p" ${F_DEF}); 103 [ '\?'"${QQQ}" = '\?' ] && \ 104 { echo 'Indexes not found for '${m_n}; exit 3; } 105 qi=0; for i in ${QQQ} 83 echo 'Try "'${b_n}' -h"' 1>&2; exit 3; } 84 #- Extract the repository informations 85 #- ( index, repository system, servers address ) 86 while read v0 v1 v2 v3 106 87 do 107 ((qi=qi+1)); 108 QQS=$(sed -n -e "s/^#-S- *${i} *//p" ${F_DEF}); 109 [ '\?'"${QQS}" = '\?' ] && \ 110 { echo 'Server number '${i}' not found'; exit 3; } 111 m_s[qi]=${QQS}; 112 done 113 #- Recherche des directories 114 QQQ=$(sed -n -e "s/^#-D- *${m_n} *//p" ${F_DEF}); 115 [ '\?'"${QQQ}" = '\?' ] && \ 88 [[ -n "${v0}" && "${v0}" = '#-S-' ]] && \ 89 { r_p[${v1}]=${v2}; r_s[${v1}]=${v3}; } 90 done <${F_DEF} 91 unset v0 v1 v2 v3; 92 #- Extract the model informations 93 while read v0 v1 v2 94 do 95 [[ -n "${v1}" && "${v1}" = "${m_n}" ]] && \ 96 { 97 #- model manager email address 98 [[ "${v0}" = '#-M-' ]] && { m_m=${v2}; continue; } 99 #- model components 100 [[ "${v0}" = '#-C-' ]] && \ 101 { 102 qi=0; 103 for i in ${v2}; do ((qi=qi+1)); m_c[${qi}]=${i}; done; 104 continue; 105 } 106 #- model tags 107 [[ "${v0}" = '#-T-' ]] && \ 108 { 109 qi=0; 110 for i in ${v2} 111 do 112 ((qi=qi+1)); 113 [[ ${no_tag} = 'false' ]] && \ 114 { m_t[${qi}]=${i}; } || \ 115 { m_t[${qi}]='?'; } 116 done 117 continue; 118 } 119 #- model repository information indexes 120 [[ "${v0}" = '#-I-' ]] && \ 121 { 122 qi=0; 123 for i in ${v2} 124 do 125 ((qi=qi+1)); 126 m_p[${qi}]=${r_p[${i}]}; 127 [[ ${m_p[${qi}]} = svn || ${m_p[${qi}]} = cvs ]] || \ 128 { 129 echo 'System '"${m_p[${qi}]}"' not supported' 1>&2; 130 exit 3; 131 } 132 m_s[${qi}]=${r_s[${i}]}; 133 [[ -z "${m_s[${qi}]}" ]] && \ 134 { 135 echo 'Server '${i}' not found for '${m_n}; 136 exit 3; 137 } 138 done 139 continue; 140 } 141 #- model installation directories 142 [[ "${v0}" = '#-D-' ]] && \ 143 { 144 qi=0; 145 for i in ${v2}; 146 do 147 ((qi=qi+1)); 148 m_d[${qi}]=${i}; 149 [[ -z "${m_l[${qi}]}" ]] && { m_l[${qi}]="modeles"; } 150 done 151 continue; 152 } 153 #- model working local directories 154 [[ "${v0}" = '#-L-' ]] && \ 155 { 156 qi=0; 157 for i in ${v2}; 158 do 159 ((qi=qi+1)); 160 m_l[${qi}]=${i}; 161 done 162 continue; 163 } 164 } 165 done <${F_DEF} 166 unset v0 v1 v2 167 #- Validate the model informations 168 #- model manager email address 169 [[ -z "${m_m}" ]] && \ 170 { echo 'Manager email address not found for '${m_n}; exit 3; } 171 #- model components 172 [[ ${#m_c[@]} = 0 ]] && \ 173 { echo 'Components not found for '${m_n}; exit 3; } 174 #- model tags 175 [[ ${#m_t[@]} = 0 ]] && \ 176 { echo 'Tags not found for '${m_n}; exit 3; } 177 #- model repository information indexes 178 [[ ${#m_p[@]} = 0 || ${#m_s[@]} = 0 ]] && \ 179 { echo 'Indexes not found for '${m_n}; exit 3; } 180 #- model installation directories 181 [[ ${#m_d[@]} = 0 ]] && \ 116 182 { echo 'Target Directories not found for '${m_n}; exit 3; } 117 qi=0; for i in ${QQQ}; do ((qi=qi+1)); m_d[qi]=${i}; m_l[qi]="modeles"; done 118 #- Recherche des local directories 119 QQQ=$(sed -n -e "s/^#-L- *${m_n} *//p" ${F_DEF}); 120 [ '\?'"${QQQ}" = '\?' ] || \ 121 qi=0; for i in ${QQQ}; do ((qi=qi+1)); m_l[qi]=${i}; done 183 #- model working local directories 184 # N/A 122 185 } 123 #--- -------------------------------------------------------------124 # envoi d'un mail si c'est la premiere fois qu on utilisemodipsl125 # ie directory ~/.modipsl donot exist126 #--- -------------------------------------------------------------186 #--- 187 #- send an email at the first use of modipsl 188 #- ie directory ~/.modipsl does not exist 189 #--- 127 190 D_LOG=${HOME}/.modipsl 128 [ -d "${D_LOG}" ] || { mkdir "${D_LOG}" ; echo `date +"%D %T"` `whoami` `uname -m` first usage of model | ${MAIL_COM} -s "first usage of modipsl" ${MAIL_ADDRESS} >/dev/null 2>&1 ; echo `date +"%D %T"` creation >"${D_LOG}"/first ; } 129 #-------------------------- 130 #- Traitement du "help" --- 131 #-------------------------- 132 if [ ${m_a} = 'help' ]; then 191 [[ -d "${D_LOG}" ]] || \ 192 { 193 mkdir "${D_LOG}"; 194 echo $(date +"%D %T") $(whoami) $(uname -m) \ 195 first use of model | \ 196 ${MAIL_COM} -s "first use of modipsl" \ 197 ${MAIL_ADDRESS} >/dev/null 2>&1; 198 echo $(date +"%D %T") creation >"${D_LOG}"/first; 199 } 200 #--- 201 #- "help" action 202 #--- 203 [[ ${m_a} = 'help' ]] && \ 204 { 133 205 echo ' '; 134 if [ '\?'"${m_n}" = '\?' ]; then 206 if [ -z "${m_n}" ]; then 207 echo ${b_n} 'extracts the components of a model'; 208 echo ' '; 135 209 echo 'Usage :'; 136 210 echo ${b_n} '[-h]'; … … 140 214 echo 'h model-name : help on model'; 141 215 echo 'e/u/d/r : extract/update/diff/remove model'; 142 echo 'H : suppres es the tags and takesthe HEAD version';216 echo 'H : suppress the tags and take the HEAD version'; 143 217 echo 'v : verbose mode'; 144 218 echo 'Defaults : -e'; … … 146 220 echo 'model_name in :'; 147 221 qi=0; while (( ${qi} < ${#m_x[@]} )); 148 do ((qi=qi+1)); echo ${m_x[ qi]}; done222 do ((qi=qi+1)); echo ${m_x[${qi}]}; done 149 223 else 150 echo ' Modele: '${m_n};224 echo 'model : '${m_n}; 151 225 echo ' '; 152 sed -n -e "s/^#-H- *${m_n} *//p" ${F_DEF}; 226 while read v0 v1 v2 227 do 228 [[ -n "${v0}" && "${v0}" = '#-H-' && \ 229 -n "${v1}" && "${v1}" = "${m_n}" ]] && { echo ${v2}; } 230 done <${F_DEF} 231 unset v0 v1 v2; 232 echo ' '; 233 echo 'model manager email address : '${m_m}; 153 234 echo ' '; 154 235 qi=0; while (( ${qi} < ${#m_c[@]} )) 155 236 do 156 237 ((qi=qi+1)); 157 echo 'Component '${qi}' : '${m_c[qi]}; 158 echo 'Tag '${qi}' : '${m_t[qi]}; 159 echo 'Server '${qi}' : '${m_s[qi]}; 160 echo 'Directory '${qi}' : '${m_d[qi]}; 161 echo 'Local Dir '${qi}' : '${m_l[qi]}; 238 echo 'Component '${qi}' : '${m_c[${qi}]}; 239 echo 'Tag '${qi}' : '${m_t[${qi}]}; 240 echo 'System '${qi}' : '${m_p[${qi}]}; 241 echo 'Server '${qi}' : '${m_s[${qi}]}; 242 echo 'Directory '${qi}' : '${m_d[${qi}]}; 243 echo 'Local Dir '${qi}' : '${m_l[${qi}]}; 162 244 done 163 245 fi 164 246 echo ' '; 165 247 exit 0; 166 fi 167 #--- -------------------------------------------------------168 # enregistrement de la commande dans une log169 #--- -------------------------------------------------------248 } 249 #--- 250 #- Record information about the action in the "log" file 251 #--- 170 252 F_LOG=${d_n}'/log' 171 253 echo "${F_LOG}" 172 echo `date +"%D %T"`$0 $* >>"${F_LOG}"173 #--- ----------174 #- V ERBOSE ---175 #--- ----------254 echo $(date +"%D %T") $0 $* >>"${F_LOG}" 255 #--- 256 #- Verbose mode 257 #--- 176 258 [ ${m_v} = 'verbose' ] && \ 177 259 { echo '--- Model : '${m_n}; 178 260 echo '--- Action : '${m_a}; 179 261 echo '--- Mode : '${m_v}; } 180 #--- ------------------------------------------181 #- record in F_LOG file model information ---182 #--- ------------------------------------------262 #--- 263 #- Record information about the action in the "log" file 264 #--- 183 265 { echo '--- Model : '${m_n}; 184 266 echo '--- Action : '${m_a}; 185 echo '--- Mode : '${m_v}; 267 echo '--- Mode : '${m_v}; 186 268 echo '--- Mail address : '${m_m}; } >>"${F_LOG}" 187 #----------------------------------------- 188 #- Repertoire d'accueil des composants --- 189 #----------------------------------------- 190 ###d_m=${d_n}'/../modeles'; 191 d_m=${d_n}'/../'; 192 #-------------------------------------------------------------------- 193 #- Envoi d'un mail la premiere fois qu on appelle model de ce modele 194 #- ie file ~/.modipsl/log.${m_n} 195 #-------------------------------------------------------------------- 269 #--- 270 #- Components root directory 271 #--- 272 d_m=${d_n}'/..'; 273 #--- 274 #- send an email at the first use of this IPSL model 275 #- ie file ~/.modipsl/log.${m_n} does not exist 276 #--- 196 277 M_LOG=${D_LOG}/log.${m_n} 197 [ -f "${M_LOG}" ] || { echo `date +"%D %T"` `whoami` `uname -m` first usage of model ${m_n} | ${MAIL_COM} -s "first usage of model ${m_n}" ${m_m} >/dev/null 2>&1 ; echo `date +"%D %T"` model ${m_n} >"${M_LOG}" ; } 198 #------------------------------- 199 #- Extraction des composants --- 200 #------------------------------- 278 [[ -f "${M_LOG}" ]] || \ 279 { 280 echo $(date +"%D %T") $(whoami) $(uname -m) \ 281 first usage of model ${m_n} | \ 282 ${MAIL_COM} -s "first usage of model ${m_n}" \ 283 ${m_m} >/dev/null 2>&1; 284 echo $(date +"%D %T") model ${m_n} >"${M_LOG}"; 285 } 286 #--- 287 #- Extract the model components 288 #--- 201 289 qi=0; while (( ${qi} < ${#m_c[@]} )) 202 290 do 203 ((qi=qi+1)); zc=${m_c[qi]}; zt=${m_t[qi]}; zs=${m_s[qi]}; zd=${m_d[qi]}; zl=${m_l[qi]}; 204 [ ${m_v} = 'verbose' ] && \ 291 ((qi=qi+1)); 292 zc=${m_c[${qi}]}; zt=${m_t[${qi}]}; 293 zp=${m_p[${qi}]}; zs=${m_s[${qi}]}; 294 zd=${m_d[${qi}]}; zl=${m_l[${qi}]}; 295 [[ ${m_v} = 'verbose' ]] && \ 205 296 { echo '---'; 206 297 echo '--- Component : '${zc}; 207 298 echo '--- Tag : '${zt}; 208 echo '--- CVS Server : '${zs}; 209 echo '--- Directory : '${zd}; 299 echo '--- System : '${zp}; 300 echo '--- Server : '${zs}; 301 echo '--- Directory : '${zd}; 210 302 echo '--- Local Dir : '${zl}; } 211 #--- ------------------------------------------212 #- record in F_LOG file model information ---213 #--- ------------------------------------------303 #--- 304 #- Record information about the action in the "log" file 305 #--- 214 306 { echo '---'; 215 307 echo '--- Component : '${zc}; 216 308 echo '--- Tag : '${zt}; 217 echo '--- CVS Server : '${zs}; 218 echo '--- Directory : '${zd}; 309 echo '--- System : '${zp}; 310 echo '--- Server : '${zs}; 311 echo '--- Directory : '${zd}; 219 312 echo '--- Local Dir : '${zl}; } >>"${F_LOG}" 220 case ${m_a} in 221 ( checkout | update | diff ) 222 c_c='(cd '${d_m}/${zl}'; cvs -d :pserver:'${zs}' '${m_a}; 223 [ ${m_a} = 'checkout' -a ${zt} != '?' ] && \ 224 { c_c=${c_c}' -r '${zt}; } 225 [ ${m_a} = 'checkout' -a ${zd} != '.' ] && \ 226 { c_c=${c_c}' -d '${zd}; } 227 c_c=${c_c}' '${zc}')';; 228 ( remove ) 229 c_c='(cd '${d_m}/${zl}'; rm -rf '${zc}')';; 230 (*) 231 echo 'Action '"${m_a}"' not supported' 1>&2; 232 exit 4;; 233 esac 234 grep "${zs%%/*}"'.*/'"${zs#*/}" ~/.cvspass > /dev/null; 235 if [ ${?} != 0 ]; then 236 c_z='cvs -d :pserver:'${zs}' login'; 237 [ ${m_v} = 'verbose' ] && { echo ${c_z}; } 238 eval ${c_z}; 239 fi 240 [ ${m_v} = 'verbose' ] && { echo '--- Command : '${c_c}; } 313 #--- 314 [[ ${zp} = 'cvs' ]] && \ 315 { 316 case ${m_a} in 317 ( checkout | update | diff ) 318 c_c='(cd '${d_m}/${zl}'; '${zp}' -d :pserver:'${zs}' '${m_a}; 319 [[ ${m_a} = 'checkout' && ${zt} != '?' ]] && \ 320 { c_c=${c_c}' -r '${zt}; } 321 [[ ${m_a} = 'checkout' && ${zd} != '.' ]] && \ 322 { c_c=${c_c}' -d '${zd}; } 323 c_c=${c_c}' '${zc}')';; 324 ( remove ) 325 c_c='(cd '${d_m}/${zl}'; rm -rf '${zc}')';; 326 esac 327 grep "${zs%%/*}"'.*/'"${zs#*/}" ~/.cvspass > /dev/null; 328 [[ ${?} != 0 ]] && \ 329 { 330 c_z='cvs -d :pserver:'${zs}' login'; 331 [[ ${m_v} = 'verbose' ]] && { echo ${c_z}; } 332 eval ${c_z}; 333 } 334 } 335 #--- 336 [[ ${zp} = 'svn' ]] && \ 337 { 338 case ${m_a} in 339 ( checkout | update | diff ) 340 c_c='(cd '${d_m}/${zl}'; '${zp}' '${m_a}; 341 [[ ${m_a} = 'checkout' && ${zt} != '?' ]] && \ 342 { c_c=${c_c}' -r '${zt}; } 343 c_c=${c_c}' '${zs}'/'${zc}; 344 [[ ${m_a} = 'checkout' && ${zd} != '.' ]] && \ 345 { c_c=${c_c}' '${zd}; } 346 c_c=${c_c}')';; 347 ( remove ) 348 c_c='(cd '${d_m}/${zl}'; rm -rf '${zc##*/}')';; 349 esac 350 } 351 #--- 352 [[ ${m_v} = 'verbose' ]] && { echo '--- Command : '${c_c}; } 241 353 eval ${c_c}; 242 354 done 243 #--- -----------------------------------------------------244 #- Traitement du repertoire WORK pour les modeles OPA ---245 #--- -----------------------------------------------------355 #--- 356 #- Actions related to the WORK directory for the OPA models 357 #--- 246 358 case ${m_n} in 247 ( EEL* | ORCA* | OFF_TRC | IPSLCM* | ORCA_TOYATM | NEMO_ORCA2_LIM | GYRE ) 359 ( EEL* | ORCA* | OFF_TRC | IPSLCM* | ORCA_TOYATM | \ 360 NEMO_ORCA2_LIM | GYRE ) 248 361 d_m1=${d_m}/modeles/OPA ; 249 362 [ ${m_a} = 'checkout' -o ${m_a} = 'remove' ] && … … 252 365 { 253 366 [ -d ${d_m1}/WORK ] || mkdir ${d_m1}/WORK; 254 cd ${d_m1}/WORK; 367 cd ${d_m1}/WORK; 255 368 # Getting the configuration files to build the Makefile 256 ln -sf ../../../*/${m_n}/scripts/BB_make AA_make ;369 ln -sf ../../../*/${m_n}/scripts/BB_make AA_make; 257 370 ln -sf ../../../*/${m_n}/scripts/BB_make.ldef AA_make.ldef ; 258 371 case ${m_n} in … … 266 379 ln -sf ../SRC_ORCA/*.[Ffh] .;; 267 380 ( ORCA*LIM | IPSLCM* | ORCA_TOYATM | ORCA*LMD* ) 268 [ "${m_n}" = "IPSLCM4_LOOP" ] && echo " Creation du catalogue OPA/WORK = ORCA + LIM + TRC" || echo " Creation du catalogue OPA/WORK = ORCA + LIM" 381 [ "${m_n}" = "IPSLCM4_LOOP" ] && \ 382 echo " Creation du catalogue OPA/WORK = ORCA + LIM + TRC" || \ 383 echo " Creation du catalogue OPA/WORK = ORCA + LIM" 269 384 ln -sf ../SRC_ORCA/*.[Ffh] . 270 385 [ "${m_n}" = "IPSLCM4_LOOP" ] && \rm *.passivetrc.h 271 [ "${m_n}" = "IPSLCM4_LOOP" ] && ln -sf ../SRC_TRC/*.[Ffh] ../SRC_TRC/trc_sms/*.[Ffh] . 386 [ "${m_n}" = "IPSLCM4_LOOP" ] && \ 387 ln -sf ../SRC_TRC/*.[Ffh] ../SRC_TRC/trc_sms/*.[Ffh] . 272 388 ln -sf ../SRC_UCL/[a-z]* .;; 273 389 ( ORCA*_LIM_TRC ) … … 288 404 esac 289 405 # Building the standard list of source files 290 cat >.patron <<"EOF" 406 cat >.patron <<"EOF" 291 407 CVS 292 408 SRC_PARAM … … 307 423 thersf.f 308 424 EOF 309 ls -1 | fgrep -v -f .patron >SRC_FILE_LIST ; cp SRC_FILE_LIST SRC_FILE_LIST.temp ; 425 ls -1 | fgrep -v -f .patron >SRC_FILE_LIST; 426 cp SRC_FILE_LIST SRC_FILE_LIST.temp; 310 427 # 311 428 KEY=$(grep P_P AA_make.ldef); … … 313 430 };; 314 431 esac 315 #--- ----------316 #- [EN]FIN ---317 #--- ----------432 #--- 433 #- That's all folks 434 #--- 318 435 exit 0; -
modipsl/trunk/util/w_i_h
r2 r12 1 1 #!/bin/sh 2 # $Id : w_i_h,v 2.4 2006/01/18 05:59:17 adm Exp$2 # $Id$ 3 3 #--------------------------------------------------------------------- 4 4 #- w_i_h 04/10/1999 … … 43 43 fi; 44 44 elif [ "$USYS" = "IRIX64" ]; then 45 WSYS=`uname -n`; 46 if [ "$WSYS" = "rhodes" ]; then 47 DSYS="sxnec"; 48 else 49 DSYS="sgi6"; 50 fi; 45 DSYS="sgi6"; 51 46 elif [ "$USYS" = "Linux" ]; then 52 47 WSYS=`uname -n | sed -e "s/^\(asterix\)\(.*\)/\1/" \ … … 57 52 DSYS="lxiv8"; 58 53 elif [ "$WSYS" = "mercure" ]; then 59 DSYS="sx6nec"; 54 DSYS="sx8mercure"; 55 elif [ "$WSYS" = "brodie" ]; then 56 DSYS="sx8brodie"; 60 57 elif [ "$WSYS" = "ds" ]; then 61 58 DSYS="sxdkrz";
Note: See TracChangeset
for help on using the changeset viewer.