diff -r 71503088f51b -r f880f219c566 openpkg/etc.prereq.sh
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/openpkg/etc.prereq.sh Tue Jul 31 12:23:42 2012 +0200
@@ -0,0 +1,86 @@
+#!/bin/sh
+##
+## etc.prereq.sh -- Platform Pre-Requisite Checks
+## Copyright (c) 2000-2012 OpenPKG GmbH
+##
+## This software is property of the OpenPKG GmbH, DE MUC HRB 160208.
+## All rights reserved. Licenses which grant limited permission to use,
+## copy, modify and distribute this software are available from the
+## OpenPKG GmbH.
+##
+## THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
+## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR
+## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
+## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+## SUCH DAMAGE.
+##
+## Usage: etc.prereq.sh source|binary
+##
+
+mode="$1"
+
+# CHECK: determine platform ids
+platform_prod=`sh ./shtool platform -n -L -S "" -C "+" -F "%-%"`
+platform_tech=`sh ./shtool platform -n -L -S "" -C "+" -F "%-%"`
+echo "++ platform product: $platform_prod"
+echo "++ platform technology: $platform_tech"
+
+#
+# CHECK: diskspace requirement
+#
+if [ ".$mode" = .source ]; then
+ fs_path="${TMPDIR-/tmp}"
+ fs_need=150000
+else
+ fs_path="" # FIXME
+ fs_need=0 # FIXME
+fi
+fs_free=""
+case "$platform_tech" in
+ *-freebsd* | *-netbsd* | *-linux* | *-sunos* )
+ fs_free=`cd $fs_path && /bin/df -k . | sed -n -e '$p' | sed -e 's;^[^ ]*;;' -e 's; *;;' | awk '{ print $3; }'`
+ ;;
+esac
+if [ ".$fs_free" != . ]; then
+ if [ $fs_free -lt $fs_need ]; then
+ if [ ".$mode" = .source ]; then
+ echo "ERROR: temporary directory \"$fs_path\" has to reside on a partition" 1>&2
+ echo " with at least $fs_need KB of free disk space. Set \$TMPDIR to" 1>&2
+ echo " a directory on a partition with enough free disk space, please." 1>&2
+ else
+ echo "ERROR: installation directory \"$fs_path\" has to reside on a partition" 1>&2
+ echo " with at least $fs_need KB of free disk space. Make \"$fs_path\" a" 1>&2
+ echo " symbolic link to a directory on a partition with enough free" 1>&2
+ echo " disk space, please." 1>&2
+ fi
+ exit 1
+ fi
+fi
+
+#
+# CHECK: available vendor packages
+#
+# ...FIXME...
+
+#
+# CHECK: available tools in $PATH
+#
+# ...FIXME...
+
+#
+# CHECK: available devices /dev/random, etc.
+#
+# ...FIXME...
+
+#
+# CHECK: consistency check for /prefix (symlink!)
+#
+# ...FIXME...
+