Check-in [49f1d0e042]
Overview
Comment:Fixed 64-bit Tcl 8.5.x compilation on Solaris

Fixed bootstrap build issue on Tcl 8.5.x

Minor documentation update

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 49f1d0e0426aae061441e87b885c0c7c9d640393
User & Date: rkeene on 2010-09-26 04:39:35
Other Links: manifest | tags
Context
2010-09-26
04:39
Updated to try linking to Sun Studio before GNU Libstdc++

Updated to fix FFF 484 to make resultant kit work on 64-bit big endian systems check-in: cb76e549e7 user: rkeene tags: trunk

04:39
Fixed 64-bit Tcl 8.5.x compilation on Solaris

Fixed bootstrap build issue on Tcl 8.5.x

Minor documentation update check-in: 49f1d0e042 user: rkeene tags: trunk

04:39
Updated documentation check-in: 1eb97d8535 user: rkeene tags: trunk
Changes

Modified README from [60e65cba00] to [7af6d9d17c].

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
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







+
+
+
-
+


-
+


-
+


-
+












-
+






-
+







		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:
		a. $ ./kitcreator

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

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

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

	4. Cross-compile a Tclkit:
	5. 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:
	6. 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. $ PATCH='gpatch'
		c. $ export CC CXX PATCH
		d. $ ./kitcreator 8.5.8 --enable-64bit

	6. To clean up post-build:
	7. 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.

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

57
58
59
60
61
62
63

64
65
66
67
68
69
70
71
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72







+








		### 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 'if {[catch { clock seconds }]} { proc clock args { return 0 } }' >> setup.tcl
		echo 'source installvfs.tcl' >> setup.tcl
		echo | ./runkit
	fi

	exit 0
) || exit 1

exit 0

Modified kitsh/buildsrc/kitsh-0.0/Makefile.in from [37da0c70cd] to [43b96c5515].

1
2
3


4
5
6
7
8
9
10
1


2
3
4
5
6
7
8
9
10

-
-
+
+







CC = @CC@
CFLAGS = @CFLAGS@ @DEFS@
CPPFLAGS = @CPPFLAGS@
CFLAGS = @CFLAGS@ @DEFS@ -DSTDC_HEADERS=1
CPPFLAGS = @CPPFLAGS@ @DEFS@ -DSTDC_HEADERS=1
LDFLAGS = @LDFLAGS@
LIBS = @LIBS@
ARCHS = @ARCHS@
OBJS = kitInit.o main.o pwb.o rechan.o zlib.o

all: kit