Index: README ================================================================== --- README +++ README @@ -139,12 +139,10 @@ Additionally, any bundled packages (in the "pkgs" directory) are excluded. This typically includes (as of Tcl 8.6): itcl thread - Also, TclOO is removed from Tcl 8.6 forcefully. - 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. Index: kitcreator ================================================================== --- kitcreator +++ kitcreator @@ -15,10 +15,14 @@ TCLVERS="$1" shift fi export TCLVERS + +# Determine the two part Tcl version +TCLVERS2=$(echo ${TCLVERS} | cut -d. -f1,2) +export TCLVERS2 # Verify that "pre.sh" has been run if this is a development snapshot of # KitCreator if [ -f 'build/pre.sh' ]; then if ! find 'kitsh/buildsrc/' -name configure -type f 2>/dev/null | grep configure >/dev/null; then Index: kitsh/build.sh ================================================================== --- kitsh/build.sh +++ kitsh/build.sh @@ -8,10 +8,15 @@ if [ -z "${TCLVERS}" ]; then echo 'ERROR: The TCLVERS environment variable is not set' >&2 exit 1 fi +if [ -z "${TCLVERS2}" ]; then + echo 'ERROR: The TCLVERS2 environment variable is not set' >&2 + + exit 1 +fi KITSHVERS="0.0" BUILDDIR="$(pwd)/build/kitsh-${KITSHVERS}" OUTDIR="$(pwd)/out" INSTDIR="$(pwd)/inst" @@ -203,11 +208,14 @@ cp kit runkit echo "set argv [list {${KITTARGET_NAME}} starpack.vfs {${ENABLECOMPRESSION}}]" > setup.tcl echo 'if {[catch { clock seconds }]} { proc clock args { return 0 } }' >> setup.tcl echo 'source installvfs.tcl' >> setup.tcl - echo 'Running: echo | ./runkit' + TCL_LIBRARY="$(pwd)/starpack.vfs/lib/tcl${TCLVERS2}" + export TCL_LIBRARY + + echo 'Running: echo | ./runkit setup.tcl' echo | ./runkit setup.tcl || exit 1 fi # Cleanup if [ "${KITTARGET}" = "kitdll" ]; then Index: kitsh/buildsrc/kitsh-0.0/installvfs.tcl ================================================================== --- kitsh/buildsrc/kitsh-0.0/installvfs.tcl +++ kitsh/buildsrc/kitsh-0.0/installvfs.tcl @@ -11,10 +11,15 @@ set kitfile [lindex $argv 0] set vfsdir [lindex $argv 1] if {[lindex $argv 2] != ""} { set opt_compression [lindex $argv 2] } + +# On Windows, use the ".exe" file extension +if {$tcl_platform(platform) eq "windows"} { + set kitfile [file rootname $kitfile].exe +} # Determine what storage mechanism is being used set fd [open Makefile.common r] set data [read $fd] close $fd DELETED tcl/patchscripts/minbuild-nooo.sh Index: tcl/patchscripts/minbuild-nooo.sh ================================================================== --- tcl/patchscripts/minbuild-nooo.sh +++ tcl/patchscripts/minbuild-nooo.sh @@ -1,75 +0,0 @@ -#! /usr/bin/env bash - -# Only apply to minimal builds -if [ -z "${KITCREATOR_MINBUILD}" ]; then - exit 0 -fi - -# Only apply if the Tcl being built actually includes OO as part of Tcl -if [ ! -f 'generic/tclOO.c' ]; then - exit 0 -fi - -# Apply OO-removing patch -patch -p1 << _EOF_ ---- tclcvs_HEAD/generic/tclBasic.c 2012-09-07 16:01:14.000000000 -0500 -+++ tclcvs_HEAD-OOremoved/generic/tclBasic.c 2012-09-09 13:44:06.618912251 -0500 -@@ -820,8 +820,6 @@ - * Create unsupported commands for debugging bytecode and objects. - */ - -- Tcl_CreateObjCommand(interp, "::tcl::unsupported::disassemble", -- Tcl_DisassembleObjCmd, NULL, NULL); - Tcl_CreateObjCommand(interp, "::tcl::unsupported::representation", - Tcl_RepresentationCmd, NULL, NULL); - ---- tclcvs_HEAD/generic/tclProc.c 2012-09-07 16:01:14.000000000 -0500 -+++ tclcvs_HEAD-OOremoved/generic/tclProc.c 2012-09-09 13:45:16.634913713 -0500 -@@ -2857,6 +2857,7 @@ - *---------------------------------------------------------------------- - */ - -+#if 0 - int - Tcl_DisassembleObjCmd( - ClientData dummy, /* Not used. */ -@@ -3072,6 +3073,7 @@ - Tcl_SetObjResult(interp, TclDisassembleByteCodeObj(codeObjPtr)); - return TCL_OK; - } -+#endif - - /* - * Local Variables: ---- tclcvs_HEAD/generic/tclVar.c 2012-09-07 16:01:14.000000000 -0500 -+++ tclcvs_HEAD-OOremoved/generic/tclVar.c 2012-09-09 13:34:22.138912414 -0500 -@@ -6360,6 +6360,7 @@ - return; - } - -+#if 0 - if (iPtr->varFramePtr->isProcCallFrame & FRAME_IS_METHOD) { - CallContext *contextPtr = iPtr->varFramePtr->clientData; - Method *mPtr = contextPtr->callPtr->chain[contextPtr->index].mPtr; -@@ -6382,6 +6383,7 @@ - } - } - } -+#endif - Tcl_DeleteHashTable(&addedTable); - } - -_EOF_ - -# Further remove OO -cd generic - -# Remove calls to TclOOInit() -sed 's@TclOOInit(interp)@TCL_OK@' tclBasic.c > tclBasic.c.new -cat tclBasic.c.new > tclBasic.c -rm -f tclBasic.c.new - -# Rmove all TclOO* related compilation units, to be sure to catch all removals -for file in tclOO*.[ch]; do - > "${file}" -done