Overview
| Comment: | Merged tcl-sdk-support branch into trunk |
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
9d8d38d7162fa910d8a3fd2c110d82fb |
| User & Date: | rkeene on 2011-11-15 03:09:07 |
| Other Links: | manifest | tags |
Context
|
2011-11-15
| ||
| 03:31 | Removed extraneous override check-in: d2d3f8fdbd user: rkeene tags: trunk | |
| 03:09 | Merged tcl-sdk-support branch into trunk check-in: 9d8d38d716 user: rkeene tags: trunk | |
| 02:56 | Added support for including SDK in KitDLL test builds Closed-Leaf check-in: b0c80c51af user: rkeene tags: tcl-sdk-support | |
|
2011-11-05
| ||
| 18:49 |
KitCreator 0.6.1
Updated to download Tk by tag first, if possible, then by date if not check-in: d2a98c553c user: rkeene tags: trunk, 0.6.1 | |
Changes
Modified README from [5d77e30af0] to [d6d6daf628].
| ︙ | ︙ | |||
137 138 139 140 141 142 143 144 145 146 147 148 149 150 |
itcl thread
Kitsh Configure Options:
1. --enable-kit-storage={zip|mk4|auto}
Specify which type of storage to use with the Tclkit. The
default is to auto-detect. Auto-detection uses Mk4 if
available and built statically, otherwise it falls back to Zip.
-------------------
Method of Operation
-------------------
Summary:
1. "kitcreator" calls */build.sh
2. */build.sh downloads and compiles appropriate software
| > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
itcl thread
Kitsh Configure Options:
1. --enable-kit-storage={zip|mk4|auto}
Specify which type of storage to use with the Tclkit. The
default is to auto-detect. Auto-detection uses Mk4 if
available and built statically, otherwise it falls back to Zip.
--------------------
Using the KitDLL SDK
--------------------
When you build a KitDLL, a "libtclkit-sdk-<tclvers>.tar.gz" tarball is also
produced. This tarball contains the Tcl (and Tk, if compiled) stubs libraries,
and Tcl (and Tk, if compiled) header files needed to compile and link things
against Tcl (and Tk). It also includes "tclConfig.sh" (and "tkConfig.sh", if
Tk was compiled).
The purpose for this tarball is to be used to build Tcl extensions or
applications that rely on Tcl/Tk using the KitDLL.
To use it, one first must extract the tarball. After that the environment
variable "TCLKIT_SDK_DIR" must be set to the directory that was created in
order to make most of the variables contain useful values.
For example, to build an extension using the KitDLL SDK one would typically do
something like:
1. Compile KitDLL (may be omitted if the KitDLL SDK is already
available)
a. $ KITCREATOR_PKGS='tk itcl kitdll'
b. $ export KITCREATOR_PKGS
c. $ ./kitcreator
2. Compile the Extension
a. $ tar -xf /path/to/libtclkit-sdk-8.4.19.tar.gz
b. $ TCLKIT_SDK_DIR="$(pwd)/libtclkit-sdk-8.4.19"
c. $ export TCLKIT_SDK_DIR
d. $ ./configure --with-tcl="${TCLKIT_SDK_DIR}/lib"
e. $ make
-------------------
Method of Operation
-------------------
Summary:
1. "kitcreator" calls */build.sh
2. */build.sh downloads and compiles appropriate software
|
| ︙ | ︙ |
Modified build/test/publish-tests from [d2f34a9033] to [c704512f53].
| ︙ | ︙ | |||
138 139 140 141 142 143 144 |
set shortfile $file
set file [file join $WEBDIR $file]
if {[file isdirectory $file]} {
continue
}
switch -glob -- $file {
| | > > | 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
set shortfile $file
set file [file join $WEBDIR $file]
if {[file isdirectory $file]} {
continue
}
switch -glob -- $file {
"*.log" - "*.ttml" - "*.html" - "*.desc" - "*-origname" - "*-tclsh" - "*-sdk.tar.gz" {
continue
}
}
# Derive what we can from the filename
set buildfile "${shortfile}-build.log"
set sdkshortfile "${shortfile}-sdk.tar.gz"
set sdkfile "${file}-sdk.tar.gz"
# Determine which tests passed/failed
set failedtests [list]
set passedtests [list]
set testsfile "${file}-tests.log"
if {[file exists $testsfile]} {
set testfd [open $testsfile r]
|
| ︙ | ︙ | |||
199 200 201 202 203 204 205 206 207 208 209 210 211 212 | set kitinfo(buildfile) $buildfile set kitinfo(failedtests) $failedtests set kitinfo(passedtests) $passedtests set kitinfo(buildflags) $kitbuildinfo set kitinfo(os) $kitos set kitinfo(cpu) $kitcpu set kitinfo(built) $kitbuilt # Store kit information with all kits set key [list $tclversion $kitos $kitcpu] lappend allkitinfo($key) [array get kitinfo] } # Determine human readable name, and URL | > > > > | 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 |
set kitinfo(buildfile) $buildfile
set kitinfo(failedtests) $failedtests
set kitinfo(passedtests) $passedtests
set kitinfo(buildflags) $kitbuildinfo
set kitinfo(os) $kitos
set kitinfo(cpu) $kitcpu
set kitinfo(built) $kitbuilt
if {[file exists $sdkfile]} {
set kitinfo(sdk) $sdkshortfile
}
# Store kit information with all kits
set key [list $tclversion $kitos $kitcpu]
lappend allkitinfo($key) [array get kitinfo]
}
# Determine human readable name, and URL
|
| ︙ | ︙ | |||
297 298 299 300 301 302 303 |
set statusinfo $statusdata($status)
set statustext [lindex $statusinfo 0]
set bgcolor [lindex $statusinfo 1]
set kitdesc [pretty_print_buildinfo $kitinfo(buildflags)]
if {$kitinfo(built)} {
| | > > > > > > | 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 |
set statusinfo $statusdata($status)
set statustext [lindex $statusinfo 0]
set bgcolor [lindex $statusinfo 1]
set kitdesc [pretty_print_buildinfo $kitinfo(buildflags)]
if {$kitinfo(built)} {
puts $fd " <td>"
puts $fd " <a href=\"$kitinfo(file)\">$kitdesc</a>"
if {[info exists kitinfo(sdk)]} {
puts $fd " <small><a href=\"$kitinfo(sdk)\">(sdk)</a></small>"
}
puts $fd " </td>"
} else {
puts $fd " <td>$kitdesc</td>"
}
puts $fd " <td>[pretty_print_size [file size [file join $WEBDIR $kitinfo(fullfile)]]]</td>"
puts $fd " <td bgcolor=\"$bgcolor\">$statustext</td>"
puts $fd " <td><small><a href=\"$kitinfo(buildfile)\">([pretty_print_size [file size [file join $WEBDIR $kitinfo(buildfile)]]])</a></small></td>"
puts $fd " <td>[join $failedtestshtml {,<br>}]</td>"
|
| ︙ | ︙ |
Modified build/test/test from [8772772acc] to [c00ef739e1].
| ︙ | ︙ | |||
67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
export DISPLAY
if [ "${BIGBUILD}" = "1" ]; then
kits="$(echo normal{,-zip,-nomk4}{,-threaded}{,-statictk,-notk} normal{,-threaded}{,-notk}{,-nomk4}{,-debug}-kitdll win32-i586{,-zip,-nomk4}{,-threaded}{,-notk} win32-i586{,-threaded}{,-notk}{,-nomk4}-kitdll min{,-static} {linux-mipsel-min,linux-amd64-notk}{,-debug}{,-kitdll} {solaris-i386,solaris-amd64,solaris-sparc,solaris-sparc64,freebsd-amd64,netbsd-amd64}{,-zip,-nomk4}{,-threaded}{,-statictk,-notk}{,debug} {solaris-i386,solaris-amd64,solaris-sparc,solaris-sparc64,freebsd-amd64,netbsd-amd64}{,-threaded}{,-notk}{,-nomk4}{,debug}-kitdll netbsd-i386{,-zip,-nomk4}{,-threaded}{,debug}-notk netbsd-i386{,-threaded}{,-nomk4}{,debug}-notk-kitdll)"
else
kits="normal normal-zip normal-threaded normal-threaded-zip normal-statictk normal-notk normal-threaded-notk normal-threaded-zip-notk normal-nomk4 normal-debug min min-static normal-kitdll normal-threaded-kitdll normal-notk-kitdll normal-nomk4-kitdll normal-nomk4-notk-kitdll normal-threaded-nomk4-kitdll normal-threaded-notk-nomk4-kitdll normal-debug-kitdll min-kitdll win32-i586 win32-i586-zip win32-i586-threaded win32-i586-threaded-zip win32-i586-notk win32-i586-threaded-notk win32-i586-nomk4 win32-i586-kitdll win32-i586-threaded-kitdll win32-i586-notk-kitdll win32-i586-nomk4-kitdll win32-i586-nomk4-notk-kitdll win32-i586-threaded-nomk4-kitdll win32-i586-threaded-notk-nomk4-kitdll linux-mipsel-min linux-mipsel-min-kitdll linux-amd64-notk linux-amd64-notk-debug linux-amd64-notk-kitdll linux-amd64-notk-debug-kitdll solaris-i386 solaris-i386-debug solaris-i386-kitdll solaris-i386-debug-kitdll solaris-amd64 solaris-amd64-debug solaris-amd64-kitdll solaris-amd64-debug-kitdll solaris-sparc solaris-sparc-debug solaris-sparc-kitdll solaris-sparc-debug-kitdll solaris-sparc64 solaris-sparc64-debug solaris-sparc64-kitdll solaris-sparc64-debug-kitdll freebsd-amd64 freebsd-amd64-debug freebsd-amd64-kitdll freebsd-amd64-debug-kitdll netbsd-i386-notk netbsd-i386-notk-debug netbsd-i386-notk-kitdll netbsd-i386-notk-debug-kitdll netbsd-amd64 netbsd-amd64-debug netbsd-amd64-kitdll netbsd-amd64-debug-kitdll"
fi
failed=""
for kit in $kits; do
kitcreator="./kitcreator"
args=""
runnable="1"
iszip="0"
| > | 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
export DISPLAY
if [ "${BIGBUILD}" = "1" ]; then
kits="$(echo normal{,-zip,-nomk4}{,-threaded}{,-statictk,-notk} normal{,-threaded}{,-notk}{,-nomk4}{,-debug}-kitdll win32-i586{,-zip,-nomk4}{,-threaded}{,-notk} win32-i586{,-threaded}{,-notk}{,-nomk4}-kitdll min{,-static} {linux-mipsel-min,linux-amd64-notk}{,-debug}{,-kitdll} {solaris-i386,solaris-amd64,solaris-sparc,solaris-sparc64,freebsd-amd64,netbsd-amd64}{,-zip,-nomk4}{,-threaded}{,-statictk,-notk}{,debug} {solaris-i386,solaris-amd64,solaris-sparc,solaris-sparc64,freebsd-amd64,netbsd-amd64}{,-threaded}{,-notk}{,-nomk4}{,debug}-kitdll netbsd-i386{,-zip,-nomk4}{,-threaded}{,debug}-notk netbsd-i386{,-threaded}{,-nomk4}{,debug}-notk-kitdll)"
else
kits="normal normal-zip normal-threaded normal-threaded-zip normal-statictk normal-notk normal-threaded-notk normal-threaded-zip-notk normal-nomk4 normal-debug min min-static normal-kitdll normal-threaded-kitdll normal-notk-kitdll normal-nomk4-kitdll normal-nomk4-notk-kitdll normal-threaded-nomk4-kitdll normal-threaded-notk-nomk4-kitdll normal-debug-kitdll min-kitdll win32-i586 win32-i586-zip win32-i586-threaded win32-i586-threaded-zip win32-i586-notk win32-i586-threaded-notk win32-i586-nomk4 win32-i586-kitdll win32-i586-threaded-kitdll win32-i586-notk-kitdll win32-i586-nomk4-kitdll win32-i586-nomk4-notk-kitdll win32-i586-threaded-nomk4-kitdll win32-i586-threaded-notk-nomk4-kitdll linux-mipsel-min linux-mipsel-min-kitdll linux-amd64-notk linux-amd64-notk-debug linux-amd64-notk-kitdll linux-amd64-notk-debug-kitdll solaris-i386 solaris-i386-debug solaris-i386-kitdll solaris-i386-debug-kitdll solaris-amd64 solaris-amd64-debug solaris-amd64-kitdll solaris-amd64-debug-kitdll solaris-sparc solaris-sparc-debug solaris-sparc-kitdll solaris-sparc-debug-kitdll solaris-sparc64 solaris-sparc64-debug solaris-sparc64-kitdll solaris-sparc64-debug-kitdll freebsd-amd64 freebsd-amd64-debug freebsd-amd64-kitdll freebsd-amd64-debug-kitdll netbsd-i386-notk netbsd-i386-notk-debug netbsd-i386-notk-kitdll netbsd-i386-notk-debug-kitdll netbsd-amd64 netbsd-amd64-debug netbsd-amd64-kitdll netbsd-amd64-debug-kitdll"
fi
kits="normal-notk-kitdll normal-nomk4-kitdll win32-i586-kitdll"
failed=""
for kit in $kits; do
kitcreator="./kitcreator"
args=""
runnable="1"
iszip="0"
|
| ︙ | ︙ | |||
199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 |
fi
# Create Tclkit
if [ "${kitdll}" = "1" ]; then
createdkit="libtclkit*.dll libtclkit*.*"
outputname="${TESTDIR}/kits/libtclkit-${version}-${kit}"
failoutputname="${TESTDIR}/kits/failed/libtclkit-${version}-${kit}"
else
createdkit="tclkit-${version}"
outputname="${TESTDIR}/kits/tclkit-${version}-${kit}"
failoutputname="${TESTDIR}/kits/failed/tclkit-${version}-${kit}"
fi
buildlog="${outputname}-build.log"
failbuildlog="${failoutputname}-build.log"
testresultslog="${outputname}-tests.log"
if [ ! -f "${outputname}" ]; then
unset KITCREATOR_PKGS STATICTK STRIP
| > > | 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 |
fi
# Create Tclkit
if [ "${kitdll}" = "1" ]; then
createdkit="libtclkit*.dll libtclkit*.*"
outputname="${TESTDIR}/kits/libtclkit-${version}-${kit}"
failoutputname="${TESTDIR}/kits/failed/libtclkit-${version}-${kit}"
sdk="libtclkit-sdk-${version}.tar.gz"
else
createdkit="tclkit-${version}"
outputname="${TESTDIR}/kits/tclkit-${version}-${kit}"
failoutputname="${TESTDIR}/kits/failed/tclkit-${version}-${kit}"
sdk=''
fi
buildlog="${outputname}-build.log"
failbuildlog="${failoutputname}-build.log"
testresultslog="${outputname}-tests.log"
if [ ! -f "${outputname}" ]; then
unset KITCREATOR_PKGS STATICTK STRIP
|
| ︙ | ︙ | |||
321 322 323 324 325 326 327 |
cd kitsh/build/kitsh-*/ || exit 1
make tclsh
cp tclsh ../../../
) >> "${buildlog}" 2>&1
fi
# Perform wildcard expansion
| | | 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 |
cd kitsh/build/kitsh-*/ || exit 1
make tclsh
cp tclsh ../../../
) >> "${buildlog}" 2>&1
fi
# Perform wildcard expansion
createdkit="$(ls -f1 ${createdkit} 2>/dev/null | grep -v '\.tar\.gz$' | head -n 1)"
if [ ! -f "${createdkit}" ]; then
echo "Failed to create kit ${version}/${kit}" >&2
failed="${failed} ${version}/${kit}-build"
touch "${failoutputname}"
|
| ︙ | ︙ | |||
396 397 398 399 400 401 402 403 404 405 406 407 408 409 |
if [ -f "tclsh" ]; then
mv "tclsh" "${outputname}-tclsh"
fi
# For KitDLL, make a note of the original name
if [ "${kitdll}" = "1" ]; then
echo "${createdkit}" > "${outputname}-origname"
fi
fi
# Test zip status
if unzip -l "${outputname}" 2>&1 | grep 'boot\.tcl' >/dev/null; then
canunzip="1"
else
| > > > > | 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 |
if [ -f "tclsh" ]; then
mv "tclsh" "${outputname}-tclsh"
fi
# For KitDLL, make a note of the original name
if [ "${kitdll}" = "1" ]; then
echo "${createdkit}" > "${outputname}-origname"
if [ -f "${sdk}" ]; then
mv "${sdk}" "${outputname}-sdk.tar.gz"
fi
fi
fi
# Test zip status
if unzip -l "${outputname}" 2>&1 | grep 'boot\.tcl' >/dev/null; then
canunzip="1"
else
|
| ︙ | ︙ |
Added common/post/sdk.sh version [aad8b8fa3a].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 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 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
#! /bin/bash
if [ -z "${TCLVERS}" ]; then
echo 'This script is not meant to be run directly.' >&2
exit 1
fi
if [ "${KITTARGET}" != "kitdll" ]; then
exit 0
fi
rm -rf '__tmp__'
mkdir '__tmp__'
mkdir '__tmp__/include'
mkdir '__tmp__/lib'
cp 'tcl/inst/lib/tclConfig.sh' '__tmp__/lib/'
cp -rp 'tcl/inst/include'/* '__tmp__/include/'
cp 'tcl/inst/lib'/libtclstub* '__tmp__/lib/'
if [ -f 'tk/inst/lib/tkConfig.sh' ]; then
cp 'tk/inst/lib/tkConfig.sh' '__tmp__/lib/'
cp -rp 'tk/inst/include'/* '__tmp__/include/'
cp 'tk/inst/lib'/libtkstub* '__tmp__/lib/'
fi
cp 'kitsh/build'/kitsh-*/libtclkit* '__tmp__/lib/'
(
cd '__tmp__/lib' || exit 1
for kitlibfile in libtclkit*.dll libtclkit*; do
if [ ! -f "${kitlibfile}" ]; then
continue
fi
if echo "${kitlibfile}" | grep '\.tar\.gz' >/dev/null; then
continue
fi
break
done
kitlinker="$(echo "${kitlibfile}" | sed 's@^lib@-l@;s@\.[^\.]*$@@')"
sed 's|'"$(dirname "$(dirname "$(pwd)")")"'/tcl/inst|${TCLKIT_SDK_DIR}|g;s|^TCL_SHARED_BUILD=.*$|TCL_SHARED_BUILD=1|;s|^TCL_LIB_FILE=.*$|TCL_LIB_FILE='"${kitlibfile}"'|;s|-ltcl[^s][a-zA-Z0-9\.]*|'"${kitlinker}"'|' 'tclConfig.sh' > 'tclConfig.sh.new'
(
cat << _EOF_
if [ -z "\${TCLKIT_SDK_DIR}" ]; then
TCLKIT_SDK_DIR="./libtclkit-sdk-${TCLVERS}"
fi
_EOF_
cat 'tclConfig.sh.new'
) > 'tclConfig.sh'
rm -f 'tclConfig.sh.new'
if [ -f 'tkConfig.sh' ]; then
sed 's|'"$(dirname "$(dirname "$(pwd)")")"'/tk/inst|${TCLKIT_SDK_DIR}|g;s|^TK_SHARED_BUILD=.*$|TK_SHARED_BUILD=1|;s|^TK_LIB_FILE=.*$|TK_LIB_FILE='"${kitlibfile}"'|;s|-ltk[^s][a-zA-Z0-9\.]*|'"${kitlinker}"'|' 'tkConfig.sh' > 'tkConfig.sh.new'
(
cat << _EOF_
if [ -z "\${TCLKIT_SDK_DIR}" ]; then
TCLKIT_SDK_DIR="./libtclkit-sdk-${TCLVERS}"
fi
_EOF_
cat 'tkConfig.sh.new'
) > 'tkConfig.sh'
rm -f 'tkConfig.sh.new'
fi
)
(
cd '__tmp__' || exit 1
mkdir "libtclkit-sdk-${TCLVERS}"
mv 'lib' 'include' "libtclkit-sdk-${TCLVERS}/"
tar -cf - "libtclkit-sdk-${TCLVERS}" | gzip -9c > "../libtclkit-sdk-${TCLVERS}.tar.gz"
)
rm -rf '__tmp__'
exit 0
|
Modified kitcreator from [ed95cc9314] to [e5a4f5c30e].
| ︙ | ︙ | |||
165 166 167 168 169 170 171 172 173 |
if [ "${buildfailed}" != "0" ]; then
echo 'WARNING: Build is likely incomplete or failed.' >&2
fi
cp 'kitsh/build'/kitsh-*/libtclkit* . >/dev/null 2>/dev/null
cp 'kitsh/build'/kitsh-*/kit "tclkit-${TCLVERS}" >/dev/null 2>/dev/null
exit "${buildfailed}"
| > > > > > > > > | 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 |
if [ "${buildfailed}" != "0" ]; then
echo 'WARNING: Build is likely incomplete or failed.' >&2
fi
cp 'kitsh/build'/kitsh-*/libtclkit* . >/dev/null 2>/dev/null
cp 'kitsh/build'/kitsh-*/kit "tclkit-${TCLVERS}" >/dev/null 2>/dev/null
for postscript in common/post/*; do
if [ ! -f "${postscript}" ]; then
continue
fi
"${postscript}"
done
exit "${buildfailed}"
|