Salome HOME
set-up .gitignore file
[tools/hxx2salome.git] / scripts / SA_new_cpp_component
1 #!/bin/bash
2 # --
3 # Copyright (C) CEA, EDF
4 # Author : Nicolas Crouzet (CEA)
5 # --
6
7 usage()
8 {
9     echo
10     echo Usage :
11     echo
12     echo "  SA_new_cpp_component  Name"
13     echo
14     echo "  -> create the tree to compile a new C++ component linked with MED libs"
15     echo 
16     exit 1
17 }
18
19 rename_dir()
20 {
21     # Rename the first directory containing $oldName in their file name
22     liste=`find . -type d -name "*${oldName}*"`
23     for file in $liste
24     do
25         newFile=`echo $file | sed "s/${oldName}/${newName}/g"`
26         echo "mv -f $file $newFile"
27         mv -f $file $newFile
28         return 1
29     done
30     return 0
31 }
32
33 if [ $# -ne 1 ]
34 then
35    usage
36 fi
37
38 sa_new_cpp_component_root_dir=`dirname $0`
39 tar xvfz ${sa_new_cpp_component_root_dir}/cpp_compo_template.tgz
40 moduleName=${1}CPP_SRC
41 mv Cpp_Template__SRC ${moduleName}
42
43 oldName=Cpp_Template_
44 newName=$1
45
46 today=`date +%d%m%y`
47 cd ${moduleName}
48 echo
49 echo Renamed Directories:
50 echo
51
52 # rename directories one by one
53 rename_dir
54 while [ $? -eq 1 ]
55 do
56     rename_dir
57 done
58
59 # rename files containing ${oldName} in their name
60 echo
61 echo Renamed Files:
62 echo
63 liste=`find . -name "*${oldName}*"`
64 for file in $liste
65 do
66     newFile=`echo $file | sed "s/${oldName}/${newName}/g"`
67     echo "mv -f $file $newFile"
68     mv -f $file $newFile
69 done
70
71 echo
72 echo Modified Files:
73 echo
74 # modify all files containing $oldName, replace occurences by $newName
75 liste=`find -name "*"`
76 for file in $liste
77 do
78     if [ -f $file ]
79     then
80         grep $oldName $file > /dev/null 2>&1
81         if [ $? -eq 0 ]
82         then
83             echo $file
84             cat $file | sed "s/${oldName}/${newName}/g" > fic_temp_${today}
85             cp -f fic_temp_${today} $file
86         fi
87     fi
88 done
89 rm -f fic_temp_${today}
90 cd -