Check-in [0616230931]
Overview
Comment:Updated to support supplying a TCLKIT environment variable

Updated documentation with more examples and expanded synopsis

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 0616230931430cf1384e8be533cb647d330e0480
User & Date: rkeene on 2010-09-26 04:39:27
Other Links: manifest | tags
Context
2010-09-26
04:39
Updated documentation check-in: 1eb97d8535 user: rkeene tags: trunk
04:39
Updated to support supplying a TCLKIT environment variable

Updated documentation with more examples and expanded synopsis check-in: 0616230931 user: rkeene tags: trunk

04:39
KitCreator 0.0.6.x

Updated pre-release build script to error out if configure fails. check-in: 65a6c41656 user: rkeene tags: trunk, 0.0.6

Changes

Modified README from [87fce2e9a0] to [ed4af58f56].

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





This will build a Tclkit named "tclkit-<version>".

Usage:
	kitcreator {<version> | cvs_<cvsTag> | clean | distclean}








	Default is to create a Tclkit from Tcl version 8.4.19

Examples:
	1. Create a Tclkit for Tcl 8.5.8:
		$ ./kitcreator 8.5.8

	2. Create a Tclkit for Tcl from CVS HEAD:
		$ ./kitcreator cvs_HEAD























	3. To clean up post-build:
		$ ./kitcreator clean

Environment variables:
	1. MAKE
		Specifies the tool you wish to be called to build targets
		from a Makefile.  This script is generally more well tested
		with GNU Make.

	2. PATCH
		Specifies the tool you wish to be called to apply unified
		diff patches.  This script is generally more well tested with
		GNU Patch. 








|
>
>
>
>
>
>
>





|


|

>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
|











>
>
>
>
>
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
54
55
56
57
58
59
60
61
This will build a Tclkit named "tclkit-<version>".

Usage:
	kitcreator [{<version> | cvs_<cvsTag> | clean | distclean}]
	           [<configure_options...>]

	Where:
		version            is a Tcl version number (e.g., 8.4.19)
		cvsTag             is a CVS release tag (e.g., HEAD)
		configure_options  are options to pass to subordinate configure
		                   scripts (e.g., --enable-64bit)

	Default is to create a Tclkit from Tcl version 8.4.19

Examples:
	1. Create a Tclkit for Tcl 8.5.8:
		a. $ ./kitcreator 8.5.8

	2. Create a Tclkit for Tcl from CVS HEAD:
		a. $ ./kitcreator cvs_HEAD

	3. Compile a 64-bit Tclkit:
		a. $ ./kitcreator --enable-64bit

	4. Cross-compile a Tclkit:
		a. Bootstrap (optional, you can use an existing Tclkit):
			i.   $ ./kitcreator
			ii.  $ mv tclkit-8.4.19 tclkit-local
			iii. $ TCLKIT="`pwd`/tclkit-local"
			iv.  $ export TCLKIT
		b. Cross-compile:
			i.   $ CC=mipsel-linux-uclibc-gcc
			ii.  $ AR=mipsel-linux-uclibc-ar
			iii. $ RANLIB=mipsel-linux-uclibc-ranlib
			iv.  $ export CC AR RANLIB
		v.   $ ./kitcreator --host=mipsel-linux-uclibc

	5. Compile a 64-bit Tclkit 8.5.8 using SunStudio 12.1 on Solaris/x86:
		a. $ CC='/opt/sunstudio12.1/bin/cc -m64'
		b. $ CXX='/opt/sunstudio12.1/bin/CC -m64'
		c. $ export CC CXX
		d. $ ./kitcreator 8.5.8 --enable-64bit

	6. To clean up post-build:
		a. $ ./kitcreator clean

Environment variables:
	1. MAKE
		Specifies the tool you wish to be called to build targets
		from a Makefile.  This script is generally more well tested
		with GNU Make.

	2. PATCH
		Specifies the tool you wish to be called to apply unified
		diff patches.  This script is generally more well tested with
		GNU Patch. 

	3. TCLKIT
		Specify the path to a Tclkit that is runnable on the current
		system.  The default is "tclkit".  A working tclkit is required
		for cross-compiling Tclkits.

Modified kitsh/build.sh from [6cd5958958] to [75bca485ac].

46
47
48
49
50
51
52


53
54
55
56
57
58
59
60
61
62
63
	## Rename the "vfs" package directory to what "boot.tcl" expects
	mv 'starpack.vfs/lib'/vfs* 'starpack.vfs/lib/vfs'

	## Install "boot.tcl"
	cp 'boot.tcl' 'starpack.vfs/'

	# Intall VFS onto kit


	if echo 'exit 0' | tclkit >/dev/null 2>/dev/null; then
		## Install using existing Tclkit
		### Call installer
		tclkit installvfs.tcl kit starpack.vfs
	else
		## Bootstrap (cannot cross-compile)
		### Call installer
		cp kit runkit
		echo 'set argv [list kit starpack.vfs]' > setup.tcl
		echo 'source installvfs.tcl' >> setup.tcl
		echo | ./runkit







>
>
|


|







46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
	## Rename the "vfs" package directory to what "boot.tcl" expects
	mv 'starpack.vfs/lib'/vfs* 'starpack.vfs/lib/vfs'

	## Install "boot.tcl"
	cp 'boot.tcl' 'starpack.vfs/'

	# Intall VFS onto kit
	## Determine if we have a Tclkit to do this work
	TCLKIT="${TCLKIT:-tclkit}"
	if echo 'exit 0' | "${TCLKIT}" >/dev/null 2>/dev/null; then
		## Install using existing Tclkit
		### Call installer
		"${TCLKIT}" installvfs.tcl kit starpack.vfs
	else
		## Bootstrap (cannot cross-compile)
		### Call installer
		cp kit runkit
		echo 'set argv [list kit starpack.vfs]' > setup.tcl
		echo 'source installvfs.tcl' >> setup.tcl
		echo | ./runkit