Merge pull request #48 from luckytyphlosion/master

Add helpful error checks for common user errors.
This commit is contained in:
luckytyphlosion 2022-01-07 18:18:10 -05:00 committed by GitHub
commit a4417ead3c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 34 additions and 12 deletions

View File

@ -3,6 +3,12 @@ set -e
CCOPT=
CXXOPT=
# error if devkitarm is not installed and binutils-arm-none-eabi is not installed
if ! ([ -v DEVKITARM ] && [ -d "$DEVKITARM/bin" ]) && ! (command -v arm-none-eabi-as &> /dev/null && command -v arm-none-eabi-ar &> /dev/null) ; then
echo "Could not find a binutils installation! Re-read the instructions and make sure you've installed either devkitARM or binutils-arm-none-eabi, depending on your system."
exit 1
fi
if [ ! -z "$CC" ]; then CCOPT=CC=$CC; fi
if [ ! -z "$CXX" ]; then CXXOPT=CXX=$CXX; fi
make -C gcc clean

View File

@ -1,17 +1,33 @@
#!/bin/sh
set -e
if [ "$1" != "" ]; then
mkdir -p $1/tools/agbcc
mkdir -p $1/tools/agbcc/bin
mkdir -p $1/tools/agbcc/include
mkdir -p $1/tools/agbcc/lib
cp agbcc $1/tools/agbcc/bin/
cp old_agbcc $1/tools/agbcc/bin/
cp agbcc_arm $1/tools/agbcc/bin/
cp -R libc/include $1/tools/agbcc/ #drop include, because we don't want include/include
cp ginclude/* $1/tools/agbcc/include/
cp libgcc.a $1/tools/agbcc/lib/
cp libc.a $1/tools/agbcc/lib/
if [ -d "$1" ]; then
mkdir -p $1/tools/agbcc
mkdir -p $1/tools/agbcc/bin
mkdir -p $1/tools/agbcc/include
mkdir -p $1/tools/agbcc/lib
cp agbcc $1/tools/agbcc/bin/
cp old_agbcc $1/tools/agbcc/bin/
cp agbcc_arm $1/tools/agbcc/bin/
cp -R libc/include $1/tools/agbcc/ #drop include, because we don't want include/include
cp ginclude/* $1/tools/agbcc/include/
cp libgcc.a $1/tools/agbcc/lib/
cp libc.a $1/tools/agbcc/lib/
else
if [ -d "../$1" ]; then
echo "Target directory does not exist. Did you mean to do \"./install.sh ../$1\"?"
else
if case $1 in ".."*) true;; *) false;; esac; then
echo "Target directory does not exist. If you aren't familiar with relative paths, make sure that agbcc and the repository are in the same directory, and run \"./install.sh $1\" again."
else
if echo "$1" | grep -qE '^[^/]*.$'; then
echo "Target directory does not exist. You probably meant to do \"./install.sh ../$1\", but agbcc and $1 do not exist in the same directory. Check your spelling, make sure that the repository has been cloned, ensure that agbcc and the repository are in the same directory, and run \"./install.sh ../$1\" again."
else
echo "Target directory does not exist. Check your spelling, re-read the instructions, and try again."
fi
fi
fi
fi
else
echo "Usage: install.sh PATH"
echo "Usage: install.sh PATH"
fi