Index: .fossil-settings/ignore-glob ================================================================== --- .fossil-settings/ignore-glob +++ .fossil-settings/ignore-glob @@ -4,10 +4,12 @@ server/buildpkgs/Tclx/build/* server/buildpkgs/Tclx/out server/buildpkgs/Tclx/out/* server/buildpkgs/Tclx/src server/buildpkgs/Tclx/src/* +server/buildpkgs/tcl +server/buildpkgs/tcl/* server/buildpkgs/tclpkgs-*.tar.* server/buildpkgs/tclpkgs-*.tar.*/* server/buildpkgs/tls/build server/buildpkgs/tls/build/* server/buildpkgs/tls/out Index: server/buildpkgs/Tclx/build.sh ================================================================== --- server/buildpkgs/Tclx/build.sh +++ server/buildpkgs/Tclx/build.sh @@ -24,40 +24,10 @@ if [ ! -f "${SRC}" ]; then mkdir src >/dev/null 2>/dev/null wget -O "${SRC}" "${SRCURL}" || exit 1 fi - -TCLPRIVATE="${TCLCONFIGDIR}/../include/tcl-private" -if [ ! -d "${TCLPRIVATE}" ]; then - if [ ! -f src/tcl8.4.19.tar.gz ]; then - wget -O src/tcl8.4.19.tar.gz http://prdownloads.sourceforge.net/tcl/tcl8.4.19-src.tar.gz - fi - - ( - mkdir build >/dev/null 2>/dev/null - cd build || exit 1 - gzip -dc ../src/tcl8.4.19.tar.gz | tar -xf - - ) - - TCLPRIVATE="$(pwd)/build/tcl8.4.19" - export TCLPRIVATE - - ( - cd "${TCLPRIVATE}/unix" || exit 1 - - ./configure - - ${MAKE:-make} - ) - - TCLCONFIGDIR="${TCLPRIVATE}/unix" -fi -echo "TCLPRIVATE = \"${TCLPRIVATE}\"" -CFLAGS="-I${TCLPRIVATE} -I${TCLPRIVATE}/generic -I${TCLPRIVATE}/unix ${CFLAGS}" -export CFLAGS - ( cd build/ || exit 1 bzip2 -dc "../${SRC}" | tar -xf - Index: server/buildpkgs/build_all.sh ================================================================== --- server/buildpkgs/build_all.sh +++ server/buildpkgs/build_all.sh @@ -16,26 +16,71 @@ DISTCLEAN=1 fi export CLEANONLY DISTCLEAN # Determine path to "tclConfig.sh" -TCLCONFIGDIR=$( - ( - echo "${LD_LIBRARY_PATH}" | tr ':' "\n" - cat /etc/ld.so.conf 2>/dev/null - crle 2>/dev/null | grep '^ *Default Library Path' | sed 's@^ *Default Library Path[^:]*:[^:]*/@/@' | tr ':' "\n" - ) | grep '^/' | while read chklibdir; do - if [ -f "${chklibdir}/tclConfig.sh" ]; then - echo "${chklibdir}" - break - fi - done -) -if [ -z "${TCLCONFIGDIR}" ]; then - TCLCONFIGDIR="/usr/lib" -fi -export TCLCONFIGDIR +rm -rf tcl/build +if [ "${DISTCLEAN}" = "1" ]; then + rm -rf tcl +fi + +if [ "${CLEANONLY}" = "0" ]; then + TCLVERS="8.4.19" + TCLPRIVATE="$(pwd)/tcl/build/tcl${TCLVERS}" + + 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 + 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 - + + cd "${TCLPRIVATE}/unix" || exit 1 + + ./configure --enable-shared + + ${MAKE:-make} + ) > "tcl/build/build.log" 2>&1 + + if [ -d "${TCLPRIVATE}" -a -f "${TCLPRIVATE}/unix/tclConfig.sh" ]; then + TCLCONFIGDIR="${TCLPRIVATE}/unix" + else + unset TCLPRIVATE + + TCLCONFIGDIR=$( + ( + echo "${LD_LIBRARY_PATH}" | tr ':' "\n" + cat /etc/ld.so.conf 2>/dev/null + crle 2>/dev/null | grep '^ *Default Library Path' | sed 's@^ *Default Library Path[^:]*:[^:]*/@/@' | tr ':' "\n" + ) | grep '^/' | while read chklibdir; do + if [ -f "${chklibdir}/tclConfig.sh" ]; then + echo "${chklibdir}" + break + fi + done + ) + if [ -z "${TCLCONFIGDIR}" ]; then + TCLCONFIGDIR="/usr/lib" + fi + + TCLPRIVATE="${TCLCONFIGDIR}/../include/tcl-private" + fi + + ADDFLAGS="-I${TCLPRIVATE} -I${TCLPRIVATE}/generic -I${TCLPRIVATE}/unix" + CFLAGS="${ADDFLAGS} ${CFLAGS}" + CPPFLAGS="${ADDFLAGS} ${CPPFLAGS}" + + unset TCLVERS + unset ADDFLAGS + export TCLCONFIGDIR TCLPRIVATE CFLAGS CPPFLAGS +fi # Determine platform PLATFORM="$(./platform)" export PLATFORM