Fixed gen_all.bash bugs, changed style of installer script generation

This commit is contained in:
Jesse Gardner 2021-07-15 20:44:18 -07:00
parent 9326417d20
commit ccd56a62fc
4 changed files with 972 additions and 1005 deletions

View File

@ -1,5 +1,8 @@
#!/bin/bash #!/bin/bash
# Produce documentation from pandoc file, compile lv_api_do, and add tgz
# archives into the installer and main script
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
# Copyright 2021, Jesse Gardner # # Copyright 2021, Jesse Gardner #
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
@ -19,24 +22,28 @@
# along with qq2clone. If not, see <https://www.gnu.org/licenses/>. # # along with qq2clone. If not, see <https://www.gnu.org/licenses/>. #
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
# Generate all files that need to be generated
declare -a inst_arc_files=( qq2clone qq2clone.1 qq2clone_completion.bash ) declare -a req_files=( qq2clone_noarchive man.pandoc
declare -a req_files=( "${arc_files[@]}" inst_fragment.bash "lv_api_do.c" qq2clone_completion.bash qq2clone_installer_noarchive.bash "lv_api_do.c"
man.pandoc LICENSE) man.pandoc LICENSE)
# Check for required files # Check for required files
has_req=1 has_req=1
for file in "${req_files[@]}"; do for file in "${req_files[@]}"; do
if [[ ! -e "$file" ]]; then if [[ ! -e "$file" ]]; then
[[ "$file" == "lv_api_do" ]] && continue
has_req=0 has_req=0
echo "Current working directory missing file '$file'" echo "Current working directory missing file '$file'"
fi fi
done done
((has_req)) || exit 1 ((has_req)) || exit 1
# Generate manual from pandoc source in two formats
echo "Generating manual"
pandoc -s -f markdown -t markdown_strict -o man.md man.pandoc
pandoc -s -f markdown -t man -o qq2clone.1 man.pandoc
# Compile lv_api_do # Compile lv_api_do
echo "Compiling lv_api_do" echo "Compiling lv_api_do"
@ -53,46 +60,18 @@ while IFS= read -r line; do
echo "$line" echo "$line"
fi fi
done < qq2clone_noarchive > qq2clone done < qq2clone_noarchive > qq2clone
chmod +x qq2clone
# Generate installer # Generate installer
echo "Generating installer script" echo "Generating installer script"
{ while IFS= read -r line; do
echo "#!/bin/bash" if [[ "$line" == "#REPLACE WITH ARCHIVE#" ]]; then
echo
cat <<EOF
#------------------------------------------------------------------------#
# Copyright 2021, Jesse Gardner #
#------------------------------------------------------------------------#
# This file is part of qq2clone. #
# #
# qq2clone is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
# the Free Software Foundation, either version 2 of the License, or #
# (at your option) any later version. #
# #
# qq2clone is distributed in the hope that it will be useful, #
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
# GNU General Public License for more details. #
# #
# You should have received a copy of the GNU General Public License #
# along with qq2clone. If not, see <https://www.gnu.org/licenses/>. #
#------------------------------------------------------------------------#
EOF
echo
echo "# This script generated automatically by gen_installer.bash"
echo
echo "archive='" echo "archive='"
tar -cz "${inst_arc_files[@]}" | base64 tar -cz qq2clone qq2clone.1 qq2clone_completion.bash | base64
echo "'" echo "'"
echo else
cat inst_fragment.bash echo "$line"
} > qq2clone_installer.bash fi
done < qq2clone_installer_noarchive.bash > qq2clone_installer.bash
chmod +x qq2clone_installer.bash chmod +x qq2clone_installer.bash
# Generate manual from pandoc source in two formats
echo "Generating manual"
pandoc -s -f markdown -t markdown_strict -o man.md man.pandoc
pandoc -s -f markdown -t man -o qq2clone.1 man.pandoc

188
qq2clone
View File

@ -3333,100 +3333,100 @@ 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
AA== oAAA
' '
#-----------------# #-----------------#

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,7 @@
#!/bin/bash
# Installer script for qq2clone
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
# Copyright 2021, Jesse Gardner # # Copyright 2021, Jesse Gardner #
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
@ -17,7 +21,9 @@
# along with qq2clone. If not, see <https://www.gnu.org/licenses/>. # # along with qq2clone. If not, see <https://www.gnu.org/licenses/>. #
#------------------------------------------------------------------------# #------------------------------------------------------------------------#
# Tail end of the installer script, following the tar archive # base64 encoded tgz archive will be added by gen_all.bash in archive below
#REPLACE WITH ARCHIVE#
[[ -z "$HOME" ]] && [[ -z "$HOME" ]] &&
{ echo '$HOME must be defined'; exit 1; } { echo '$HOME must be defined'; exit 1; }