summaryrefslogtreecommitdiffstats
path: root/query/realpath
diff options
context:
space:
mode:
authormakefu <root@pigstarter.de>2013-12-30 14:34:38 +0100
committermakefu <root@pigstarter.de>2013-12-30 14:34:38 +0100
commit08aa5e406a1f7b39182e79ea4eb7fabf7d61eaa3 (patch)
tree2db1a54f336167cc3cc3d5f74c77d029fe7e7470 /query/realpath
parent133e49566c74f1d21c28536ed31d1514725ed49b (diff)
//Cancer -> //
because that is what painload is all about
Diffstat (limited to 'query/realpath')
-rwxr-xr-xquery/realpath/install41
-rwxr-xr-xquery/realpath/src/realpath.rb10
2 files changed, 51 insertions, 0 deletions
diff --git a/query/realpath/install b/query/realpath/install
new file mode 100755
index 00000000..74671c81
--- /dev/null
+++ b/query/realpath/install
@@ -0,0 +1,41 @@
+#! /bin/sh
+set -euf
+
+cd `dirname $0`
+
+target=../../bin/realpath
+
+findexe() {
+ OLDIFS="$IFS"
+ IFS=:
+ for d in $PATH; do
+ f="$d/$1"
+ if test -f "$f" -a -x "$f"; then
+ echo $f
+ IFS="$OLDIFS"
+ return
+ fi
+ done
+ IFS="$OLDIFS"
+ ! :
+}
+
+if exe="`findexe readlink`" && $exe -f install | grep -q /install$; then
+ ! test -e $target || rm $target
+ cat > $target <<EOF
+#! /bin/sh -euf
+exec $exe -f "\${1-\$file_name}"
+EOF
+ chmod +x $target
+ echo '//query/realpath: install readlink' >&2
+ exit
+fi
+
+if type ruby 1>/dev/null 2>/dev/null; then
+ ln -snf ../query/realpath/src/realpath.rb $target
+ echo '//query/realpath: install realpath.rb' >&2
+ exit
+fi
+
+echo 'Error 2: your system is made of stupid!'
+exit 23
diff --git a/query/realpath/src/realpath.rb b/query/realpath/src/realpath.rb
new file mode 100755
index 00000000..8e19785b
--- /dev/null
+++ b/query/realpath/src/realpath.rb
@@ -0,0 +1,10 @@
+#!/usr/bin/env ruby
+
+begin
+ $stdout.print File.realpath(ARGV[0])
+ $stdout.print "\n"
+rescue Exception => err
+ $stderr.print err
+ $stderr.print "\n"
+ exit 1
+end