4
0
mirror of https://github.com/QuasarApp/CMakeProject.git synced 2025-04-26 13:44:34 +00:00
CMakeProject/init.sh

63 lines
1.9 KiB
Bash
Raw Normal View History

2020-09-04 16:55:35 +03:00
#!/bin/sh
echo "Project name: $1"
if [ $# -ne 1 ]
then
echo "You call this script wtth wrong arguments."
echo "Example for start script:"
echo "./init.sh MyCmakeProject"
2023-08-29 22:34:08 +02:00
echo "Usage: $0 <replacement_string>"
2020-09-04 16:55:35 +03:00
exit 1
fi
2023-08-29 22:34:08 +02:00
replacement="$1"
rename_files_and_folders() {
local dir="$1"
local old_str="$2"
local new_str="$3"
for item in "$dir"/*; do
if [ -d "$item" ]; then
new_name=$(echo "$item" | sed "s/$old_str/$new_str/g")
if [ "$item" != "$new_name" ]; then
mv "$item" "$new_name"
echo "Renamed directory: $item -> $new_name"
fi
rename_files_and_folders "$new_name" "$old_str" "$new_str"
elif [ -f "$item" ]; then
sed -i "s/$old_str/$new_str/g" "$item"
new_name=$(echo "$item" | sed "s/$old_str/$new_str/g")
if [ "$item" != "$new_name" ]; then
mv "$item" "$new_name"
echo "Renamed file: $item -> $new_name"
fi
fi
done
}
uppercase_string=$(echo "$replacement" | tr '[:lower:]' '[:upper:]')
2020-09-04 16:55:35 +03:00
2023-08-29 22:34:08 +02:00
rename_files_and_folders "." "RENAME_ME_EXPORT" "${uppercase_string}_EXPORT"
rename_files_and_folders "." "RENAME_ME_VERSION" "${uppercase_string}_VERSION"
rename_files_and_folders "." "RENAME_ME_LIBRARY" "${uppercase_string}_LIBRARY"
rename_files_and_folders "." "RENAME_ME_EXAMPLE" "${uppercase_string}_EXAMPLE"
rename_files_and_folders "." "RENAME_ME_TESTS" "${uppercase_string}_TESTS"
rename_files_and_folders "." "RENAME_ME_PACKAGE_ID" "${uppercase_string}_PACKAGE_ID"
2020-09-04 16:55:35 +03:00
2023-08-29 22:34:08 +02:00
rename_files_and_folders "." "RENAME_ME" "$replacement"
2021-03-19 14:23:21 +03:00
2023-08-29 22:34:08 +02:00
echo "Replacement complete."
2021-04-04 20:37:20 +03:00
2020-09-04 16:55:35 +03:00
git config -f .gitmodules --get-regexp '^submodule\..*\.path$' |
while read path_key path
do
url_key=$(echo $path_key | sed 's/\.path/.url/')
url=$(git config -f .gitmodules --get "$url_key")
git submodule add $url $path
done