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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
#! /bin/bash

if [ ! -f 'build.sh' ]; then
	echo 'ERROR: This script must be run from the directory it is in' >&2

	exit 1
fi
if [ -z "${TCLVERS}" ]; then
	echo 'ERROR: The TCLVERS environment variable is not set' >&2

	exit 1
fi

MEMCHANVERS="2.2.1"
SRC="src/memchan-${ITCLVERS}.tar.gz"
SRCURL="http://sourceforge.net/projects/memchan/files/memchan/${MEMCHANVERS}/memchan-${MEMCHANVERS}.tar.gz/download"
BUILDDIR="$(pwd)/build/memchan-${MEMCHANVERS}"
OUTDIR="$(pwd)/out"
INSTDIR="$(pwd)/inst"
export MEMCHANVERS SRC SRCURL BUILDDIR OUTDIR INSTDIR

rm -rf 'build' 'out' 'inst'
mkdir 'build' 'out' 'inst' || exit 1

if [ ! -f "${SRC}" ]; then
	mkdir 'src' >/dev/null 2>/dev/null

	wget -O "${SRC}" "${SRCURL}" || exit 1
fi

(
	cd 'build' || exit 1

	gzip -dc "../${SRC}" | tar -xf -

	cd "${BUILDDIR}" || exit 1

	# This fixes a well-known, long-standing failure in many Tcl
	# configure scripts
	sed "s@ /etc/\\.relid'@ '/etc/.relid'@" configure > configure.new
	cat configure.new > configure
	rm -f configure.new

	cd generic || exit 1

	../configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}

	"${MAKE:-make}" || exit 1

	"${MAKE:-make}" install
) || exit 1

exit 0

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

28
29
30
31
32
33
34
35

36


37
38
39



40



41

42
43
44
28
29
30
31
32
33
34
35
36
37
38
39
40


41
42
43
44
45
46
47
48
49
50
51
52








+

+
+

-
-
+
+
+

+
+
+

+



	wget -O "${SRC}" "${SRCURL}" || exit 1
fi

(
	cd 'build' || exit 1

	gzip -dc "../${SRC}" | tar -xf -


	cd "${BUILDDIR}/unix" || exit 1

	# Build static libraries for linking against Tclkit
	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}

	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" install
	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" distclean

	# Build shared object version (only used for non-Kit loading)
	./configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" || exit 1
	"${MAKE:-make}" tcllibdir="${INSTDIR}/lib" install

) || exit 1

exit 0

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

30
31
32
33
34
35
36
37
38
39
40


41

42



43
44
45
46
47

48
49
50
30
31
32
33
34
35
36

37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

52
53
54
55







-



+
+

+

+
+
+




-
+




(
	cd 'build' || exit 1

	gzip -dc "../${SRC}" | tar -xf -

	cd "${BUILDDIR}" || exit 1
	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}

	cp generic/vfs.c .

	# Build static version
	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
	"${MAKE:-make}" || exit 1
	"${MAKE:-make}" install

	# Build shared version
	./configure --enable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
	"${MAKE:-make}" || exit 1
	"${MAKE:-make}" install

	mkdir "${OUTDIR}/lib" || exit 1
	cp -r "${INSTDIR}/lib"/vfs*/ "${OUTDIR}/lib/"
	rm -f "${OUTDIR}/lib"/vfs*/*.a
	rm -f "${OUTDIR}/lib"/vfs*/*.a "${OUTDIR}/lib"/vfs*/*.so
) || exit 1

exit 0