2016-05-12 14:08:58 +08:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
2017-10-07 19:45:20 +08:00
|
|
|
src_dir="src"
|
|
|
|
|
namespace_name="nut"
|
2016-05-12 14:08:58 +08:00
|
|
|
|
2019-06-18 21:40:40 +08:00
|
|
|
#ns=$(echo $namespace_name|awk '{print tolower($0)}')
|
2017-10-07 19:45:20 +08:00
|
|
|
Ns="Nut"
|
|
|
|
|
NS=$(echo $namespace_name|awk '{print toupper($0)}')
|
2019-06-18 21:40:40 +08:00
|
|
|
|
2016-05-12 14:08:58 +08:00
|
|
|
|
2017-10-07 19:45:20 +08:00
|
|
|
create_sub_folder=true
|
2016-05-12 14:08:58 +08:00
|
|
|
|
2017-10-07 19:45:20 +08:00
|
|
|
exec 3< <(egrep -o "class\s${NS}_EXPORT\s(\S+)" "../$src_dir" -R 2>&1)
|
|
|
|
|
|
|
|
|
|
pattern="\.\.\/$src_dir\/([a-z]+)\.h\:class\s${NS}_EXPORT\s(\w+)"
|
|
|
|
|
|
|
|
|
|
echo "" > "$Ns"
|
|
|
|
|
echo "" > "$ns.h"
|
|
|
|
|
|
|
|
|
|
if [[ -z create_sub_folder ]]; then
|
|
|
|
|
mkdir -p $Ns
|
|
|
|
|
fi
|
2017-02-01 18:01:21 +08:00
|
|
|
|
2016-05-12 14:08:58 +08:00
|
|
|
while read line; do
|
|
|
|
|
if [[ $line =~ $pattern ]]; then
|
|
|
|
|
header=${BASH_REMATCH[1]}
|
|
|
|
|
class=${BASH_REMATCH[2]}
|
|
|
|
|
|
2017-10-07 19:45:20 +08:00
|
|
|
echo "#include \"../$src_dir/$header.h\"" > $class
|
|
|
|
|
echo "#include \"../$src_dir/$header.h\"" > "$header.h"
|
|
|
|
|
|
|
|
|
|
if [[ -z create_sub_folder ]]; then
|
|
|
|
|
echo "#include \"../$src_dir/$header.h\"" > "$Ns/$class"
|
|
|
|
|
echo "#include \"../$src_dir/$header.h\"" > "$Ns/$header.h"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo "#include \"../$src_dir/$header.h\"" >> "$Ns"
|
|
|
|
|
echo "#include \"../$src_dir/$header.h\"" >> "$ns.h"
|
2016-05-12 14:08:58 +08:00
|
|
|
fi
|
2019-06-19 00:11:14 +08:00
|
|
|
echo $Ns
|
2016-05-12 14:08:58 +08:00
|
|
|
done <&3
|
|
|
|
|
exec 3<&-
|