@@ -21,21 +21,22 @@ CONFIGUREEXTRA="$@" export CONFIGUREEXTRA # Determine path to "tclConfig.sh" -rm -rf tcl/build +rm -rf tcl/build tcl/inst rm -f platform.magic.* if [ "${DISTCLEAN}" = "1" ]; then rm -rf tcl fi if [ "${CLEANONLY}" = "0" ]; then TCLVERS="8.4.19" TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}" PROJROOTDIR="$(pwd)" - export TCLVERS TCLPRIVATE PROJROOTDIR + TCLINSTDIR="$(pwd)/tcl/inst" + export TCLVERS TCLPRIVATE PROJROOTDIR TCLINSTDIR mkdir tcl tcl/build >/dev/null 2>/dev/null if [ ! -f "tcl/src/tcl${TCLVERS}.tar.gz" ]; then mkdir tcl/src >/dev/null 2>/dev/null @@ -50,13 +51,14 @@ for dir in unix win macosx; do cd "${TCLPRIVATE}/${dir}" || exit 1 echo " Executing: ./configure ${CONFIGUREEXTRA}" - ./configure --disable-threads ${CONFIGUREEXTRA} + ./configure --disable-threads ${CONFIGUREEXTRA} --prefix="${TCLINSTDIR}" ${MAKE:-make} || continue + ${MAKE:-make} install || break LD_LIBRARY_PATH=".:${LD_LIBRARY_PATH}" LD_RUN_PATH=".:${LD_RUN_PATH}" export LD_LIBRARY_PATH LD_RUN_PATH @@ -77,11 +79,13 @@ ) TCLBUILDDIR="$(cat "${PROJROOTDIR}/platform.magic.dir")" export TCLBUILDDIR - if [ -d "${TCLBUILDDIR}" -a -f "${TCLBUILDDIR}/tclConfig.sh" ]; then + 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 unset TCLPRIVATE TCLCONFIGDIR=$( @@ -101,18 +105,23 @@ fi TCLPRIVATE="$(dirname "${TCLCONFIGDIR}")/include/tcl-private" fi - ADDFLAGS="-I${TCLPRIVATE} -I${TCLPRIVATE}/generic -I${TCLBUILDDIR}" + ADDFLAGS="" + if [ -n "${TCLPRIVATE}" ]; then + ADDFLAGS="${ADDFLAGS} -I${TCLPRIVATE} -I${TCLPRIVATE}/generic" + fi + if [ -n "${TCLBUILDDIR}" ]; then + ADDFLAGS="${ADDFLAGS} -I${TCLBUILDDIR}" + fi CFLAGS="${ADDFLAGS} ${CFLAGS}" CPPFLAGS="${ADDFLAGS} ${CPPFLAGS}" unset TCLVERS unset ADDFLAGS - unset TCLBUILDDIR - export TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS + export TCLBUILDDIR TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS fi # Determine platform if [ -z "${FORCE_PLATFORM}" ]; then PLATFORM="$(./platform)"