summaryrefslogtreecommitdiff
path: root/scripts/prereq.sh
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-12-20 22:18:11 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2015-12-20 22:19:19 +0100
commit7f58f90b8f6ba4ec94ea92769e966dfc5ad95137 (patch)
treedb9e291b0a984d19b8dbd4cc3a8cbd7a414bd916 /scripts/prereq.sh
parentaaa8063368367c7a63064c139617fb7f2264e55f (diff)
use strings instead of modinfo for a portable way
Idea from Phil to have a portable method to find the kernel module dependencies. make-module-ipkgs.sh uses associative arrays, so check for bash version 4.
Diffstat (limited to 'scripts/prereq.sh')
-rwxr-xr-xscripts/prereq.sh56
1 files changed, 35 insertions, 21 deletions
diff --git a/scripts/prereq.sh b/scripts/prereq.sh
index 9b82b2b74..f0d5c48ed 100755
--- a/scripts/prereq.sh
+++ b/scripts/prereq.sh
@@ -206,28 +206,33 @@ done
printf " ---> checking if bash is installed.. "
if which bash >/dev/null; then
printf "found\n"
-else
- # we need to build GNU bash
- printf "not found\n"
- printf " ---> compiling missing GNU bash.. "
- cd dl
- $FETCHCMD bash-${bashver}.tar.gz $mirror/bash-${bashver}.tar.gz
- if [ $? -ne 0 ]; then
- printf "ERROR: failed to download make from $mirror\n"
- exit 1
+ printf " ---> checking if it is bash 4.x.. "
+ bash --version 2>/dev/null| grep "Version 4" >/dev/null
+ if [ $? -eq 0 ]; then
+ printf "yes\n"
+ else
+ # we need to build GNU bash 4.x
+ printf "not found\n"
+ printf " ---> compiling missing GNU bash.. "
+ cd dl
+ $FETCHCMD bash-${bashver}.tar.gz $mirror/bash-${bashver}.tar.gz
+ if [ $? -ne 0 ]; then
+ printf "ERROR: failed to download make from $mirror\n"
+ exit 1
+ fi
+ cd ..
+ mkdir tmp
+ cd tmp
+ tar xzf ../dl/bash-${bashver}.tar.gz
+ cd bash-${bashver}
+ ./configure --prefix=$topdir/host_$gnu_host_name/
+ make
+ make install
+ cd ..
+ cd ..
+ rm -rf tmp
+ printf " done\n"
fi
- cd ..
- mkdir tmp
- cd tmp
- tar xzf ../dl/bash-${bashver}.tar.gz
- cd bash-${bashver}
- ./configure --prefix=$topdir/host_$gnu_host_name/
- make
- make install
- cd ..
- cd ..
- rm -rf tmp
- printf " done\n"
fi
# skip the script if distclean / cleandir
@@ -237,6 +242,15 @@ if [ "$target" = "distclean" -o "$target" = "cleandir" ]; then
exit 0
fi
+printf " ---> checking if strings is installed.. "
+if ! which strings >/dev/null 2>&1; then
+ echo You must install strings to continue.
+ echo
+ out=1
+ printf "not found\n"
+fi
+printf "found\n"
+
printf " ---> checking if perl is installed.. "
if ! which perl >/dev/null 2>&1; then
echo You must install perl to continue.