Check-in [a66d18a60b]
Overview
Comment:Updated to build shared objects of Mk4tcl and Tclvfs

Added memchan package (needed for tclvfs)

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:a66d18a60b2be2bc4d4ee503c0d856531b050825
User & Date: rkeene on 2010-09-26 04:37:10
Other Links: manifest | tags
Context
2010-09-26
04:37
Added kitsh code check-in: 9315fecb01 user: rkeene tags: trunk
04:37
Updated to build shared objects of Mk4tcl and Tclvfs

Added memchan package (needed for tclvfs) check-in: a66d18a60b user: rkeene tags: trunk

04:37
Switched Tk and Itcl to dynamic linking check-in: 466fa75705 user: rkeene tags: trunk
Changes

Added memchan/build.sh version [9c84b59feb].

            1  +#! /bin/bash
            2  +
            3  +if [ ! -f 'build.sh' ]; then
            4  +	echo 'ERROR: This script must be run from the directory it is in' >&2
            5  +
            6  +	exit 1
            7  +fi
            8  +if [ -z "${TCLVERS}" ]; then
            9  +	echo 'ERROR: The TCLVERS environment variable is not set' >&2
           10  +
           11  +	exit 1
           12  +fi
           13  +
           14  +MEMCHANVERS="2.2.1"
           15  +SRC="src/memchan-${ITCLVERS}.tar.gz"
           16  +SRCURL="http://sourceforge.net/projects/memchan/files/memchan/${MEMCHANVERS}/memchan-${MEMCHANVERS}.tar.gz/download"
           17  +BUILDDIR="$(pwd)/build/memchan-${MEMCHANVERS}"
           18  +OUTDIR="$(pwd)/out"
           19  +INSTDIR="$(pwd)/inst"
           20  +export MEMCHANVERS SRC SRCURL BUILDDIR OUTDIR INSTDIR
           21  +
           22  +rm -rf 'build' 'out' 'inst'
           23  +mkdir 'build' 'out' 'inst' || exit 1
           24  +
           25  +if [ ! -f "${SRC}" ]; then
           26  +	mkdir 'src' >/dev/null 2>/dev/null
           27  +
           28  +	wget -O "${SRC}" "${SRCURL}" || exit 1
           29  +fi
           30  +
           31  +(
           32  +	cd 'build' || exit 1
           33  +
           34  +	gzip -dc "../${SRC}" | tar -xf -
           35  +
           36  +	cd "${BUILDDIR}" || exit 1
           37  +
           38  +	# This fixes a well-known, long-standing failure in many Tcl
           39  +	# configure scripts
           40  +	sed "s@ /etc/\\.relid'@ '/etc/.relid'@" configure > configure.new
           41  +	cat configure.new > configure
           42  +	rm -f configure.new
           43  +
           44  +	cd generic || exit 1
           45  +
           46  +	../configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
           47  +
           48  +	"${MAKE:-make}" || exit 1
           49  +
           50  +	"${MAKE:-make}" install
           51  +) || exit 1
           52  +
           53  +exit 0

Modified mk4tcl/build.sh from [ce2eeffdfa] to [4b3c985883].

    28     28   	wget -O "${SRC}" "${SRCURL}" || exit 1
    29     29   fi
    30     30   
    31     31   (
    32     32   	cd 'build' || exit 1
    33     33   
    34     34   	gzip -dc "../${SRC}" | tar -xf -
           35  +
    35     36   
    36     37   	cd "${BUILDDIR}/unix" || exit 1
           38  +
           39  +	# Build static libraries for linking against Tclkit
    37     40   	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
    38         -
    39     41   	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
           42  +	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" install
           43  +	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" distclean
    40     44   
           45  +	# Build shared object version (only used for non-Kit loading)
           46  +	./configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
           47  +	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
    41     48   	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" install
           49  +
    42     50   ) || exit 1
    43     51   
    44     52   exit 0

Modified tclvfs/build.sh from [949945531f] to [f64effe9ee].

    30     30   
    31     31   (
    32     32   	cd 'build' || exit 1
    33     33   
    34     34   	gzip -dc "../${SRC}" | tar -xf -
    35     35   
    36     36   	cd "${BUILDDIR}" || exit 1
    37         -	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
    38     37   
    39     38   	cp generic/vfs.c .
    40     39   
           40  +	# Build static version
           41  +	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
    41     42   	"${MAKE:-make}" || exit 1
           43  +	"${MAKE:-make}" install
    42     44   
           45  +	# Build shared version
           46  +	./configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
           47  +	"${MAKE:-make}" || exit 1
    43     48   	"${MAKE:-make}" install
    44     49   
    45     50   	mkdir "${OUTDIR}/lib" || exit 1
    46     51   	cp -r "${INSTDIR}/lib"/vfs*/ "${OUTDIR}/lib/"
    47         -	rm -f "${OUTDIR}/lib"/vfs*/*.a
           52  +	rm -f "${OUTDIR}/lib"/vfs*/*.a "${OUTDIR}/lib"/vfs*/*.so
    48     53   ) || exit 1
    49     54   
    50     55   exit 0