Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Instead of statically link the tclkit executable, pack the tcl dll in the VFS |
|---|---|
| Timelines: | family | ancestors | descendants | both | core_zip_vfs |
| Files: | files | file ages | folders |
| SHA1: |
8d38788ffdf22277b56291f682b5833e |
| User & Date: | hypnotoad 2014-09-09 14:47:12.025 |
Context
|
2014-09-09
| ||
| 15:02 | Add tclkit to "make all" and install check-in: 84365e493b user: hypnotoad tags: core_zip_vfs | |
| 14:47 | Instead of statically link the tclkit executable, pack the tcl dll in the VFS check-in: 8d38788ffd user: hypnotoad tags: core_zip_vfs | |
|
2014-09-06
| ||
| 11:41 | Created a designated bootloader for Tclkits under windows On windows, tclkits build a private VFS i... check-in: cd9bbdf261 user: hypnotoad tags: core_zip_vfs | |
Changes
Changes to tools/mkVfs.tcl.
| ︙ | ︙ | |||
49 50 51 52 53 54 55 |
if {$::tcl_platform(platform) eq {unix}} {
file attributes $d2 -permissions 0755
} else {
file attributes $d2 -readonly 1
}
}
| | | | > | | > > > > > | 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 |
if {$::tcl_platform(platform) eq {unix}} {
file attributes $d2 -permissions 0755
} else {
file attributes $d2 -readonly 1
}
}
if {[llength $argv] < 4} {
puts "Usage: VFS_ROOT TCLSRC_ROOT PLATFORM TCLDLL"
exit 1
}
set VFSROOT [lindex $argv 0]
set VERSION [lindex $argv 1]
set TCLSRC_ROOT [lindex $argv 2]
set PLATFORM [lindex $argv 3]
set TCLDLL [lindex $argv 4]
file mkdir [file join $VFSROOT bin]
file copy -force $TCLDLL [file join $VFSROOT bin $TCLDLL]
set TCL_SCRIPT_DIR [file join $VFSROOT tcl$VERSION]
puts "Building [file tail $TCL_SCRIPT_DIR] for $PLATFORM"
copyDir ${TCLSRC_ROOT}/library ${TCL_SCRIPT_DIR}
if {$PLATFORM == "windows"} {
set ddedll [glob -nocomplain ${TCLSRC_ROOT}/win/tcldde*.dll]
puts "DDE DLL $ddedll"
if {$ddedll != {}} {
|
| ︙ | ︙ |
Changes to unix/Makefile.in.
| ︙ | ︙ | |||
584 585 586 587 588 589 590 591 592 593 594 595 596 597 | $(MAC_OSX_DIR)/tclMacOSXBundle.c \ $(MAC_OSX_DIR)/tclMacOSXFCmd.c \ $(MAC_OSX_DIR)/tclMacOSXNotify.c CYGWIN_SRCS = \ $(TOP_DIR)/win/tclWinError.c DTRACE_HDR = tclDTrace.h DTRACE_SRC = $(GENERIC_DIR)/tclDTrace.d ZLIB_SRCS = \ $(ZLIB_DIR)/adler32.c \ $(ZLIB_DIR)/compress.c \ | > > | 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 | $(MAC_OSX_DIR)/tclMacOSXBundle.c \ $(MAC_OSX_DIR)/tclMacOSXFCmd.c \ $(MAC_OSX_DIR)/tclMacOSXNotify.c CYGWIN_SRCS = \ $(TOP_DIR)/win/tclWinError.c TCLKIT_SRCS = $(UNIX_DIR)/tclKitInit.c DTRACE_HDR = tclDTrace.h DTRACE_SRC = $(GENERIC_DIR)/tclDTrace.d ZLIB_SRCS = \ $(ZLIB_DIR)/adler32.c \ $(ZLIB_DIR)/compress.c \ |
| ︙ | ︙ | |||
606 607 608 609 610 611 612 | $(ZLIB_DIR)/zutil.c # Note: don't include DL_SRCS or MAC_OSX_SRCS in SRCS: most of those files # won't compile on the current machine, and they will cause problems for # things like "make depend". SRCS = $(GENERIC_SRCS) $(TOMMATH_SRCS) $(UNIX_SRCS) $(NOTIFY_SRCS) \ | | | 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 |
$(ZLIB_DIR)/zutil.c
# Note: don't include DL_SRCS or MAC_OSX_SRCS in SRCS: most of those files
# won't compile on the current machine, and they will cause problems for
# things like "make depend".
SRCS = $(GENERIC_SRCS) $(TOMMATH_SRCS) $(UNIX_SRCS) $(NOTIFY_SRCS) \
$(OO_SRCS) $(STUB_SRCS) @PLAT_SRCS@ @ZLIB_SRCS@ $TCLKIT_SRCS
PWD=`pwd`
VFS_INSTALL_DIR=${PWD}/tclkit.vfs/tcl8.6
#--------------------------------------------------------------------------
# Start of rules
#--------------------------------------------------------------------------
|
| ︙ | ︙ | |||
661 662 663 664 665 666 667 | null.zip: touch .empty zip null.zip .empty # Rather than force an install, pack the files we need into a # file system under our control tclkit.vfs: | | | | | | | | | 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 |
null.zip:
touch .empty
zip null.zip .empty
# Rather than force an install, pack the files we need into a
# file system under our control
tclkit.vfs:
@echo "Building VFS File system in tclkit.vfs"
@$(TCL_EXE) "$(TOP_DIR)/tools/mkVfs.tcl" \
"$(UNIX_DIR)/tclkit.vfs" "$(VERSION)" "$(TOP_DIR)" unix ${TCL_LIB_FILE}
# Assemble all of the tcl sources into a single executable
${TCLKIT_EXE}: ${TCL_EXE} $(TCLKIT_OBJS) ${TCL_LIB_FILE} ${TCL_STUB_LIB_FILE} ${ZLIB_OBJS} null.zip tclkit.vfs
${CC} ${CFLAGS} ${LDFLAGS} \
$(TCLKIT_OBJS) ${ZLIB_OBJS} \
@TCL_BUILD_LIB_SPEC@ ${TCL_STUB_LIB_FILE} ${LIBS} @EXTRA_TCLSH_LIBS@ \
${CC_SEARCH_FLAGS} -o ${TCLKIT_EXE}
cat null.zip >> ${TCLKIT_EXE}
cd tclkit.vfs ; zip -rAq ${UNIX_DIR}/${TCLKIT_EXE} .
Makefile: $(UNIX_DIR)/Makefile.in $(DLTEST_DIR)/Makefile.in
$(SHELL) config.status
#tclConfig.h: $(UNIX_DIR)/tclConfig.h.in
# $(SHELL) config.status
clean: clean-packages
|
| ︙ | ︙ | |||
1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 | tclIORChan.o: $(GENERIC_DIR)/tclIORChan.c $(IOHDR) $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIORChan.c tclIORTrans.o: $(GENERIC_DIR)/tclIORTrans.c $(IOHDR) $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIORTrans.c tclLink.o: $(GENERIC_DIR)/tclLink.c $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLink.c tclListObj.o: $(GENERIC_DIR)/tclListObj.c $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclListObj.c tclLiteral.o: $(GENERIC_DIR)/tclLiteral.c $(COMPILEHDR) | > > > | 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 | tclIORChan.o: $(GENERIC_DIR)/tclIORChan.c $(IOHDR) $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIORChan.c tclIORTrans.o: $(GENERIC_DIR)/tclIORTrans.c $(IOHDR) $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIORTrans.c tclKitInit.o: $(UNIX_DIR)/tclKitInit.c $(CC) -c $(APP_CC_SWITCHES) $(UNIX_DIR)/tclKitInit.c tclLink.o: $(GENERIC_DIR)/tclLink.c $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLink.c tclListObj.o: $(GENERIC_DIR)/tclListObj.c $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclListObj.c tclLiteral.o: $(GENERIC_DIR)/tclLiteral.c $(COMPILEHDR) |
| ︙ | ︙ |
Changes to win/Makefile.in.
| ︙ | ︙ | |||
439 440 441 442 443 444 445 | zip -q null.zip .empty # Rather than force an install, pack the files we need into a # file system under our control tclkit.vfs: $(TCLSH) $(DDE_DLL_FILE) $(REG_DLL_FILE) @echo "Building VFS File system in tclkit.vfs" @$(TCL_EXE) "$(ROOT_DIR)/tools/mkVfs.tcl" \ | | | 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 |
zip -q null.zip .empty
# Rather than force an install, pack the files we need into a
# file system under our control
tclkit.vfs: $(TCLSH) $(DDE_DLL_FILE) $(REG_DLL_FILE)
@echo "Building VFS File system in tclkit.vfs"
@$(TCL_EXE) "$(ROOT_DIR)/tools/mkVfs.tcl" \
"$(WIN_DIR)/tclkit.vfs" "$(VERSION)" "$(ROOT_DIR)" windows $(TCL_LIB_FILE)
$(TCLKIT): $(TCLKIT_OBJS) @LIBRARIES@ $(TCL_STUB_LIB_FILE) tclsh.$(RES) null.zip tclkit.vfs
$(CC) $(CFLAGS) -DSTATIC_BUILD -UUSE_STUBS $(TCLKIT_OBJS) $(LIBS) \
tclsh.$(RES) $(CC_EXENAME) $(LDFLAGS_CONSOLE)
@VC_MANIFEST_EMBED_EXE@
cat null.zip >> $(TCLKIT)
cd tclkit.vfs ; zip -rAq $(WIN_DIR)/$(TCLKIT) .
|
| ︙ | ︙ |