2003-12-22 - notes by Bob Techentin, Tclkit 8.4.5
O/S: HP-UX B.11.00
Environment
CC="cc"
CFLAGS="-Ae +DAportable +Onolimit -O"
CXX="aCC"
CXXFLAGS="+DAportable -O"
gentkit.local - maps gcc/g++ to native cc/aCC compilers
array set X {
gcc "cc -Ae +DAportable +Onolimit -O"
g++ "aCC +DAportable -O"
}2003-09-29 - notes by Bob Techentin
The build went smoothly - at least as smoothly as before. Genkit still fails for me at line 373, because "gzip | tar" returns a non-zero value on our HP systems. Adding a catch fixes this problem.
Ok, I've added a catch and a check that the expected dir exists after this. -jcw
I also forced the build to use the native HP compilers by defining CC, CFLAGS, CXX, and CXXFLAGS environment variables, then wrote similar values to genkit.local for gcc and g++. I used the native flags "-Ae" for ANSI C, +DAportable" for PA-RISC 1.1 and 1.2 architectures, and "-O" and "+Onolimit" for optimization.
2003-03-24 - notes by Reinhard Fobbe
-- mea culpa, I'm fixing my "post-build" steps to better deal with this (jcw)
$ file tclkit-mae16 tclkit-mae16.vfs/lib/tk8.4/libtk8.4.sl
tclkit-mae16: PA-RISC1.1 shared executable dynamically linked
tclkit-mae16.vfs/lib/tk8.4/libtk8.4.sl: PA-RISC1.1 shared library2003-03-17 - notes by Bob Techentin
2002-11-03
# Clean up temporary files left around by the Tcl VFS when loading
# shared libraries on certain platforms
#
# Call at the start of your Starkit if you are running on the following
# platforms:
# HP-UX
#
# Steve Landers <[email protected]>
#
proc VFScleanup {} {
global tcl_platform
switch $tcl_platform(os) {
HP-UX {
# HP-UX ... what a system! Too bad Mr Packard didn't have
# precedence ;-)
#
# Tcl uses mkstemp to create the temporary file. As at HP-UX
# B.11.00 this doesn't use the TMPDIR, TMP or TEMP variables, but
# rather places the temporary files in /var/tmp
set dir /var/tmp
set pattern "tcl??????"
}
Windows* {
# We could implement this for Windows, since a program crash or
# termination without normal exiting will leave the temporary
# files. Since this is relatively uncommon it hasn't been
# implemented
return
}
default {
return
}
}
# note we silently ignore any errors
catch {
if {[file isdirectory $dir]} {
set user $tcl_platform(user)
set now [clock seconds]
# Number of seconds old that a temporary file must it will be
# deleted.
# This is done to avoid the (extremely unlikely) race condition
# wherein two Starkits run currently, and this cleanup runs between
# when the Tcl VFS creates the temporary file and when it loads it
set age 10
set here [pwd]
cd $dir
foreach file [glob $pattern] {
# only those files owned by the current user
if {[file attributes $file -owner] eq $user} {
if {[expr {$now - [file mtime $file]}] > $age} {
file delete $file
}
}
}
cd $here
}
} msg
# puts stderr "msg = $msg" ;# uncomment to debug
}