diff --git a/libretro-build-ios-theos.sh b/libretro-build-ios-theos.sh index d8890187..7d29fdee 100755 --- a/libretro-build-ios-theos.sh +++ b/libretro-build-ios-theos.sh @@ -1,9 +1,21 @@ #! /usr/bin/env bash # vim: set ts=3 sw=3 noet ft=sh : bash +SCRIPT="${0#./}" +BASE_DIR="${SCRIPT%/*}" +WORKDIR="$PWD" + +if [ "$BASE_DIR" = "$SCRIPT" ]; then + BASE_DIR="$WORKDIR" +else + if [[ "$0" != /* ]]; then + # Make the path absolute + BASE_DIR="$WORKDIR/$BASE_DIR" + fi +fi + set -e -BASE_DIR="$PWD" RARCH_DIR=$BASE_DIR/dist RARCH_DIST_DIR=$RARCH_DIR/theos_ios FORMAT=_ios @@ -15,7 +27,7 @@ MAKE=make CXX11="clang++ -std=c++11 -stdlib=libc++ -miphoneos-version-min=5.0" IOS=1 -. ./libretro-build-common.sh +. "$BASE_DIR/libretro-build-common.sh" if [ $1 ]; then $1 diff --git a/libretro-build-ngc.sh b/libretro-build-ngc.sh index 2bef8a62..93edb14b 100755 --- a/libretro-build-ngc.sh +++ b/libretro-build-ngc.sh @@ -1,8 +1,19 @@ #! /usr/bin/env bash # vim: set ts=3 sw=3 noet ft=sh : bash -SCRIPT=$(readlink -f $0) -BASE_DIR=$(dirname $SCRIPT) +SCRIPT="${0#./}" +BASE_DIR="${SCRIPT%/*}" +WORKDIR="$PWD" + +if [ "$BASE_DIR" = "$SCRIPT" ]; then + BASE_DIR="$WORKDIR" +else + if [[ "$0" != /* ]]; then + # Make the path absolute + BASE_DIR="$WORKDIR/$BASE_DIR" + fi +fi + RARCH_DIR=$BASE_DIR/dist RARCH_DIST_DIR=$RARCH_DIR/ngc FORMAT=_ngc @@ -12,8 +23,8 @@ FORMAT_EXT=a JOBS=7 MAKE=make -. ./libretro-build-common-gx.sh -. ./libretro-build-common.sh +. "$BASE_DIR/libretro-build-common-gx.sh" +. "$BASE_DIR/libretro-build-common.sh" if [ $1 ]; then $1 diff --git a/libretro-build-psp1.sh b/libretro-build-psp1.sh index f61207f1..16d727f3 100755 --- a/libretro-build-psp1.sh +++ b/libretro-build-psp1.sh @@ -13,7 +13,7 @@ FORMAT_EXT=a JOBS=7 MAKE=make -. ./libretro-build-common.sh +. "$BASE_DIR/libretro-build-common.sh" if [ $1 ]; then $1 diff --git a/libretro-build-wii.sh b/libretro-build-wii.sh index 73d16a87..9bd148f2 100755 --- a/libretro-build-wii.sh +++ b/libretro-build-wii.sh @@ -1,8 +1,19 @@ #! /usr/bin/env bash # vim: set ts=3 sw=3 noet ft=sh : bash -SCRIPT=$(readlink -f $0) -BASE_DIR=$(dirname $SCRIPT) +SCRIPT="${0#./}" +BASE_DIR="${SCRIPT%/*}" +WORKDIR="$PWD" + +if [ "$BASE_DIR" = "$SCRIPT" ]; then + BASE_DIR="$WORKDIR" +else + if [[ "$0" != /* ]]; then + # Make the path absolute + BASE_DIR="$WORKDIR/$BASE_DIR" + fi +fi + RARCH_DIR=$BASE_DIR/dist RARCH_DIST_DIR=$RARCH_DIR/wii FORMAT=_wii @@ -12,8 +23,8 @@ FORMAT_EXT=a JOBS=7 MAKE=make -. ./libretro-build-common-gx.sh -. ./libretro-build-common.sh +. "$BASE_DIR/libretro-build-common-gx.sh" +. "$BASE_DIR/libretro-build-common.sh" if [ $1 ]; then $1 diff --git a/libretro-install.sh b/libretro-install.sh index d1f45411..ce2db75c 100755 --- a/libretro-install.sh +++ b/libretro-install.sh @@ -1,29 +1,19 @@ #! /usr/bin/env bash # vim: set ts=3 sw=3 noet ft=sh : bash -. ./libretro-config.sh +SCRIPT="${0#./}" +BASE_DIR="${SCRIPT%/*}" +WORKDIR="$PWD" -# BSDs don't have readlink -f -read_link() -{ - TARGET_FILE="$1" - cd $(dirname "$TARGET_FILE") - TARGET_FILE=$(basename "$TARGET_FILE") +if [ "$BASE_DIR" = "$SCRIPT" ]; then + BASE_DIR="$WORKDIR" +else + if [[ "$0" != /* ]]; then + # Make the path absolute + BASE_DIR="$WORKDIR/$BASE_DIR" + fi +fi - while [ -L "$TARGET_FILE" ] - do - TARGET_FILE=$(readlink "$TARGET_FILE") - cd $(dirname "$TARGET_FILE") - TARGET_FILE=$(basename "$TARGET_FILE") - done - - PHYS_DIR=$(pwd -P) - RESULT="$PHYS_DIR/$TARGET_FILE" - echo $RESULT -} - -SCRIPT=$(read_link "$0") -BASE_DIR=$(dirname "$SCRIPT") RARCH_DIR="$BASE_DIR/dist" RARCH_DIST_DIR="$RARCH_DIR/$DIST_DIR" @@ -37,7 +27,7 @@ mkdir -p "$LIBRETRO_DIR" for lib in "$RARCH_DIST_DIR"/* do if [ -f "$lib" ]; then - install -v -m644 "$lib" "$LIBRETRO_DIR" + install -v -m 644 "$lib" "$LIBRETRO_DIR" else echo "Library $lib not found, skipping ..." fi @@ -46,7 +36,7 @@ done for infofile in "$RARCH_DIR"/info/*.info do if [ -f "$infofile" ]; then - install -v -m644 "$infofile" "$LIBRETRO_DIR" + install -v -m 644 "$infofile" "$LIBRETRO_DIR" fi done