Tue, 06 Jan 2009 23:46:19 +0100
Rewrite out of scope identifiers and remove IPv6 to correct build.
1 #!/bin/sh
2 ##
3 ## aux.prereq.sh -- Platform Pre-Requisite Checks
4 ## Copyright (c) 2000-2007 OpenPKG Foundation e.V. <http://openpkg.net/>
5 ## Copyright (c) 2000-2007 Ralf S. Engelschall <http://engelschall.com/>
6 ##
7 ## Permission to use, copy, modify, and distribute this software for
8 ## any purpose with or without fee is hereby granted, provided that
9 ## the above copyright notice and this permission notice appear in all
10 ## copies.
11 ##
12 ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
13 ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
14 ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
15 ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
16 ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
17 ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
18 ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
19 ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
20 ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
21 ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
22 ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23 ## SUCH DAMAGE.
24 ##
25 ## Usage: aux.prereq.sh source|binary
26 ##
28 mode="$1"
30 # CHECK: determine platform ids
31 platform_prod=`sh ./shtool platform -n -L -S "" -C "+" -F "%<ap>-%<sp>"`
32 platform_tech=`sh ./shtool platform -n -L -S "" -C "+" -F "%<at>-%<st>"`
33 echo "++ platform product: $platform_prod"
34 echo "++ platform technology: $platform_tech"
36 #
37 # CHECK: diskspace requirement
38 #
39 if [ ".$mode" = .source ]; then
40 fs_path="${TMPDIR-/tmp}"
41 fs_need=150000
42 else
43 fs_path="" # FIXME
44 fs_need=0 # FIXME
45 fi
46 fs_free=""
47 case "$platform_tech" in
48 *-freebsd* | *-linux* | *-sunos* )
49 fs_free=`cd $fs_path && /bin/df -k . | sed -n -e '$p' | sed -e 's;^[^ ]*;;' -e 's; *;;' | awk '{ print $3; }'`
50 ;;
51 esac
52 if [ ".$fs_free" != . ]; then
53 if [ $fs_free -lt $fs_need ]; then
54 if [ ".$mode" = .source ]; then
55 echo "ERROR: temporary directory \"$fs_path\" has to reside on a partition" 1>&2
56 echo " with at least $fs_need KB of free disk space. Set \$TMPDIR to" 1>&2
57 echo " a directory on a partition with enough free disk space, please." 1>&2
58 else
59 echo "ERROR: installation directory \"$fs_path\" has to reside on a partition" 1>&2
60 echo " with at least $fs_need KB of free disk space. Make \"$fs_path\" a" 1>&2
61 echo " symbolic link to a directory on a partition with enough free" 1>&2
62 echo " disk space, please." 1>&2
63 fi
64 exit 1
65 fi
66 fi
68 #
69 # CHECK: available vendor packages
70 #
71 # ...FIXME...
73 #
74 # CHECK: available tools in $PATH
75 #
76 # ...FIXME...
78 #
79 # CHECK: available devices /dev/random, etc.
80 #
81 # ...FIXME...
83 #
84 # CHECK: consistency check for /prefix (symlink!)
85 #
86 # ...FIXME...