| Norbert Thiebaud | aa09a9b | 2011-10-07 14:10:10 -0500 | [diff] [blame] | 1 | #!/bin/sh |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 2 | |
| Norbert Thiebaud | fd9366c | 2011-12-24 19:25:58 -0600 | [diff] [blame] | 3 | if test -z "${SRC_ROOT}"; then |
| 4 | if test -f ./config_build.mk ; then |
| David Tardon | 5472498 | 2012-03-23 08:45:49 +0100 | [diff] [blame] | 5 | sed -e 's/^\s*\(export [A-Z0-9_]*=\)\(.*\)$/\1"\2"/' <config_build.mk >config_build.mk.sh |
| Tor Lillqvist | 94d553b | 2012-03-05 20:38:29 +0200 | [diff] [blame] | 6 | . ./config_build.mk.sh |
| 7 | rm config_build.mk.sh |
| Norbert Thiebaud | fd9366c | 2011-12-24 19:25:58 -0600 | [diff] [blame] | 8 | else |
| 9 | if test -f ./config_host.mk ; then |
| David Tardon | 5472498 | 2012-03-23 08:45:49 +0100 | [diff] [blame] | 10 | sed -e 's/^\s*\(export [A-Z0-9_]*=\)\(.*\)$/\1"\2"/' <config_host.mk >config_host.mk.sh |
| Tor Lillqvist | cd2644d | 2012-02-10 13:34:42 +0200 | [diff] [blame] | 11 | . ./config_host.mk.sh |
| 12 | rm config_host.mk.sh |
| Norbert Thiebaud | fd9366c | 2011-12-24 19:25:58 -0600 | [diff] [blame] | 13 | fi |
| 14 | fi |
| 15 | fi |
| Michael Stahl | 9360e44 | 2011-04-18 15:59:15 +0000 | [diff] [blame] | 16 | if test -z "${SOLARENV}"; then |
| Michael Stahl | 9360e44 | 2011-04-18 15:59:15 +0000 | [diff] [blame] | 17 | echo "bootstrap: No environment set!" |
| 18 | exit 1 |
| 19 | fi |
| 20 | |
| RĂ¼diger Timm | 87840aa | 2003-12-01 16:38:25 +0000 | [diff] [blame] | 21 | # executables are *.exe for WNT. This variable is necessary since Cygwin 1.5.x |
| Norbert Thiebaud | 9115de5 | 2011-08-11 00:35:15 -0500 | [diff] [blame] | 22 | # Use spawn instead of fork when building dmake on cygwin. |
| Tor Lillqvist | 85d4491 | 2011-05-16 18:46:27 +0300 | [diff] [blame] | 23 | if test "$GUI_FOR_BUILD" = "WNT"; then |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 24 | EXEEXT=".exe" |
| 25 | DMAKE_CONF="--enable-spawn" |
| RĂ¼diger Timm | 87840aa | 2003-12-01 16:38:25 +0000 | [diff] [blame] | 26 | else |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 27 | EXEEXT="" |
| 28 | DMAKE_CONF="" |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 29 | fi |
| Kurt Zenker | b2ffa9c | 2006-07-19 08:36:10 +0000 | [diff] [blame] | 30 | export EXEEXT |
| Jens-Heiner Rechtien | 11cb1ba | 2000-09-18 15:18:56 +0000 | [diff] [blame] | 31 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 32 | # ------------------------------------------------------------------------------ |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 33 | # Build dmake |
| 34 | |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 35 | if test "$BUILD_DMAKE" != "NO"; then |
| Jan Holesovsky | bbe16ac | 2010-12-02 18:03:33 +0100 | [diff] [blame] | 36 | if test ! -x "$SRC_ROOT/dmake/dmake$EXEEXT"; then |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 37 | cd "$SRC_ROOT/dmake" || exit |
| Martin Hollmichel | d611db5 | 2003-01-20 14:00:18 +0000 | [diff] [blame] | 38 | |
| Tor Lillqvist | 85d4491 | 2011-05-16 18:46:27 +0300 | [diff] [blame] | 39 | # If cross-compiling then don't use the cross compilers to build dmake. |
| 40 | if test "$GUI_FOR_BUILD" = "WNT"; then |
| 41 | # Let the Cygwin gcc be found |
| Tor Lillqvist | 593a19e | 2011-05-18 18:55:07 +0300 | [diff] [blame] | 42 | unset CC CXX AR NM OBJDUMP PKG_CONFIG RANLIB STRIP |
| Tor Lillqvist | 85d4491 | 2011-05-16 18:46:27 +0300 | [diff] [blame] | 43 | elif test "$CROSS_COMPILING" = "YES"; then |
| 44 | export CC="$CC_FOR_BUILD" |
| 45 | export CXX="$CXX_FOR_BUILD" |
| Tor Lillqvist | 593a19e | 2011-05-18 18:55:07 +0300 | [diff] [blame] | 46 | unset AR NM OBJDUMP PKG_CONFIG RANLIB STRIP |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 47 | fi |
| Ken Foskey | 2aacc1a | 2002-10-09 12:17:17 +0000 | [diff] [blame] | 48 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 49 | # For normal unixy systems |
| 50 | if test -f "Makefile" ; then |
| 51 | $GNUMAKE distclean || exit |
| 52 | fi |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 53 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 54 | ./configure $DMAKE_CONF || exit |
| Ken Foskey | 2aacc1a | 2002-10-09 12:17:17 +0000 | [diff] [blame] | 55 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 56 | ## invoke the gnu make command set by configure. |
| 57 | $GNUMAKE || exit |
| Vladimir Glazounov | f991d6a | 2003-12-17 14:00:10 +0000 | [diff] [blame] | 58 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 59 | echo "" |
| 60 | echo "dmake has been successfully built" |
| Vladimir Glazounov | f991d6a | 2003-12-17 14:00:10 +0000 | [diff] [blame] | 61 | |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 62 | cd .. |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 63 | else |
| Tor Lillqvist | 85d4491 | 2011-05-16 18:46:27 +0300 | [diff] [blame] | 64 | echo "dmake/dmake already built" |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 65 | fi |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 66 | fi |
| 67 | |
| Tor Lillqvist | f206336 | 2011-06-04 14:59:34 +0300 | [diff] [blame] | 68 | mkdir -p "$SOLARENV/$OUTPATH_FOR_BUILD/bin" |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 69 | if test "$BUILD_DMAKE" != "NO"; then |
| Tor Lillqvist | f206336 | 2011-06-04 14:59:34 +0300 | [diff] [blame] | 70 | cp -f "$SRC_ROOT/dmake/dmake$EXEEXT" "$SOLARENV/$OUTPATH_FOR_BUILD/bin" || exit |
| Vladimir Glazounov | c64d4c5 | 2006-09-27 09:25:09 +0000 | [diff] [blame] | 71 | echo "" |
| Tor Lillqvist | f206336 | 2011-06-04 14:59:34 +0300 | [diff] [blame] | 72 | echo "dmake copied to $SOLARENV/$OUTPATH_FOR_BUILD/bin/dmake$EXEEXT" |
| Oliver Bolte | afb4d61 | 2006-09-15 10:18:41 +0000 | [diff] [blame] | 73 | fi |
| 74 | |
| Norbert Thiebaud | e3e94f1 | 2011-12-17 10:54:24 -0600 | [diff] [blame] | 75 | # build concat-deps |
| 76 | echo "building concat-deps" |
| Norbert Thiebaud | 9651546 | 2011-12-18 05:15:53 -0600 | [diff] [blame] | 77 | if [ "$COM_FOR_BUILD" = "MSC" ] ; then |
| 78 | # on cygwin force the use of gcc |
| 79 | gcc -O2 "$SOLARENV/bin/concat-deps.c" -o "$SOLARENV/bin/concat-deps" || exit |
| 80 | else |
| 81 | $CC_FOR_BUILD -O2 "$SOLARENV/bin/concat-deps.c" -o "$SOLARENV/bin/concat-deps" || exit |
| 82 | fi |
| Norbert Thiebaud | 9115de5 | 2011-08-11 00:35:15 -0500 | [diff] [blame] | 83 | #make sure build.pl is executable |
| Kurt Zenker | 9647a33 | 2006-07-05 21:07:20 +0000 | [diff] [blame] | 84 | |
| 85 | chmod +x "$SRC_ROOT/solenv/bin/build.pl" |
| 86 | chmod +x "$SRC_ROOT/solenv/bin/zipdep.pl" |
| 87 | chmod +x "$SRC_ROOT/solenv/bin/gccinstlib.pl" |
| Hans-Joachim Lankenau | a966926 | 2010-01-15 14:55:12 +0100 | [diff] [blame] | 88 | |
| Tor Lillqvist | f206336 | 2011-06-04 14:59:34 +0300 | [diff] [blame] | 89 | # Local Variables: |
| 90 | # mode: shell-script |
| 91 | # tab-width: 4 |
| 92 | # indent-tabs-mode: nil |
| 93 | # End: |
| 94 | |
| 95 | # vim:set shiftwidth=4 softtabstop=4 expandtab: |