summaryrefslogtreecommitdiff
path: root/ui-macos/git-annex.app/Contents/MacOS/runshell
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@oberon.underhill.private>2012-09-24 19:40:21 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-09-24 19:42:45 -0400
commit6c8abf6ca32f8a1ae7a68402d552fdf0d59392cf (patch)
tree9c5c505501381552b93b731262aed40db2f313f4 /ui-macos/git-annex.app/Contents/MacOS/runshell
parent5be83ac100a3a951f78f220237d776f466ca106a (diff)
add osxapp target
Not fully tested.
Diffstat (limited to 'ui-macos/git-annex.app/Contents/MacOS/runshell')
-rwxr-xr-xui-macos/git-annex.app/Contents/MacOS/runshell44
1 files changed, 44 insertions, 0 deletions
diff --git a/ui-macos/git-annex.app/Contents/MacOS/runshell b/ui-macos/git-annex.app/Contents/MacOS/runshell
new file mode 100755
index 000000000..e6c932720
--- /dev/null
+++ b/ui-macos/git-annex.app/Contents/MacOS/runshell
@@ -0,0 +1,44 @@
+#!/bin/sh
+set -e
+
+base="$(dirname $0)"
+
+if [ ! -d "$base" ]; then
+ echo "** cannot find base directory (I seem to be $0)" >&2
+ exit 1
+fi
+
+if [ ! -e "$base/bin/git-annex" ]; then
+ echo "** base directory $base does not contain bin/git-annex" >&2
+ exit 1
+fi
+if [ ! -e "$base/bin/git" ]; then
+ echo "** base directory $base does not contain bin/git" >&2
+ exit 1
+fi
+
+# Get absolute path to base, to avoid breakage when things change directories.
+orig="$(pwd)"
+cd "$base"
+base="$(pwd)"
+cd "$orig"
+
+# Put our binaries first, so our overloaded libs don't get used with
+# system binaries.
+# Also avoids issues with out of date system binaries.
+PATH=$base/bin:$PATH
+export PATH
+
+DYLD_LIBRARY_PATH=$base/lib:$DYLD_LIBRARY_PATH
+export DYLD_LIBRARY_PATH
+
+GIT_EXEC_PATH=$base/git-core
+export GIT_EXEC_PATH
+
+if [ "$1" ]; then
+ cmd="$1"
+ shift 1
+ "$cmd" "$@"
+else
+ $SHELL
+fi