1 | #!/bin/bash |
---|
2 | ###################################################### |
---|
3 | # Author : Simona Flavoni for NEMO |
---|
4 | # Contact : sflod@locean-ipsl.upmc.fr |
---|
5 | # |
---|
6 | # Some functions called from makenemo |
---|
7 | # Fdel_keys : del keys in cpp.fcm file |
---|
8 | ###################################################### |
---|
9 | #set -x |
---|
10 | set -o posix |
---|
11 | #set -u |
---|
12 | #set -e |
---|
13 | #+ |
---|
14 | # |
---|
15 | # ================ |
---|
16 | # Fdel_keys.sh |
---|
17 | # ================ |
---|
18 | # |
---|
19 | # -------------------------- |
---|
20 | # Add compilation keys |
---|
21 | # -------------------------- |
---|
22 | # |
---|
23 | # SYNOPSIS |
---|
24 | # ======== |
---|
25 | # |
---|
26 | # :: |
---|
27 | # |
---|
28 | # $ Fdel_keys.sh CONFIG_NAME del_key "LIST_KEYS" |
---|
29 | # |
---|
30 | # |
---|
31 | # DESCRIPTION |
---|
32 | # =========== |
---|
33 | # |
---|
34 | # |
---|
35 | # Add cpp keys when compiling a configuration, key list has to be enclosed with " ". |
---|
36 | # We perform a 'sed' on the CONFIG_NAME/CPP.fcm file, containing the list of keys. |
---|
37 | # |
---|
38 | # EXAMPLES |
---|
39 | # ======== |
---|
40 | # |
---|
41 | # :: |
---|
42 | # |
---|
43 | # $ ./Fdel_keys.sh CONFIG_NAME del_key "key_agrif" |
---|
44 | # |
---|
45 | # |
---|
46 | # TODO |
---|
47 | # ==== |
---|
48 | # |
---|
49 | # option debug |
---|
50 | # |
---|
51 | # |
---|
52 | # EVOLUTIONS |
---|
53 | # ========== |
---|
54 | # |
---|
55 | # $Id: Fdel_keys.sh 2158 2010-10-20 17:30:03Z sflod $ |
---|
56 | # |
---|
57 | # |
---|
58 | # |
---|
59 | # * creation |
---|
60 | # |
---|
61 | #- |
---|
62 | |
---|
63 | echo "Removing keys in : ${NEW_CONF}" |
---|
64 | |
---|
65 | for i in ${list_del_key} ; do |
---|
66 | |
---|
67 | if [ "$(echo ${i} | grep -c key_nproc )" -ne 0 ]; then |
---|
68 | sed -e "s/key_nproc[ij]=.* //" ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm \ |
---|
69 | > ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm.tmp |
---|
70 | mv ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm.tmp ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm |
---|
71 | echo " " |
---|
72 | elif [ "$(cat ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm | grep -c "$i" )" -ne 0 ]; then |
---|
73 | sed -e "s/\b${i}\b//" ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm \ |
---|
74 | > ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm.tmp |
---|
75 | mv ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm.tmp ${CONFIG_DIR}/${NEW_CONF}/cpp_${NEW_CONF}.fcm |
---|
76 | echo "deleted key $i in ${NEW_CONF}" |
---|
77 | fi |
---|
78 | |
---|
79 | done |
---|
80 | |
---|
81 | unset -v list_del_key |
---|