Nut/include/header_copier

43 lines
985 B
Plaintext
Raw Normal View History

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<&-