diff options
| author | hypnotoad <yoda@etoyoc.com> | 2014-10-21 01:04:07 (GMT) |
|---|---|---|
| committer | hypnotoad <yoda@etoyoc.com> | 2014-10-21 01:04:07 (GMT) |
| commit | 9171dde34641416c1530c7a8ba9aa49ca267a55c (patch) | |
| tree | 7532a8a9134f13ff0870ca98e033e741bbf69364 /unix | |
| parent | 6826dbab466f01f5d52b4ff477e810297aa96991 (diff) | |
| download | tcl-9171dde34641416c1530c7a8ba9aa49ca267a55c.zip tcl-9171dde34641416c1530c7a8ba9aa49ca267a55c.tar.gz tcl-9171dde34641416c1530c7a8ba9aa49ca267a55c.tar.bz2 | |
Replaced calls to zip with calls to the new pure-tcl zipfile encoder embedded
in zvfstools.
Fixed a bug in the encoder for zvfstools. It was exporting files, but not directories.
This lack of directories was causing the bootloader to miss that /zvfs/boot/tcl/init.tcl
existed, because it was checking for the existance of /zvfs/boot/tcl. I compared the
archives created by zvfstools::mkzip to the archives created by zip, and the
difference came down to the fact that zip did create TOC entries for directories
and zvfstools::mkzip was failing to do so. (So I'm pretty sure the new behavior
is "standard.")
Diffstat (limited to 'unix')
| -rw-r--r-- | unix/Makefile.in | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/unix/Makefile.in b/unix/Makefile.in index 918e9fc..b635c0a 100644 --- a/unix/Makefile.in +++ b/unix/Makefile.in @@ -661,10 +661,6 @@ ${TCL_EXE}: ${TCLSH_OBJS} ${TCL_LIB_FILE} ${TCL_STUB_LIB_FILE} # Must be empty so it doesn't conflict with rule for ${TCL_EXE} above ${NATIVE_TCLSH}: -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 tclzsh.vfs: @@ -681,13 +677,12 @@ ${TCLZSH_BASE}_bare: ${TCLZSH_OBJS} ${TCL_LIB_FILE} ${TCL_STUB_LIB_FILE} ${LIBS} @EXTRA_TCLSH_LIBS@ \ ${CC_SEARCH_FLAGS} -o ${TCLZSH_BASE}_bare - # Builds an executable linked to the Tcl dynamic library -${TCLZSH_EXE}: ${TCLZSH_BASE}_bare null.zip tclzsh.vfs - cp -f ${TCLZSH_BASE}_bare ${TCLZSH_BASE}.zip - cat null.zip >> ${TCLZSH_BASE}.zip - cd tclzsh.vfs ; zip -rAq ${UNIX_DIR}/${TCLZSH_BASE}.zip . - mv ${TCLZSH_BASE}.zip ${TCLZSH_EXE} +${TCLZSH_EXE}: ${TCLZSH_BASE}_bare tclzsh.vfs + ./${TCLZSH_BASE}_bare ../tools/mkzip.tcl ${TCLZSH_EXE} \ + -runtime ${TCLZSH_BASE}_bare \ + -directory tclzsh.vfs + chmod a+x ${TCLZSH_EXE} # Builds an executable directly from the Tcl sources tclzsh-static: ${TCLZSH_OBJS} ${OBJS} ${ZLIB_OBJS} null.zip tclzsh.vfs |
