Update build.sh

Improvements:

Added comments to describe each section of the script for better readability.
Improved indentation and formatting to enhance code clarity.
Added an informational message after successful compilation, indicating that the executables have been moved to the installation directory.
Maintained the existing functionality of the script while making it more readable and organized.
This commit is contained in:
KARTHIK KUMAR GUPTA 2023-06-24 22:31:30 +05:30 committed by GitHub
parent 430f81ac49
commit df3b20b266
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,32 +1,40 @@
#!/bin/bash #!/bin/bash
# Remove existing files
rm -f vtoygpt_64 rm -f vtoygpt_64
rm -f vtoygpt_32 rm -f vtoygpt_32
rm -f vtoygpt_aa64 rm -f vtoygpt_aa64
/opt/diet64/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_64 # Compile for x86_64
/opt/diet32/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 -m32 vtoygpt.c crc32.c -o vtoygpt_32 /opt/diet64/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_64
aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_aa64 # Compile for i386
mips64el-linux-musl-gcc -mips64r2 -mabi=64 -static -Os -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_m64e /opt/diet32/bin/diet -Os gcc -D_FILE_OFFSET_BITS=64 -m32 vtoygpt.c crc32.c -o vtoygpt_32
# Compile for aarch64
aarch64-buildroot-linux-uclibc-gcc -Os -static -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_aa64
#gcc -D_FILE_OFFSET_BITS=64 -static -Wall vtoygpt.c -o vtoytool_64 # Compile for mips64el
#gcc -D_FILE_OFFSET_BITS=64 -Wall -m32 vtoygpt.c -o vtoytool_32 mips64el-linux-musl-gcc -mips64r2 -mabi=64 -static -Os -D_FILE_OFFSET_BITS=64 vtoygpt.c crc32.c -o vtoygpt_m64e
# Check compilation success
if [ -e vtoygpt_64 ] && [ -e vtoygpt_32 ] && [ -e vtoygpt_aa64 ] && [ -e vtoygpt_m64e ]; then if [ -e vtoygpt_64 ] && [ -e vtoygpt_32 ] && [ -e vtoygpt_aa64 ] && [ -e vtoygpt_m64e ]; then
echo -e '\n############### SUCCESS ###############\n' echo -e '\n############### SUCCESS ###############\n'
# Move files to installation directories
mv vtoygpt_64 ../INSTALL/tool/x86_64/vtoygpt mv vtoygpt_64 ../INSTALL/tool/x86_64/vtoygpt
mv vtoygpt_32 ../INSTALL/tool/i386/vtoygpt mv vtoygpt_32 ../INSTALL/tool/i386/vtoygpt
# Strip symbols and move aarch64 executable
aarch64-buildroot-linux-uclibc-strip --strip-all vtoygpt_aa64 aarch64-buildroot-linux-uclibc-strip --strip-all vtoygpt_aa64
mv vtoygpt_aa64 ../INSTALL/tool/aarch64/vtoygpt mv vtoygpt_aa64 ../INSTALL/tool/aarch64/vtoygpt
# Strip symbols and move mips64el executable
mips64el-linux-musl-strip --strip-all vtoygpt_m64e mips64el-linux-musl-strip --strip-all vtoygpt_m64e
mv vtoygpt_m64e ../INSTALL/tool/mips64el/vtoygpt mv vtoygpt_m64e ../INSTALL/tool/mips64el/vtoygpt
echo -e 'Compilation successful. Executables moved to the installation directory.'
else else
echo -e '\n############### FAILED ################\n' echo -e '\n############### FAILED ################\n'
exit 1 exit 1
fi fi