| #!/bin/bash |
| # |
| # Copyright (c) 2004 Silicon Graphics, Inc. All Rights Reserved. |
| # |
| # This program is free software; you can redistribute it and/or |
| # modify it under the terms of the GNU General Public License as |
| # published by the Free Software Foundation. |
| # |
| # This program is distributed in the hope that it would be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program; if not, write the Free Software Foundation, |
| # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
| # |
| # |
| # Do a build using the IRIX TOOLROOT |
| # Use "-f" to force a configure. |
| # |
| |
| error=false |
| |
| # Do initial checks |
| |
| # check have root/toolroot set |
| if [ -z "$TOOLROOT" ]; then |
| echo "TOOLROOT needs to be set to a populated IRIX toolroot" |
| error=true |
| fi |
| if [ -z "$ROOT" ]; then |
| echo "ROOT needs to be set to a populated IRIX root" |
| error=true |
| fi |
| |
| # check we have c compiler license |
| if ! grep -iq '^feature cc' /var/flexlm/license.dat; then |
| echo "Unable to find cc license for IRIX" |
| echo "Get license: http://www.csd.sgi.com/prod/software/swl/keyrequest.html" |
| error=true |
| fi |
| |
| # check we have dev.sw.lib installed |
| # needed by ld32 even though we have $ROOT |
| if versions dev.sw.lib | grep -q dev.sw.lib; then |
| : |
| else |
| echo "dev.sw.lib is not installed" |
| echo "Install from irix-6.5-development-libraries-1/dist" |
| error=true |
| fi |
| |
| # any check failures then exit out |
| $error && exit 1 |
| |
| # root/toolroot paths |
| fw_bin=$TOOLROOT/usr/freeware/bin |
| fw_tools=$TOOLROOT/usr/fw_tools |
| fw_share=$ROOT/usr/freeware/share |
| irix_bin=$TOOLROOT/usr/bin |
| |
| # env vars |
| export AC_MACRODIR=$fw_share/autoconf |
| export M4=$irix_bin/gnum4 |
| export CC=$irix_bin/cc |
| export LIBTOOL=$fw_bin/libtool |
| export MAKE=$fw_tools/gmake |
| export AWK=$irix_bin/nawk |
| |
| # check all tools/files are in root/toolroot that we need |
| FILES="$AC_MACRODIR $M4 $CC $LIBTOOL $MAKE $fw_bin/aclocal $fw_bin/autoheader $fw_bin/autoconf" |
| for f in $FILES; do |
| if [ ! -e $f ]; then |
| echo "file $f not found in ROOT/TOOLROOT" |
| error=true |
| fi |
| done |
| $error && exit 1 |
| |
| # force a full configure |
| if [ $# -eq 1 ]; then |
| if [ $1 = "-f" ]; then |
| rm -f config.cache configure include/builddefs |
| shift |
| fi |
| fi |
| |
| # --- do all the configure stuff using the toolroot paths --- |
| |
| # aclocal.m4 is actually checked in - probably won't recreate it often |
| if [ ! -e aclocal.m4 ]; then |
| set -x |
| $fw_bin/aclocal --acdir=m4 --output=aclocal.m4 |
| set - |
| fi |
| |
| if [ ! -e ./configure ]; then |
| set -x |
| $fw_bin/autoheader |
| $fw_bin/autoconf |
| set - |
| fi |
| |
| if [ ! -e include/builddefs ]; then |
| set -x |
| ./configure |
| set - |
| fi |
| |
| # Now call gmake with any args we were given |
| set -x |
| $MAKE $@ |
| set - |