diff options
author | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2008-01-02 18:47:08 +0000 |
---|---|---|
committer | patacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3> | 2008-01-02 18:47:08 +0000 |
commit | 47501014fa60b2b20e33477338d91b7d55c69f9b (patch) | |
tree | fb03c539cfb37fb88a3d3e13c889ca5af04aedf7 /misc/buildroot/toolchain/dependencies/dependencies.sh | |
parent | c8e227bc6172abc126ce186cab85d800456bf40b (diff) | |
download | px4-nuttx-47501014fa60b2b20e33477338d91b7d55c69f9b.tar.gz px4-nuttx-47501014fa60b2b20e33477338d91b7d55c69f9b.tar.bz2 px4-nuttx-47501014fa60b2b20e33477338d91b7d55c69f9b.zip |
buildroot snapshot
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@480 42af7a65-404d-4744-a932-0658087f49c3
Diffstat (limited to 'misc/buildroot/toolchain/dependencies/dependencies.sh')
-rwxr-xr-x | misc/buildroot/toolchain/dependencies/dependencies.sh | 267 |
1 files changed, 267 insertions, 0 deletions
diff --git a/misc/buildroot/toolchain/dependencies/dependencies.sh b/misc/buildroot/toolchain/dependencies/dependencies.sh new file mode 100755 index 000000000..6f42a8746 --- /dev/null +++ b/misc/buildroot/toolchain/dependencies/dependencies.sh @@ -0,0 +1,267 @@ +#!/bin/sh +# vi: set sw=4 ts=4: +#set -x + +echo "" +echo "Checking build system dependencies:" + + +############################################################# +# +# check build system 'environment' +# +############################################################# +if test -n "$CC" ; then + echo "CC clean: FALSE" + /bin/echo -e "\n\nYou must run 'unset CC' so buildroot can run with"; + /bin/echo -e "a clean environment on your build machine\n"; + exit 1; +fi; +echo "CC clean: Ok" + + +if test -n "$CXX" ; then + echo "CXX clean: FALSE" + /bin/echo -e "\n\nYou must run 'unset CXX' so buildroot can run with"; + /bin/echo -e "a clean environment on your build machine\n"; + exit 1; +fi; +echo "CXX clean: Ok" + + +if test -n "$CPP" ; then + echo "CPP clean: FALSE" + /bin/echo -e "\n\nYou must run 'unset CPP' so buildroot can run with"; + /bin/echo -e "a clean environment on your build machine\n"; + exit 1; +fi; +echo "CPP clean: Ok" + + +if test -n "$CFLAGS" ; then + echo "CFLAGS clean: FALSE" + /bin/echo -e "\n\nYou must run 'unset CFLAGS' so buildroot can run with"; + /bin/echo -e "a clean environment on your build machine\n"; + exit 1; +fi; +echo "CFLAGS clean: Ok" + +if test -n "$INCLUDES" ; then + echo "INCLUDES clean: FALSE" + /bin/echo -e "WARNING: INCLUDES contains:\n\t'$INCLUDES'" +else + echo "INCLUDES clean: Ok" +fi + +if test -n "$CXXFLAGS" ; then + echo "CXXFLAGS clean: FALSE" + /bin/echo -e "\n\nYou must run 'unset CXXFLAGS' so buildroot can run with"; + /bin/echo -e "a clean environment on your build machine\n"; + exit 1; +fi; +echo "CXXFLAGS clean: Ok" + +echo "WORKS" | grep "WORKS" >/dev/null 2>&1 +if test $? != 0 ; then + echo "grep works: FALSE" + exit 1 +fi + +# sanity check for CWD in LD_LIBRARY_PATH +# try not to rely on egrep.. +if test -n "$LD_LIBRARY_PATH" ; then + /bin/echo TRiGGER_start"$LD_LIBRARY_PATH"TRiGGER_end | /bin/grep ':.:' >/dev/null 2>&1 || + /bin/echo TRiGGER_start"$LD_LIBRARY_PATH"TRiGGER_end | /bin/grep 'TRiGGER_start:' >/dev/null 2>&1 || + /bin/echo TRiGGER_start"$LD_LIBRARY_PATH"TRiGGER_end | /bin/grep ':TRiGGER_end' >/dev/null 2>&1 || + /bin/echo TRiGGER_start"$LD_LIBRARY_PATH"TRiGGER_end | /bin/grep '::' >/dev/null 2>&1 + if test $? = 0; then + echo "LD_LIBRARY_PATH sane: FALSE" + echo "You seem to have the current working directory in your" + echo "LD_LIBRARY_PATH environment variable. This doesn't work." + exit 1; + else + echo "LD_LIBRARY_PATH sane: Ok" + fi +fi; + + + +############################################################# +# +# check build system 'sed' +# +############################################################# +if test -x /usr/bin/sed ; then + SED="/usr/bin/sed" +else + if test -x /bin/sed ; then + SED="/bin/sed" + else + SED="sed" + fi +fi +echo "HELLO" > .sedtest +$SED -i -e "s/HELLO/GOODBYE/" .sedtest >/dev/null 2>&1 +if test $? != 0 ; then + echo "sed works: No, using buildroot version instead" +else + echo "sed works: Ok" +fi +rm -f .sedtest +XSED=$HOST_SED_DIR/bin/sed + +############################################################# +# +# check build system 'which' +# +############################################################# +if ! which which > /dev/null ; then + echo "which installed: FALSE" + /bin/echo -e "\n\nYou must install 'which' on your build machine\n"; + exit 1; +fi; +echo "which installed: Ok" + + +############################################################# +# +# check build system 'make' +# +############################################################# +MAKE=$(which make) +if [ -z "$MAKE" ] ; then + echo "make installed: FALSE" + /bin/echo -e "\n\nYou must install 'make' on your build machine\n"; + exit 1; +fi; +MAKE_VERSION=$($MAKE --version 2>&1 | head -n1 | $XSED -e 's/^.* \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g') +if [ -z "$MAKE_VERSION" ] ; then + echo "make installed: FALSE" + /bin/echo -e "\n\nYou must install 'make' on your build machine\n"; + exit 1; +fi; +MAKE_MAJOR=$(echo $MAKE_VERSION | $XSED -e "s/\..*//g") +MAKE_MINOR=$(echo $MAKE_VERSION | $XSED -e "s/^$MAKE_MAJOR\.//g" -e "s/\..*//g" -e "s/[a-zA-Z].*//g") +if [ $MAKE_MAJOR -lt 3 -o $MAKE_MAJOR -eq 3 -a $MAKE_MINOR -lt 8 ] ; then + echo "You have make '$MAKE_VERSION' installed. GNU make >=3.80 is required" + exit 1; +fi; +echo "GNU make version '$MAKE_VERSION': Ok" + + + +############################################################# +# +# check build system 'gcc' +# +############################################################# +COMPILER=$(which $HOSTCC) +if [ -z "$COMPILER" ] ; then + COMPILER=$(which cc) +fi; +if [ -z "$COMPILER" ] ; then + echo "C Compiler installed: FALSE" + /bin/echo -e "\n\nYou must install 'gcc' on your build machine\n"; + exit 1; +fi; + +COMPILER_VERSION=$($COMPILER --version 2>&1 | head -n1 | $XSED -e 's/^.*(.CC) \([0-9\.]\)/\1/g' -e "s/[-\ ].*//g") +if [ -z "$COMPILER_VERSION" ] ; then + echo "gcc installed: FALSE" + /bin/echo -e "\n\nYou must install 'gcc' on your build machine\n"; + exit 1; +fi; +COMPILER_MAJOR=$(echo $COMPILER_VERSION | $XSED -e "s/\..*//g") +COMPILER_MINOR=$(echo $COMPILER_VERSION | $XSED -e "s/^$COMPILER_MAJOR\.//g" -e "s/\..*//g") +if [ $COMPILER_MAJOR -lt 3 -o $COMPILER_MAJOR -eq 2 -a $COMPILER_MINOR -lt 95 ] ; then + echo "You have gcc '$COMPILER_VERSION' installed. gcc >= 2.95 is required" + exit 1; +fi; +echo "C compiler '$COMPILER'" +echo "C compiler version '$COMPILER_VERSION': Ok" + + +# check for host CXX +CXXCOMPILER=$(which $HOSTCXX) +if [ -z "$CXXCOMPILER" ] ; then + CXXCOMPILER=$(which c++) +fi +if [ -z "$CXXCOMPILER" ] ; then + echo "C++ Compiler installed: FALSE" + /bin/echo -e "\nYou may have to install 'g++' on your build machine\n" + #exit 1 +fi +if [ ! -z "$CXXCOMPILER" ] ; then + CXXCOMPILER_VERSION=$($CXXCOMPILER --version 2>&1 | head -n1 | $XSED -e 's/^.*(.CC) \([0-9\.]\)/\1/g' -e "s/[-\ ].*//g") + if [ -z "$CXXCOMPILER_VERSION" ] ; then + echo "c++ installed: FALSE" + /bin/echo -e "\nYou may have to install 'g++' on your build machine\n" + #exit 1 + fi + + CXXCOMPILER_MAJOR=$(echo $CXXCOMPILER_VERSION | $XSED -e "s/\..*//g") + CXXCOMPILER_MINOR=$(echo $CXXCOMPILER_VERSION | $XSED -e "s/^$CXXCOMPILER_MAJOR\.//g" -e "s/\..*//g") + if [ $CXXCOMPILER_MAJOR -lt 3 -o $CXXCOMPILER_MAJOR -eq 2 -a $CXXCOMPILER_MINOR -lt 95 ] ; then + echo "You have g++ '$CXXCOMPILER_VERSION' installed. g++ >= 2.95 is required" + exit 1 + fi + echo "C++ compiler '$CXXCOMPILER'" + echo "C++ compiler version '$CXXCOMPILER_VERSION': Ok" +fi + +############################################################# +# +# check build system 'bison' +# +############################################################# +if ! which bison > /dev/null ; then + echo "bison installed: FALSE" + /bin/echo -e "\n\nYou must install 'bison' on your build machine\n"; + exit 1; +fi; +echo "bison installed: Ok" + + +############################################################# +# +# check build system 'flex' +# +############################################################# +if ! which flex > /dev/null ; then + echo "flex installed: FALSE" + /bin/echo -e "\n\nYou must install 'flex' on your build machine\n"; + exit 1; +fi; +echo "flex installed: Ok" + + +############################################################# +# +# check build system 'gettext' +# +############################################################# +if ! which msgfmt > /dev/null ; then \ + echo "gettext installed: FALSE" + /bin/echo -e "\n\nYou must install 'gettext' on your build machine\n"; \ + exit 1; \ +fi; +echo "gettext installed: Ok" + + +if ! which makeinfo > /dev/null ; then \ + echo "makeinfo installed: FALSE" + /bin/echo -e "\n\nMost likely some packages will fail to build their documentation" + /bin/echo -e "Either install 'makeinfo' on your host or fix the respective packages" +else + echo "makeinfo installed: Ok" +fi + + +############################################################# +# +# All done +# +############################################################# +echo "Build system dependencies: Ok" +echo "" + |