DevelopmentActivities/ORCHIDEE-CNP/LibIGCMmod01: libigcm_link.2.patch
File libigcm_link.2.patch, 4.8 KB (added by dgoll, 5 years ago) |
---|
-
libIGCM_comp/libIGCM_comp.ksh
21 21 IGCM_debug_Print 1 "IGCM_comp_Initialize" 22 22 echo 23 23 24 set -x 25 24 26 typeset comp compname comptagname auxprint card_UserChoices first_option option i j 25 27 for comp in ${config_ListOfComponents[*]} ; do 26 28 … … 315 317 IGCM_sys_Get ${file_in} ${file_out} 316 318 #IGCM_comp_PrepareDeletedFiles ${file_in} ${file_out} 317 319 else 318 IGCM_sys_Cp ${file_in} ${file_out} 320 IGCM_sys_Cp ${file_in} ${file_out} # original 321 #ln -s ${file_in} ${file_out} 319 322 fi 320 323 (( i=i+2 )) 321 324 done … … 454 457 { 455 458 IGCM_debug_PushStack "IGCM_comp_GetInputBoundaryFiles" 456 459 460 set -x 461 457 462 # Debug Print : 458 463 echo 459 464 IGCM_debug_Print 1 "IGCM_comp_GetInputBoundaryFiles" … … 465 470 if [ ${Period} = 1 ]; then 466 471 ListFixBoundary=" " 467 472 fi 473 474 # default: copy 475 mode="cp" 476 if [ ${#} -eq 1 ] 477 then 478 mode=${1} 479 fi 468 480 469 481 for comp in ${config_ListOfComponents[*]} ; do 470 482 … … 497 509 IGCM_sys_Get ${file_in} ${file_out} 498 510 IGCM_comp_PrepareDeletedFiles ${file_in} ${file_out} 499 511 else 500 IGCM_sys_Cp ${file_in} ${file_out} 512 #IGCM_sys_Cp ${file_in} ${file_out} 513 #ln -fs ${file_in} ${file_out} 514 IGCM_sys_file_Get ${mode} ${file_in} ${file_out} 501 515 fi 502 516 503 517 (( i=i+2 )) … … 527 541 IGCM_sys_Get ${file_in} ${file_out} 528 542 #IGCM_comp_PrepareDeletedFiles ${file_in} ${file_out} 529 543 else 530 IGCM_sys_Cp ${file_in} ${file_out} 544 #IGCM_sys_Cp ${file_in} ${file_out} 545 #ln -fs ${file_in} ${file_out} 546 IGCM_sys_file_Get ${mode} ${file_in} ${file_out} 531 547 fi 532 548 533 549 if [ X${file_out} != X. ] ; then … … 907 923 908 924 NbFiles=$( ls * 2> /dev/null | wc -l ) 909 925 if [ ${NbFiles} -gt 0 ] ; then 910 IGCM_sys_Chmod u+rw * 926 # IGCM_sys_Chmod u+rw * 927 # for fname in ls * 2> /dev/null; do 928 for fname in *; do 929 if [ ! -h ${fname} ]; then 930 echo "=> Chmod ${fname} ..." 931 IGCM_sys_Chmod u+rw ${fname} 932 fi 933 done 911 934 fi 912 935 913 936 IGCM_debug_PopStack "IGCM_comp_GetInputRestartFiles" … … 1387 1410 IGCM_debug_Print 1 "IGCM_comp_Update" 1388 1411 echo 1389 1412 1413 set -x 1414 1390 1415 typeset ExeNameIn ExeNameOut 1391 1416 typeset comp compname comptagname 1392 1417 for comp in ${config_ListOfComponents[*]} ; do -
libIGCM_sys/libIGCM_sys.ksh
469 469 } 470 470 471 471 #D-#================================================== 472 #D-function IGCM_sys_file_Get 473 #D-* Purpose: Copy or link a file from source to destination 474 #D-* Examples: IGCM_sys_file_Get ln source_file linked_file 475 #D- IGCM_sys_file_Get cp source_file copied_file 476 function IGCM_sys_file_Get { 477 IGCM_debug_PushStack "IGCM_sys_file_Get" $@ 478 479 typeset SRC DEST action 480 set -x 481 482 if ( $DEBUG_sys ) ; then 483 echo "IGCM_sys_file_Get :" $@ 484 fi 485 if [ $DRYRUN -le 2 ]; then 486 if [ X${1} = X'ln' ] ; then 487 action='IGCM_sys_Ln' 488 elif [ X${1} = X'cp' ] ; then 489 action='IGCM_sys_Cp' 490 else 491 echo "IGCM_sys_file_Get, ERROR : Only available ln or cp actions." 492 IGCM_debug_Exit "IGCM_sys_file_Get" 493 return 494 fi 495 SRC=${2} 496 DEST=${3} 497 498 cmd="${action} ${SRC} ${DEST}" 499 eval $cmd 500 fi 501 IGCM_debug_PopStack "IGCM_sys_file_Get" 502 } 503 504 #D-#================================================== 472 505 #D-function IGCM_sys_Miror_libIGCM 473 506 #D-* Purpose: Mirror libIGCM PATH and lib to frontend 474 507 #D-* Examples: … … 495 528 } 496 529 497 530 #D-#================================================== 531 #D-function IGCM_sys_Ln 532 #D-* Purpose: generic soft link 533 #D-* Examples: 534 #D- 535 function IGCM_sys_Ln { 536 IGCM_debug_PushStack "IGCM_sys_Ln" $@ 537 if ( $DEBUG_sys ) ; then 538 echo "IGCM_sys_Lp :" $@ 539 fi 540 541 typeset status 542 543 #echo ln -sf $@ > ${OUTCOMMAND_PATH}/out_command_${LOGIN}.$$ 2>&1 544 \ln -sf $@ >> ${OUTCOMMAND_PATH}/out_command_${LOGIN}.$$ 2>&1 545 status=$? 546 547 if [ ${status} -gt 0 ] ; then 548 echo "IGCM_sys_Ln : error code ${status}" 549 cat ${OUTCOMMAND_PATH}/out_command_${LOGIN}.$$ 550 IGCM_debug_Exit "IGCM_sys_Ln" 551 else 552 \rm ${OUTCOMMAND_PATH}/out_command_${LOGIN}.$$ 553 fi 554 IGCM_debug_PopStack "IGCM_sys_Ln" 555 } 556 557 #D-#================================================== 498 558 #D-function IGCM_sys_Cp 499 559 #D-* Purpose: generic cp 500 560 #D-* Examples: