1 2# executables are *.exe for WNT. This variable is necessary since Cygwin 1.5.x 3# Use spawn instead of fork when building dmake on cygwin. 4if test "$GUI" = "WNT"; then 5 EXEEXT=".exe"
| 1 2# executables are *.exe for WNT. This variable is necessary since Cygwin 1.5.x 3# Use spawn instead of fork when building dmake on cygwin. 4if test "$GUI" = "WNT"; then 5 EXEEXT=".exe"
|
6 DMAKE_CONF="--enable-spawn"
| |
7else 8 EXEEXT=""
| 6else 7 EXEEXT=""
|
9 DMAKE_CONF=""
| |
10fi 11export EXEEXT 12
| 8fi 9export EXEEXT 10
|
13# ------------------------------------------------------------------------------ 14# Build dmake 15 16if test "$BUILD_DMAKE" != "NO"; then 17 18 if test ! -x "$SOLARENV/$OUTPATH/bin/dmake$EXEEXT"; then 19 20 cd "$SRC_ROOT/dmake" || exit 21 22 # Special case! The w32/tcsh build needs CC pointing to the MSVC++ compiler 23 # but we need a cygwin/gcc build dmake to understand the posix paths 24 if test "$GUI" = "WNT"; then 25 CC="" 26 CXX="" 27 export CC 28 export CXX 29 fi 30 31 # For normal unixy systems 32 if test -f "Makefile" ; then 33 $GNUMAKE distclean || exit 34 fi 35 36 ./configure $DMAKE_CONF || exit 37 38 ## invoke the gnu make command set by configure. 39 $GNUMAKE || exit 40 41 echo "" 42 echo "dmake has been successfully built" 43 44 cd .. 45 46 else 47 48 echo "" 49 echo "dmake present in $SOLARENV/$OUTPATH/bin/dmake$EXEEXT" 50 51 fi 52 53fi 54
| |
55mkdir -p "$SOLARENV/$OUTPATH/bin"
| 11mkdir -p "$SOLARENV/$OUTPATH/bin"
|
56if test "$BUILD_DMAKE" != "NO"; then 57 cp -f "$SRC_ROOT/dmake/dmake$EXEEXT" "$SOLARENV/$OUTPATH/bin" || exit 58 echo "" 59 echo "dmake copied to $SOLARENV/$OUTPATH/bin/dmake$EXEEXT" 60fi
| |
61 62if test "$GUI" = "WNT" -a ! -x "$SOLARENV/$OUTPATH/bin/guw$EXEEXT"; then 63 echo "" 64 echo "Calling $GNUMAKE in guw" 65 cd "$SRC_ROOT/guw" || exit 66 $GNUMAKE || exit 67 echo "" 68 echo "guw has been successfully made"
| 12 13if test "$GUI" = "WNT" -a ! -x "$SOLARENV/$OUTPATH/bin/guw$EXEEXT"; then 14 echo "" 15 echo "Calling $GNUMAKE in guw" 16 cd "$SRC_ROOT/guw" || exit 17 $GNUMAKE || exit 18 echo "" 19 echo "guw has been successfully made"
|
69 cp -f "$SRC_ROOT/guw/guw$EXEEXT" "$SOLARENV/$OUTPATH/bin" || exit
| 20 cp -f "$SRC_ROOT/guw/guw$EXEEXT" "$SOLARENV/$OUTPATH/bin/guw$EXEEXT" || exit
|
70 echo "" 71 echo "guw copied to $SOLARENV/$OUTPATH/bin/guw$EXEEXT" 72fi 73 74#make sure build.pl is executable 75 76chmod +x "$SRC_ROOT/solenv/bin/build.pl" 77chmod +x "$SRC_ROOT/solenv/bin/build_client.pl" 78chmod +x "$SRC_ROOT/solenv/bin/zipdep.pl" 79chmod +x "$SRC_ROOT/solenv/bin/gccinstlib.pl" 80 81# fetch or update external tarballs 82if [ "$DO_FETCH_TARBALLS" = "yes" ]; then 83 $SRC_ROOT/fetch_tarballs.sh $SRC_ROOT/ooo.lst 84fi
| 21 echo "" 22 echo "guw copied to $SOLARENV/$OUTPATH/bin/guw$EXEEXT" 23fi 24 25#make sure build.pl is executable 26 27chmod +x "$SRC_ROOT/solenv/bin/build.pl" 28chmod +x "$SRC_ROOT/solenv/bin/build_client.pl" 29chmod +x "$SRC_ROOT/solenv/bin/zipdep.pl" 30chmod +x "$SRC_ROOT/solenv/bin/gccinstlib.pl" 31 32# fetch or update external tarballs 33if [ "$DO_FETCH_TARBALLS" = "yes" ]; then 34 $SRC_ROOT/fetch_tarballs.sh $SRC_ROOT/ooo.lst 35fi
|
| 36 37# ------------------------------------------------------------------------------ 38# Build dmake 39 40if test -n "$DMAKE_URL" -a ! -x "$SOLARENV/$OUTPATH/bin/dmake$EXEEXT"; then 41 42 # Assume that the dmake archive has been downloaded by fetch_tarballs.sh 43 # Determine the name of the downloaded file. 44 dmake_package_name=`echo $DMAKE_URL | sed "s/^\(.*\/\)//"` 45 46 tmp_build_dir="$SOLARENV/$OUTPATH/misc/build/" 47 echo "making and entering $tmp_build_dir" 48 # Clean up any residues from a previous and unsuccessful build. 49 rm -rf "$tmp_build_dir" 50 mkdir -p "$tmp_build_dir" 51 cd "$tmp_build_dir" || exit 52 53 dmake_full_package_name="$TARFILE_LOCATION/$dmake_package_name" 54 if test "$GUI" = "WNT"; then 55 dmake_full_package_name=`cygpath -u "$dmake_full_package_name"` 56 fi 57 echo "unpacking $dmake_full_package_name" 58 59 # Unpack it. 60 case $dmake_package_name in 61 *.tar.gz) 62 tar -xzf "$dmake_full_package_name" 63 dmake_directory_name=`echo $dmake_package_name | sed "s/\(\.tar.gz\)//"` 64 ;; 65 *.tgz) 66 tar -xzf "$dmake_full_package_name" 67 dmake_directory_name=`echo $dmake_package_name | sed "s/\(\.tgz\)//"` 68 ;; 69 *.tar.bz2) 70 tar -xjf "$dmake_full_package_name" 71 dmake_directory_name=`echo $dmake_package_name | sed "s/\(\.tar.bz2\)//"` 72 ;; 73 *.zip) 74 unzip "$dmake_full_package_name" 75 dmake_directory_name=`echo $dmake_package_name | sed "s/\(\.zip\)//"` 76 ;; 77 *) 78 echo "can not unpack the dmake source" 79 dmake_directory_name= 80 exit 1 81 ;; 82 esac 83 84 echo "entering $dmake_directory_name" 85 cd "$dmake_directory_name" || exit 86 87 # Special case! The w32/tcsh build needs CC pointing to the MSVC++ compiler 88 # but we need a cygwin/gcc build dmake to understand the posix paths 89 if test "$GUI" = "WNT"; then 90 CC="" 91 CXX="" 92 export CC 93 export CXX 94 DMAKE_CONF="--enable-spawn" 95 else 96 DMAKE_CONF="" 97 fi 98 99 # For unixy systems 100 if test -f "Makefile" ; then 101 $GNUMAKE distclean || exit 102 fi 103 104 ./configure $DMAKE_CONF || exit 105 106 ## invoke the gnu make command set by configure. 107 $GNUMAKE || exit 108 109 110 # Deploy the dmake executable to solenv 111 cp -f "$tmp_build_dir/$dmake_directory_name/dmake$EXEEXT" "$SOLARENV/$OUTPATH/bin/dmake$EXEEXT" || exit 112 echo "" 113 echo "dmake successfully built and copied to $SOLARENV/$OUTPATH/bin/dmake$EXEEXT" 114 echo "" 115 116 # Clean up. Note that this is skipped when one of the exits is executed above. 117 rm -rf "$tmp_build_dir" 118 119else 120 121 if test -x "$SOLARENV/$OUTPATH/bin/dmake$EXEEXT"; then 122 echo "" 123 echo "dmake present in $SOLARENV/$OUTPATH/bin/dmake$EXEEXT" 124 fi 125 126fi
|
| |