Index: .fossil-settings/ignore-glob ================================================================== --- .fossil-settings/ignore-glob +++ .fossil-settings/ignore-glob @@ -4,10 +4,22 @@ server/buildpkgs/Tclx/build/* server/buildpkgs/Tclx/out server/buildpkgs/Tclx/out/* server/buildpkgs/Tclx/src server/buildpkgs/Tclx/src/* +server/buildpkgs/Tk84/build +server/buildpkgs/Tk84/build/* +server/buildpkgs/Tk84/out +server/buildpkgs/Tk84/out/* +server/buildpkgs/Tk84/src +server/buildpkgs/Tk84/src/* +server/buildpkgs/Tk85/build +server/buildpkgs/Tk85/build/* +server/buildpkgs/Tk85/out +server/buildpkgs/Tk85/out/* +server/buildpkgs/Tk85/src +server/buildpkgs/Tk85/src/* server/buildpkgs/dbus-tcl/build server/buildpkgs/dbus-tcl/build/* server/buildpkgs/dbus-tcl/out server/buildpkgs/dbus-tcl/out/* server/buildpkgs/dbus-tcl/src ADDED server/buildpkgs/Tk84/build.sh Index: server/buildpkgs/Tk84/build.sh ================================================================== --- /dev/null +++ server/buildpkgs/Tk84/build.sh @@ -0,0 +1,55 @@ +#! /bin/bash + +# Define parameters +VERS=8.4.19 +SRC="src/tk${VERS}-src.tar.gz" +SRCURL="http://prdownloads.sourceforge.net/tcl/tk${VERS}-src.tar.gz" +BUILDDIR="tk${VERS}" +export VERS SRC SRCURL BUILDDIR + +# Load common functions +source ../common.sh + +# Do not build if the "tcl" platform has been requested +not_platforms 'tcl' + +# Download source +download_src + +# Build package +( + rm -rf build + mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null + mkdir build + + cd build/ || exit 1 + + gzip -dc "../${SRC}" | tar -xf - + cd "${BUILDDIR}" || exit 1 + + TCL_PLAT_BUILD_DIR="$(basename "${TCLBUILDDIR}")" + + cd "${TCL_PLAT_BUILD_DIR}" || exit 1 + + bash ./configure --enable-shared --with-tcl="${TCLCONFIGDIR}" --prefix="${PLATDIR}" --libdir="${PLATDIR}" --bindir="${PLATDIR}" ${CONFIGUREEXTRA} + + ${MAKE:-make} || exit 1 + + ${MAKE:-make} install || exit 1 + + mv "${PLATDIR}"/lib/tk8.4/* "${PLATDIR}/" + + cat << \_EOF_ > "${PLATDIR}/pkgIndex.tcl" +if {[package vcompare [package provide Tcl] 8.4] != 0} { return } +package ifneeded Tk 8.4 "[list set tk_library $dir]; [list load [file join $dir libtk8.4.so] Tk]" +_EOF_ + + rm -f "${PLATDIR}"/*.a + rm -f "${PLATDIR}/tkConfig.sh" "${PLATDIR}/wish8.4" + rm -rf "${PLATDIR}/man" "${PLATDIR}/include" "${PLATDIR}/tk8.4" "${PLATDIR}/demos" "${PLATDIR}/lib" +) || exit 1 + +# Create metadata +../create_teapot "${PLATDIR}/teapot.txt" "Tk" "${VERS}" "${SRCURL}" "${PLATFORM}" "Tcl ${VERS}" "Cross-platform widget toolkit that provides a library of basic elements for building a graphical user interface (GUI)." + +exit 0 ADDED server/buildpkgs/Tk85/build.sh Index: server/buildpkgs/Tk85/build.sh ================================================================== --- /dev/null +++ server/buildpkgs/Tk85/build.sh @@ -0,0 +1,58 @@ +#! /bin/bash + +# Define parameters +VERS=8.5.10 +SRC="src/tk${VERS}-src.tar.gz" +SRCURL="http://prdownloads.sourceforge.net/tcl/tk${VERS}-src.tar.gz" +BUILDDIR="tk${VERS}" +export VERS SRC SRCURL BUILDDIR + +# Load common functions +source ../common.sh + +# Do not build if the "tcl" platform has been requested +not_platforms 'tcl' + +# Require Tcl 8.5 to build +setup_tcl85 + +# Download source +download_src + +# Build package +( + rm -rf build + mkdir -p "${PLATDIR}" >/dev/null 2>/dev/null + mkdir build + + cd build/ || exit 1 + + gzip -dc "../${SRC}" | tar -xf - + cd "${BUILDDIR}" || exit 1 + + TCL_PLAT_BUILD_DIR="$(basename "${TCLBUILDDIR}")" + + cd "${TCL_PLAT_BUILD_DIR}" || exit 1 + + bash ./configure --enable-shared --with-tcl="${TCLCONFIGDIR}" --prefix="${PLATDIR}" --libdir="${PLATDIR}" --bindir="${PLATDIR}" ${CONFIGUREEXTRA} + + ${MAKE:-make} || exit 1 + + ${MAKE:-make} install || exit 1 + + cat << \_EOF_ | sed 's|@@VERS@@|'"${VERS}"'|g' > "${PLATDIR}/pkgIndex.tcl" +if {[catch {package present Tcl 8.5.0}]} { return } +package ifneeded Tk @@VERS@@ "[list set tk_library $dir]; [list load [file join $dir libtk8.5.so] Tk]" +_EOF_ + + mv "${PLATDIR}"/lib/tk8.5/* "${PLATDIR}/" + + rm -f "${PLATDIR}"/*.a + rm -f "${PLATDIR}/tkConfig.sh" "${PLATDIR}/wish8.5" + rm -rf "${PLATDIR}/man" "${PLATDIR}/include" "${PLATDIR}/tk8.5" "${PLATDIR}/demos" "${PLATDIR}/lib" +) || exit 1 + +# Create metadata +../create_teapot "${PLATDIR}/teapot.txt" "Tk" "${VERS}" "${SRCURL}" "${PLATFORM}" "Tcl ${VERS}" "Cross-platform widget toolkit that provides a library of basic elements for building a graphical user interface (GUI)." + +exit 0