Check-in [83003c57a9]
Overview
SHA1:83003c57a9900966d685818e4ff1564738358769
Date: 2010-10-01 04:41:49
User: rkeene
Comment:Updated to link DLL and wish/tclsh against tkbase.res.o from Wish if building Tk
Timelines: family | ancestors | descendants | both | trunk
Downloads: Tarball | ZIP archive
Other Links: files | file ages | folders | manifest
Tags And Properties
Context
2010-10-01
20:16
[977dc16709] Updated KitCreator to only build KitDLL or Tclkit, not both in a single invocation. If KitDLL is requested, no Tclkit will be built. (user: rkeene, tags: trunk)
04:41
[83003c57a9] Updated to link DLL and wish/tclsh against tkbase.res.o from Wish if building Tk (user: rkeene, tags: trunk)
2010-09-30
17:35
[69535ebd14] Fixed issue with reading binary files from KitDLL VFS (user: rkeene, tags: trunk)
Changes

Modified kitdll/build.sh from [47f9c339e5] to [e1e2ad264c].

69
70
71
72
73
74
75






















76
77
78
79
80
81
82
	cp -r "${OTHERPKGSDIR}"/*/out/* 'starpack.vfs/'

	## 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/'























	# Build KitDLL
	echo "Running: ./configure --with-tcl=\"${TCLCONFIGDIR}\" ${CONFIGUREEXTRA}"
	./configure --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}

	echo "Running: ${MAKE:-make}"
	${MAKE:-make} TCLSH_NATIVE="${TCLSH_NATIVE}" || exit 1







>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>







69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
	cp -r "${OTHERPKGSDIR}"/*/out/* 'starpack.vfs/'

	## 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/'

	# Include extra objects as required
	## Initialize list of extra objects
	EXTRA_OBJS=""

	## Figure out if zlib compiled (if not, the system zlib will be used and we
	## will need to have that present)
	ZLIBDIR="$(cd "${OTHERPKGSDIR}/zlib/inst" 2>/dev/null && pwd)"
	export ZLIBDIR
	if [ -n "${ZLIBDIR}" -a -f "${ZLIBDIR}/lib/libz.a" ]; then
		EXTRA_OBJS="${EXTRA_OBJS} ${ZLIBDIR}/lib/libz.a"
	fi

	## Tk Resources (needed for Win32 support)
	TKDIR="$(cd "${OTHERPKGSDIR}/tk/inst" && pwd)"
	TKRSRC="${TKDIR}/lib/tkbase.res.o"
	if [ -n "${TKDIR}" -a -f "${TKRSRC}" ]; then
		EXTRA_OBJS="${EXTRA_OBJS} ${TKRSRC}"
	fi

	## Export to the environment, to be picked up by the "configure" script
	export EXTRA_OBJS

	# Build KitDLL
	echo "Running: ./configure --with-tcl=\"${TCLCONFIGDIR}\" ${CONFIGUREEXTRA}"
	./configure --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}

	echo "Running: ${MAKE:-make}"
	${MAKE:-make} TCLSH_NATIVE="${TCLSH_NATIVE}" || exit 1

Modified kitdll/buildsrc/kitdll-0.0/Makefile.in from [234d9ecc62] to [0b69684cf7].

3
4
5
6
7
8
9

10
11
12
13
14
15
16
..
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
CPPFLAGS = @CPPFLAGS@ @DEFS@ -DKITDLL_MAKE_LOADABLE=1
WISH_CFLAGS = @WISH_CFLAGS@
LDFLAGS = @LDFLAGS@
SHOBJLDFLAGS = @SHOBJLDFLAGS@
LIBS = @LIBS@
STATICLIBS = @ARCHS@
OBJS = vfs_kitdll_data_tcl.o kitInit.o rechan.o pwb.o

TCLSH_NATIVE = tclsh

# Default target
all: libtclkit.@SHOBJEXT@

# Build targets
## VFS Build
................................................................................
	"$(TCLSH_NATIVE)" ./stringify.tcl vfs_kitdll.tcl > vfs_kitdll.tcl.h

## Extensions
rechan.o: rechan.c
pwb.o: pwb.c

## DLL Build
libtclkit.@SHOBJEXT@: $(OBJS)
	$(CC) $(CPPFLAGS) $(CFLAGS) -o libtclkit.@SHOBJEXT@ $(OBJS) $(LDFLAGS) $(SHOBJLDFLAGS) -Wl,--whole-archive $(STATICLIBS) -Wl,--no-whole-archive $(LIBS)

# Test driver
tclsh.o: tclsh.c
tclsh: tclsh.o libtclkit.@SHOBJEXT@
	$(CC) $(CPPFLAGS) $(CFLAGS) -o tclsh tclsh.o -L. -ltclkit -Wl,-R,`pwd`

wish.o: wish.c
wish: wish.o libtclkit.@SHOBJEXT@
	$(CC) $(CPPFLAGS) $(CFLAGS) $(WISH_CFLAGS) -o wish wish.o -L. -ltclkit -Wl,-R,`pwd`

# Cleanup routeines
clean:
	rm -f libtclkit.@SHOBJEXT@
	rm -f $(OBJS)
	rm -f vfs_kitdll_data_tcl.c
	rm -f vfs_kitdll.tcl.h







>







 







|
|



|
|


|
|







3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
..
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
CPPFLAGS = @CPPFLAGS@ @DEFS@ -DKITDLL_MAKE_LOADABLE=1
WISH_CFLAGS = @WISH_CFLAGS@
LDFLAGS = @LDFLAGS@
SHOBJLDFLAGS = @SHOBJLDFLAGS@
LIBS = @LIBS@
STATICLIBS = @ARCHS@
OBJS = vfs_kitdll_data_tcl.o kitInit.o rechan.o pwb.o
EXTRA_OBJS = @EXTRA_OBJS@
TCLSH_NATIVE = tclsh

# Default target
all: libtclkit.@SHOBJEXT@

# Build targets
## VFS Build
................................................................................
	"$(TCLSH_NATIVE)" ./stringify.tcl vfs_kitdll.tcl > vfs_kitdll.tcl.h

## Extensions
rechan.o: rechan.c
pwb.o: pwb.c

## DLL Build
libtclkit.@SHOBJEXT@: $(OBJS) $(EXTRA_OBJS)
	$(CC) $(CPPFLAGS) $(CFLAGS) -o libtclkit.@SHOBJEXT@ $(OBJS) $(EXTRA_OBJS) $(LDFLAGS) $(SHOBJLDFLAGS) -Wl,--whole-archive $(STATICLIBS) -Wl,--no-whole-archive $(LIBS)

# Test driver
tclsh.o: tclsh.c
tclsh: tclsh.o $(EXTRA_OBJS) libtclkit.@SHOBJEXT@
	$(CC) $(CPPFLAGS) $(CFLAGS) -o tclsh tclsh.o $(EXTRA_OBJS) -L. -ltclkit -Wl,-R,`pwd`

wish.o: wish.c
wish: wish.o $(EXTRA_OBJS) libtclkit.@SHOBJEXT@
	$(CC) $(CPPFLAGS) $(CFLAGS) $(WISH_CFLAGS) -o wish wish.o $(EXTRA_OBJS) -L. -ltclkit -Wl,-R,`pwd`

# Cleanup routeines
clean:
	rm -f libtclkit.@SHOBJEXT@
	rm -f $(OBJS)
	rm -f vfs_kitdll_data_tcl.c
	rm -f vfs_kitdll.tcl.h

Modified kitdll/buildsrc/kitdll-0.0/configure.ac from [2b5889687d] to [b8d6fe9340].

26
27
28
29
30
31
32



33
34
35
36
37
38
39
LIBS="${ARCHS} ${LIBS}"
dnl Check for the ability to get the current system encoding
AC_CHECK_FUNCS(Tcl_GetEncodingNameFromEnvironment Tcl_SetSystemEncoding)
LIBS="${SAVE_LIBS}"

dnl Find required libs
DC_FIND_TCLKIT_LIBS




dnl Check for optional headers
AC_HEADER_STDC
AC_CHECK_HEADERS(unistd.h string.h strings.h)

dnl Produce output
AC_OUTPUT(Makefile)







>
>
>







26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
LIBS="${ARCHS} ${LIBS}"
dnl Check for the ability to get the current system encoding
AC_CHECK_FUNCS(Tcl_GetEncodingNameFromEnvironment Tcl_SetSystemEncoding)
LIBS="${SAVE_LIBS}"

dnl Find required libs
DC_FIND_TCLKIT_LIBS

dnl Find extra objects we need to link as a part of "libtclkit"
AC_SUBST(EXTRA_OBJS)

dnl Check for optional headers
AC_HEADER_STDC
AC_CHECK_HEADERS(unistd.h string.h strings.h)

dnl Produce output
AC_OUTPUT(Makefile)