-n, --dry-run option
[mob/metatag] / metatag.install
1 #!/bin/sh
2 # metatag     Metadata extraction utility
3 # Copyright (C) 2014  Christian Th├Ąter <ct@pipapo.org>
4 #
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation, either version 3 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18 dependencies="std nixio"
19 export "package=metatag" "$@"
20
21 prefix="${prefix:-/usr/local}"
22 bindir="${bindir:-$prefix/bin}"
23 libdir="${bindir:-$prefix/lib}"
24 pkgdir="${pkgdir:-$prefix/share/$package}"
25
26 find_binary ()
27 {
28     for i in "$@"; do
29         program=$(which "$i")
30         if test "$program" -a -x "$program"; then
31             echo "$program"
32             return
33         fi
34     done
35     echo "no suitable interpreter found" 1>&2
36     exit 1
37 }
38
39 lua=$(find_binary luajit lua5.1 lua lua5.2)
40 echo "using '$lua' as lua interpreter"
41
42 for i in $dependencies; do
43     $lua -e "pcall(require,'luarocks.loader'); require '$i'" 2>/dev/null || ( echo "dependency '$i' not found" 1>&2; exit 1; )
44 done
45
46 echo "installing in '$pkgdir'"
47 mkdir -p "$pkgdir"
48 cp "$package"*".lua" "$pkgdir/"
49
50 echo "installing main executable '$bindir/metatag'"
51 mkdir -p "$bindir"
52 cat >"$bindir/metatag" <<EOF
53 #!/bin/sh
54 export pkgdir="$pkgdir"
55 exec "$lua" -- "$pkgdir/metatag.lua" "\$@"
56 EOF
57 chmod +x "$bindir/metatag"