# # This script is intended to be run in the win sub-directory # with: tclsh84 package.tcl # set packager {C:\Program Files\Caphyon\Advanced Installer\AdvancedInstaller.exe} # # Make the Tcl library # catch {exec nmake -f makefile.vc} result puts $result # # Make the Perl library, use for this the # buildperl script. # set wd [pwd] cd .. catch {exec tclsh buildperl.tcl} result puts $result cd $wd # # Build a merged pkgIndex.tcl # set fout [open pkgIndex.tcl w] set fin [open [file join .. pkgIndex.tcl]] puts -nonewline $fout [read $fin] close $fin set fin [open [file join .. library pkgIndex.tcl]] foreach line [split [read $fin] \n] { if {![regexp {^\s*$|^#} $line]} { puts $fout $line } } close $fin close $fout # # Build a .bat script for the Perl demos. # set fout [open zinc-demos.bat w] set fin [open [file join .. Perl demos zinc-demos]] puts $fout {@rem = '--*-Perl-*-- @echo off if "%OS%" == "Windows_NT" goto WinNT perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9 goto endofperl :WinNT perl -x -S %0 %* if NOT "%COMSPEC%" == "%SystemRoot%\system32\cmd.exe" goto endofperl if %errorlevel% == 9009 echo You do not have Perl in your PATH. if errorlevel 1 goto script_failed_so_exit_with_non_zero_val 2>nul goto endofperl @rem ';} puts $fout [read $fin] puts $fout {__END__ :endofperl} close $fin close $fout # # Create a demo script ending in .tcl # file copy -force [file join .. demos zinc-widget] zinc-widget.tcl # # Wrap up the msi packages # exec $packager /build Tkzinc.aip exec $packager /build Tkzincperl.aip # # Clean up after messing around # #file delete -force pkgIndex.tcl zinc-widget.tcl zinc-demos.bat