Overview
Comment: | More fixes to make native Windows builds work. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | winFixes |
Files: | files | file ages | folders |
SHA1: | 37850a79ad789b0d6266d04d85c9d1f1d44b5d17 |
User & Date: | mistachkin on 2013-10-31 02:43:32 |
Other Links: | manifest | tags |
Context
2013-11-05
| ||
08:09 | Update versions of the thread and zlib packages. check-in: 0f67789517 user: mistachkin tags: winFixes | |
2013-10-31
| ||
02:43 | More fixes to make native Windows builds work. check-in: 37850a79ad user: mistachkin tags: winFixes | |
2013-10-20
| ||
03:11 | Updated icon (courtesy of C. Shults) check-in: ef6ac5d932 user: rkeene tags: trunk | |
Changes
Modified README from [2bc0f41d6f] to [4484aed13d].
137 137 packages from Tcl build. This excludes the following packages: 138 138 tcltest 139 139 140 140 Additionally, any bundled packages (in the "pkgs" directory) 141 141 are excluded. This typically includes (as of Tcl 8.6): 142 142 itcl thread 143 143 144 - Also, TclOO is removed from Tcl 8.6 forcefully. 145 - 146 144 Kitsh Configure Options: 147 145 1. --enable-kit-storage={zip|mk4|auto} 148 146 Specify which type of storage to use with the Tclkit. The 149 147 default is to auto-detect. Auto-detection uses Mk4 if 150 148 available and built statically, otherwise it falls back to Zip. 151 149 152 150 --------------------
Modified kitcreator from [b1de5629ac] to [87e5c86889].
13 13 TCLVERS="8.6.1" 14 14 if echo "$1" | grep '^[0-9][0-9]*\.' >/dev/null || echo "$1" | egrep '^(cvs|fossil)_' >/dev/null; then 15 15 TCLVERS="$1" 16 16 17 17 shift 18 18 fi 19 19 export TCLVERS 20 + 21 +# Determine the two part Tcl version 22 +TCLVERS2=$(echo ${TCLVERS} | cut -d. -f1,2) 23 +export TCLVERS2 20 24 21 25 # Verify that "pre.sh" has been run if this is a development snapshot of 22 26 # KitCreator 23 27 if [ -f 'build/pre.sh' ]; then 24 28 if ! find 'kitsh/buildsrc/' -name configure -type f 2>/dev/null | grep configure >/dev/null; then 25 29 echo "Please remember to run 'build/pre.sh' if you expect this build to work." >&2 26 30 fi
Modified kitsh/build.sh from [d39ebd9770] to [644f3a91bd].
6 6 exit 1 7 7 fi 8 8 if [ -z "${TCLVERS}" ]; then 9 9 echo 'ERROR: The TCLVERS environment variable is not set' >&2 10 10 11 11 exit 1 12 12 fi 13 +if [ -z "${TCLVERS2}" ]; then 14 + echo 'ERROR: The TCLVERS2 environment variable is not set' >&2 15 + 16 + exit 1 17 +fi 13 18 14 19 KITSHVERS="0.0" 15 20 BUILDDIR="$(pwd)/build/kitsh-${KITSHVERS}" 16 21 OUTDIR="$(pwd)/out" 17 22 INSTDIR="$(pwd)/inst" 18 23 OTHERPKGSDIR="$(pwd)/../" 19 24 export KITSHVERS BUILDDIR OUTDIR INSTDIR OTHERPKGSDIR ................................................................................ 201 206 ## Bootstrap (cannot cross-compile) 202 207 ### Call installer 203 208 cp kit runkit 204 209 echo "set argv [list {${KITTARGET_NAME}} starpack.vfs {${ENABLECOMPRESSION}}]" > setup.tcl 205 210 echo 'if {[catch { clock seconds }]} { proc clock args { return 0 } }' >> setup.tcl 206 211 echo 'source installvfs.tcl' >> setup.tcl 207 212 208 - echo 'Running: echo | ./runkit' 213 + TCL_LIBRARY="$(pwd)/starpack.vfs/lib/tcl${TCLVERS2}" 214 + export TCL_LIBRARY 215 + 216 + echo 'Running: echo | ./runkit setup.tcl' 209 217 echo | ./runkit setup.tcl || exit 1 210 218 fi 211 219 212 220 # Cleanup 213 221 if [ "${KITTARGET}" = "kitdll" ]; then 214 222 ## Remove built interpreters if we are building KitDLL -- 215 223 ## they're just tiny stubs anyway
Modified kitsh/buildsrc/kitsh-0.0/installvfs.tcl from [5bb6ad9ccb] to [ea792ed6a5].
9 9 } 10 10 11 11 set kitfile [lindex $argv 0] 12 12 set vfsdir [lindex $argv 1] 13 13 if {[lindex $argv 2] != ""} { 14 14 set opt_compression [lindex $argv 2] 15 15 } 16 + 17 +# On Windows, use the ".exe" file extension 18 +if {$tcl_platform(platform) eq "windows"} { 19 + set kitfile [file rootname $kitfile].exe 20 +} 16 21 17 22 # Determine what storage mechanism is being used 18 23 set fd [open Makefile.common r] 19 24 set data [read $fd] 20 25 close $fd 21 26 22 27 if {[string match "*KIT_STORAGE_ZIP*" $data]} {
Deleted tcl/patchscripts/minbuild-nooo.sh version [5b6fd738e8].
1 -#! /usr/bin/env bash 2 - 3 -# Only apply to minimal builds 4 -if [ -z "${KITCREATOR_MINBUILD}" ]; then 5 - exit 0 6 -fi 7 - 8 -# Only apply if the Tcl being built actually includes OO as part of Tcl 9 -if [ ! -f 'generic/tclOO.c' ]; then 10 - exit 0 11 -fi 12 - 13 -# Apply OO-removing patch 14 -patch -p1 << _EOF_ 15 ---- tclcvs_HEAD/generic/tclBasic.c 2012-09-07 16:01:14.000000000 -0500 16 -+++ tclcvs_HEAD-OOremoved/generic/tclBasic.c 2012-09-09 13:44:06.618912251 -0500 17 -@@ -820,8 +820,6 @@ 18 - * Create unsupported commands for debugging bytecode and objects. 19 - */ 20 - 21 -- Tcl_CreateObjCommand(interp, "::tcl::unsupported::disassemble", 22 -- Tcl_DisassembleObjCmd, NULL, NULL); 23 - Tcl_CreateObjCommand(interp, "::tcl::unsupported::representation", 24 - Tcl_RepresentationCmd, NULL, NULL); 25 - 26 ---- tclcvs_HEAD/generic/tclProc.c 2012-09-07 16:01:14.000000000 -0500 27 -+++ tclcvs_HEAD-OOremoved/generic/tclProc.c 2012-09-09 13:45:16.634913713 -0500 28 -@@ -2857,6 +2857,7 @@ 29 - *---------------------------------------------------------------------- 30 - */ 31 - 32 -+#if 0 33 - int 34 - Tcl_DisassembleObjCmd( 35 - ClientData dummy, /* Not used. */ 36 -@@ -3072,6 +3073,7 @@ 37 - Tcl_SetObjResult(interp, TclDisassembleByteCodeObj(codeObjPtr)); 38 - return TCL_OK; 39 - } 40 -+#endif 41 - 42 - /* 43 - * Local Variables: 44 ---- tclcvs_HEAD/generic/tclVar.c 2012-09-07 16:01:14.000000000 -0500 45 -+++ tclcvs_HEAD-OOremoved/generic/tclVar.c 2012-09-09 13:34:22.138912414 -0500 46 -@@ -6360,6 +6360,7 @@ 47 - return; 48 - } 49 - 50 -+#if 0 51 - if (iPtr->varFramePtr->isProcCallFrame & FRAME_IS_METHOD) { 52 - CallContext *contextPtr = iPtr->varFramePtr->clientData; 53 - Method *mPtr = contextPtr->callPtr->chain[contextPtr->index].mPtr; 54 -@@ -6382,6 +6383,7 @@ 55 - } 56 - } 57 - } 58 -+#endif 59 - Tcl_DeleteHashTable(&addedTable); 60 - } 61 - 62 -_EOF_ 63 - 64 -# Further remove OO 65 -cd generic 66 - 67 -# Remove calls to TclOOInit() 68 -sed 's@TclOOInit(interp)@TCL_OK@' tclBasic.c > tclBasic.c.new 69 -cat tclBasic.c.new > tclBasic.c 70 -rm -f tclBasic.c.new 71 - 72 -# Rmove all TclOO* related compilation units, to be sure to catch all removals 73 -for file in tclOO*.[ch]; do 74 - > "${file}" 75 -done