Overview
Comment: | Fixed some bugs in cross-compile builds |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
9fbb0ef3cab68195e4f2cbe5038a3233 |
User & Date: | rkeene on 2011-09-10 22:29:21 |
Other Links: | manifest | tags |
Context
2011-09-11
| ||
23:59 | Updated to CTk 8.0.2801 to fix issues with Tcl 8.6 check-in: c80dceaca0 user: rkeene tags: trunk | |
2011-09-10
| ||
22:29 | Fixed some bugs in cross-compile builds check-in: 9fbb0ef3ca user: rkeene tags: trunk | |
22:28 | Updated to use Tcl 8.5/8.4 depending on which is built Added script to cross-compile for various platforms check-in: fb61490a11 user: rkeene tags: trunk | |
Changes
Modified server/buildpkgs/build_all.sh from [feba34159a] to [5e7c9aafc7].
︙ | ︙ | |||
32 33 34 35 36 37 38 | rm -rf tcl fi if [ "${CLEANONLY}" = "0" ]; then PROJROOTDIR="$(pwd)" export PROJROOTDIR | | > > > > | > > > > > > | > > > > > > > > > | | 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 | rm -rf tcl fi if [ "${CLEANONLY}" = "0" ]; then PROJROOTDIR="$(pwd)" export PROJROOTDIR for TCLVERS in 8.5.10 8.4.19; do TCLSHORTVERS="$(echo "${TCLVERS}" | cut -f 1-2 -d '.')" TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}" TCLINSTDIR="$(pwd)/tcl/inst-${TCLSHORTVERS}" export TCLVERS TCLPRIVATE TCLINSTDIR if [ -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then echo "Skipping build of Tcl ${TCLVERS} (already found)" continue fi mkdir tcl tcl/build >/dev/null 2>/dev/null # Clean this up so that other platforms don't use it rm -f "${PROJROOTDIR}/platform.magic.dir" if [ ! -f "tcl/src/tcl${TCLVERS}.tar.gz" ]; then mkdir tcl/src >/dev/null 2>/dev/null wget -o /dev/null -O "tcl/src/tcl${TCLVERS}.tar.gz" "http://prdownloads.sourceforge.net/tcl/tcl${TCLVERS}-src.tar.gz" fi echo "Building Tcl ${TCLVERS}" ( mkdir tcl/build >/dev/null 2>/dev/null cd tcl/build || exit 1 gzip -dc "../src/tcl${TCLVERS}.tar.gz" | tar -xf - # Source fix-ups ## DDE and Reg can fail to compile, but we don't care echo '' > "${TCLPRIVATE}/win/tclWinDde.c" echo '' > "${TCLPRIVATE}/win/tclWinReg.c" ## Long-standing bug in Tcl echo '#undef strtod' > "${TCLPRIVATE}/compat/strtod.c.new" cat "${TCLPRIVATE}/compat/strtod.c" >> "${TCLPRIVATE}/compat/strtod.c.new" cat "${TCLPRIVATE}/compat/strtod.c.new" > "${TCLPRIVATE}/compat/strtod.c" rm -f "${TCLPRIVATE}/compat/strtod.c.new" for dir in unix win macosx; do cd "${TCLPRIVATE}/${dir}" || exit 1 echo " Executing: ./configure --enable-threads ${CONFIGUREEXTRA} --prefix=\"${TCLINSTDIR}\"" ./configure --enable-threads ${CONFIGUREEXTRA} --prefix="${TCLINSTDIR}" echo " Executing: ${MAKE:-make}" ${MAKE:-make} || ( rm -f tclConfig.sh exit 1 ) || continue ## Kludge to make Tcl install when cross-compiling. sed 's@^${TCL_EXE}@blah@' Makefile > Makefile.new cat Makefile.new > Makefile rm -f Makefile.new echo " Executing: ${MAKE:-make} install" ${MAKE:-make} install TCL_EXE="../../../../../../../../../../../../../../../../../$(which "${TCLSH_NATIVE:-tclsh}")" || break LD_LIBRARY_PATH=".:${LD_LIBRARY_PATH}" LD_RUN_PATH=".:${LD_RUN_PATH}" export LD_LIBRARY_PATH LD_RUN_PATH file tclsh tclsh*.exe 2>/dev/null | grep -iv 'No such file' > "${PROJROOTDIR}/platform.magic.file" if [ -f tclsh*.exe ]; then |
︙ | ︙ | |||
98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | echo "Failed to build Tcl. See \"./tcl/build/build-${TCLVERS}.log\"" >&2 echo 'Aborting.' >&2 exit 1 ) || exit 1 ( TCLBUILDDIR="$(cat "${PROJROOTDIR}/platform.magic.dir")" export TCLBUILDDIR if [ -d "${TCLINSTDIR}" -a -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then TCLCONFIGDIR="${TCLINSTDIR}/lib" elif [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then TCLCONFIGDIR="${TCLBUILDDIR}" else echo 'Unable to find appropriate tclConfig.sh, aborting' >&2 | > > > > > > | 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 | echo "Failed to build Tcl. See \"./tcl/build/build-${TCLVERS}.log\"" >&2 echo 'Aborting.' >&2 exit 1 ) || exit 1 ( rm -f "${PROJROOTDIR}/platform.magic.env-${TCLSHORTVERS}" TCLBUILDDIR="$(cat "${PROJROOTDIR}/platform.magic.dir")" export TCLBUILDDIR if [ -z "${TCLBUILDDIR}" ]; then TCLBUILDDIR="/dev/null" fi if [ -d "${TCLINSTDIR}" -a -f "${TCLINSTDIR}/lib/tclConfig.sh" ]; then TCLCONFIGDIR="${TCLINSTDIR}/lib" elif [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then TCLCONFIGDIR="${TCLBUILDDIR}" else echo 'Unable to find appropriate tclConfig.sh, aborting' >&2 |
︙ | ︙ |