| Comment: | Merged trunk | 
|---|---|
| Downloads: | Tarball | ZIP archive | SQL archive | 
| Timelines: | family | ancestors | descendants | both | merge-kitdll-kitsh-common | 
| Files: | files | file ages | folders | 
| SHA1: | b7c6c8232c1ff3ab6c4ea5727a042c52 | 
| User & Date: | rkeene on 2011-05-19 18:04:15 | 
| Other Links: | branch diff | manifest | tags | 
| 2011-05-20 | ||
| 05:50 | First set of merges from KitDLL to KitSH check-in: 55cb9f600a user: rkeene tags: merge-kitdll-kitsh-common | |
| 2011-05-19 | ||
| 18:04 | Merged trunk check-in: b7c6c8232c user: rkeene tags: merge-kitdll-kitsh-common | |
| 2011-05-17 | ||
| 01:33 | Updated to pull user-specified (or default) kit.ico and kit.rc into Tk, if built and not include KitSH's own resource file when including Tk's since they conflict check-in: 4fa3b7d3ea user: rkeene tags: trunk | |
| 2011-02-08 | ||
| 06:57 | Create new branch named "merge-kitdll-kitsh-common" check-in: 705256170a user: rkeene tags: merge-kitdll-kitsh-common | |
Modified README from [b320dd82ca] to [6e46265709].
| 
 | 
 | | > | 1 2 3 4 5 6 7 8 9 | 
This will build a Tclkit named "tclkit-<version>" or a KitDLL named
"libtclkit<version>.so".
---------------
Using This Tool
---------------
Usage:
	kitcreator [{<version> | cvs_<cvsTag> | clean | distclean}]
	           [<configure_options...>]
 | 
| ︙ | ︙ | |||
| 123 124 125 126 127 128 129 130 131 132 133 134 135 136 | 
			ascii.enc cp1252.enc iso8859-1.enc iso8859-15.enc
			iso8859-2.enc koi8-r.enc macRoman.enc
	9. KITCREATOR_MINBUILD
		Set this variable to a non-empty string to exclude unnecessary
		packages from Tcl build.  This excludes the following packages:
			tcltest
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.
 | > > > > | 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 | 
			ascii.enc cp1252.enc iso8859-1.enc iso8859-15.enc
			iso8859-2.enc koi8-r.enc macRoman.enc
	9. KITCREATOR_MINBUILD
		Set this variable to a non-empty string to exclude unnecessary
		packages from Tcl build.  This excludes the following packages:
			tcltest
		Additionally, any bundled packages (in the "pkgs" directory)
		are excluded.  This typically includes (as of Tcl 8.6):
			itcl thread
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.
 | 
| ︙ | ︙ | 
Added build/make-kit-linux-amd64 version [f5a7e70fab].
| > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 | 
#! /bin/sh
PATH="${PATH}:${HOME}/root/cross-compilers/x86_64-unknown-linux-gnu/bin/"
AR=x86_64-unknown-linux-gnu-ar
CC=x86_64-unknown-linux-gnu-gcc
CXX=x86_64-unknown-linux-gnu-g++
RANLIB=x86_64-unknown-linux-gnu-ranlib
STRIP=x86_64-unknown-linux-gnu-strip
export PATH AR CC CXX RANLIB STRIP
./kitcreator "$@" --host=x86_64-unknown-linux-gnu
 | 
Renamed and modified build/make-kit-arm [78d28dde77] to build/make-kit-mipsel [814a04e3a0].
| 1 2 | #! /bin/sh | | | | | | | | | 1 2 3 4 5 6 7 8 9 10 11 | 
#! /bin/sh
PATH="${PATH}:/home/rkeene/root/cross-compilers/mipsel-unknown-linux-uclibc/bin"
AR=mipsel-unknown-linux-uclibc-ar
CC=mipsel-unknown-linux-uclibc-gcc
CXX=mipsel-unknown-linux-uclibc-g++
RANLIB=mipsel-unknown-linux-uclibc-ranlib
STRIP=mipsel-unknown-linux-uclibc-strip
export PATH AR CC CXX RANLIB STRIP
./build/make-minkit "$@" --host=mipsel-unknown-linux-uclibc
 | 
Modified build/makearch.info from [cebbe97a7e] to [2ff27f5bab].
| ︙ | ︙ | |||
| 12 13 14 15 16 17 18 | # If set to "auto" it will be maintained in a file called .version # in the source directory and the revision will be incremented # each time a "makearch" is done. # # If @@SVNLCR@@ is used anywhere in this version number, it will be # replaced with the highest last-changed-rev from the output of # svn info -R (or 0) | | | 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 
# If set to "auto" it will be maintained in a file called .version
# in the source directory and the revision will be incremented
# each time a "makearch" is done.
#
# If @@SVNLCR@@ is used anywhere in this version number, it will be
# replaced with the highest last-changed-rev from the output of
#   svn info -R    (or 0)
VERS="0.5.4"
# Space sperated list of documents, if they exist, they will be
# prefixed with the contents of the DOC_HDR file and substitution
# will occur:
#     @@UTIL@@ becomes the utility name ${UTIL}
#     @@VERS@@ becomes the utility version
#     @@DATE@@ becomes the current date
 | 
| ︙ | ︙ | 
Modified build/test/do-nightly-tests-and-publish from [5c58eff196] to [75aae2a48d].
| ︙ | ︙ | |||
| 15 16 17 18 19 20 21 | 
TESTNAME="fossil_${FOSSIL_CHANGE}"
export FOSSIL_CHANGE TESTNAME
# On Wednesday, do a distclean to force redownloading everything (mainly
# for CVS Head) and force a rebuild to ensure up-to-date build status
if [ "$(date '+%u')" = "3" ]; then
	./kitcreator distclean || exit 1
 | | < < < | | < < < | 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | 
TESTNAME="fossil_${FOSSIL_CHANGE}"
export FOSSIL_CHANGE TESTNAME
# On Wednesday, do a distclean to force redownloading everything (mainly
# for CVS Head) and force a rebuild to ensure up-to-date build status
if [ "$(date '+%u')" = "3" ]; then
	./kitcreator distclean || exit 1
else
	if [ -d "${WEBROOTDIR}/${TESTNAME}" ]; then
		# Don't re-run the tests if nothing has changed
		exit 0
	fi
fi
cd build/test || exit 1
if [ ! -x test -o ! -x publish-tests ]; then
 | 
| ︙ | ︙ | |||
| 54 55 56 57 58 59 60 61 62 63 64 | 
# Clean old auto-generated published results
rm -rf "${WEBROOTDIR}"/svn_r*/ "${WEBROOTDIR}"/fossil_*/
# Publish New Results
./publish-tests "${TESTNAME}"
# Clean
rm -f '__AUTO_TESTS_RUNNING__'
exit 0
 | > > > > | 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | 
# Clean old auto-generated published results
rm -rf "${WEBROOTDIR}"/svn_r*/ "${WEBROOTDIR}"/fossil_*/
# Publish New Results
./publish-tests "${TESTNAME}"
# Create nightly symlink
rm -f "${WEBROOTDIR}/nightly"
ln -s "${TESTNAME}" "${WEBROOTDIR}/nightly"
# Clean
rm -f '__AUTO_TESTS_RUNNING__'
exit 0
 | 
Modified build/test/index.ttml from [32e3b3a01b] to [6b17de7829].
| 1 2 3 4 5 | 
<html>
  <head>
    <title>KitCreator Build and Test Status</title>
  </head>
  <body>
 | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 | 
<html>
  <head>
    <title>KitCreator Build and Test Status</title>
  </head>
  <body>
    <h1><a href="http://kitcreator.rkeene.org/">KitCreator</a> Build and Test Status</h1>
    <p>The follow versions of KitCreator have test suite results:</p>
    <ul>
<?
	set haveTests 0
	foreach subdir [lsort -dictionary [glob -type d *]] {
		file lstat $subdir subdirinfo
		if {$subdirinfo(type) == "link"} {
 | 
| ︙ | ︙ | |||
| 23 24 25 26 27 28 29 | 
		puts "      <li><a href=\"${subdir}/\">$subdir</a></li>"
	}
?>
    </ul>
<?
	if {$haveTests} {
?>
 | | | 23 24 25 26 27 28 29 30 31 32 33 34 35 | 
		puts "      <li><a href=\"${subdir}/\">$subdir</a></li>"
	}
?>
    </ul>
<?
	if {$haveTests} {
?>
    <p>The actual tests can be found in <a href="http://kitcreator.rkeene.org/fossil/dir?name=build/test/tests&ci=trunk">the "tests" directory</a></p>
<?
	}
?>
  </body>
</html>
 | 
Modified build/test/publish-tests from [703dc23136] to [8f47d1a196].
| ︙ | ︙ | |||
| 201 202 203 204 205 206 207 208 209 210 211 212 213 | set kitinfo(cpu) $kitcpu set kitinfo(built) $kitbuilt # Store kit information with all kits set key [list $tclversion $kitos $kitcpu] lappend allkitinfo($key) [array get kitinfo] } puts $fd "<html>" puts $fd " <head>" puts $fd " <title>KitCreator Build and Test Status</title>" puts $fd " </head>" puts $fd " <body>" | > > > > > > > > > > > > > > > | | | 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 | 
	set kitinfo(cpu) $kitcpu
	set kitinfo(built) $kitbuilt
	# Store kit information with all kits
	set key [list $tclversion $kitos $kitcpu]
	lappend allkitinfo($key) [array get kitinfo]
}
# Determine human readable name, and URL
if {[string match "fossil_*" $kitcreator_vers]} {
	set work [split $kitcreator_vers _]
	set kitcreator_fossil_vers [lindex $work 1]
	set kitcreator_readable_vers "Fossil trunk check-in ${kitcreator_fossil_vers}"
	set url "http://kitcreator.rkeene.org/fossil/tarball/kitcreator-${kitcreator_vers}.tar.gz?uuid=${kitcreator_fossil_vers}"
} else {
	set kitcreator_readable_vers $kitcreator_vers
	set url "http://www.rkeene.org/devel/kitcreator-${kitcreator_vers}.tar.gz"
}
puts $fd "<html>"
puts $fd "  <head>"
puts $fd "    <title>KitCreator Build and Test Status</title>"
puts $fd "  </head>"
puts $fd "  <body>"
puts $fd "    <h1><a href=\"http://kitcreator.rkeene.org/\">KitCreator</a> <a href=\"../\">Build and Test Status</a></h1>"
puts $fd "    <p>The following table represents the status of the test results from the KitCreator test suite for <a href=\"${url}\">KitCreator ${kitcreator_readable_vers}</a>.</p>"
puts $fd "    <table cellpadding=\"2\" border=\"1\">"
foreach key [lsort -dictionary [array names allkitinfo]] {
	puts $fd "      <tr>"
	puts $fd "        <th colspan=\"5\"><u>Tclkit for [pretty_print_key $key]</u></th>"
	puts $fd "      </tr>"
	puts $fd "      <tr>"
	puts $fd "        <th>Kit Features</th>"
 | 
| ︙ | ︙ | 
Modified build/test/test from [58637ff4f9] to [5b64a8c9ab].
| ︙ | ︙ | |||
| 49 50 51 52 53 54 55 | Xvfb :31 -screen 0 800x600x24 -nolisten tcp >/dev/null 2>/dev/null & echo "$!" )" DISPLAY=:31 export DISPLAY failed="" | | | 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | Xvfb :31 -screen 0 800x600x24 -nolisten tcp >/dev/null 2>/dev/null & echo "$!" )" DISPLAY=:31 export DISPLAY failed="" for kit in normal normal-zip normal-threaded normal-threaded-zip normal-statictk normal-notk normal-threaded-notk normal-threaded-zip-notk normal-nomk4 min min-static normal-kitdll normal-threaded-kitdll normal-notk-kitdll normal-nomk4-kitdll normal-nomk4-notk-kitdll normal-threaded-nomk4-kitdll normal-threaded-notk-nomk4-kitdll min-kitdll win32-i586 win32-i586-zip win32-i586-threaded win32-i586-threaded-zip win32-i586-notk win32-i586-threaded-notk win32-i586-nomk4 win32-i586-kitdll win32-i586-threaded-kitdll win32-i586-notk-kitdll win32-i586-nomk4-kitdll win32-i586-nomk4-notk-kitdll win32-i586-threaded-nomk4-kitdll win32-i586-threaded-notk-nomk4-kitdll linux-mipsel-min linux-mipsel-min-kitdll linux-amd64-notk linux-amd64-notk-kitdll; do kitcreator="./kitcreator" args="" runnable="1" iszip="0" statictk="0" notk="0" nomk4="0" | 
| ︙ | ︙ | |||
| 85 86 87 88 89 90 91 | 
			kit="${os}-${cpu}-min-static"
			;;
		win32|win32-*)
			kitcreator="./build/make-kit-win32"
			xcompile="1"
			kitruncmd="wine"
			;;
 | | | > > > > > > | 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | 
			kit="${os}-${cpu}-min-static"
			;;
		win32|win32-*)
			kitcreator="./build/make-kit-win32"
			xcompile="1"
			kitruncmd="wine"
			;;
		linux-mipsel-min|linux-mipsel-min-kitdll)
			kitcreator="./build/make-kit-mipsel"
			runnable="0"
			xcompile="1"
			notk="1"
			iszip="1"
			;;
		linux-amd64|linux-amd64-*)
			kitcreator="./build/make-kit-linux-amd64"
			runnable="0"
			xcompile="1"
			iszip="0"
			;;
	esac
	if [ "${xcompile}" != "0" ]; then
		kit="${kit}-xcompile"
	fi
 | 
| ︙ | ︙ | 
Modified build/test/tests/12-threads.tcl from [df3ccdde39] to [7bfac57b1d].
| 1 2 | #! /usr/bin/env tclsh | > | | | | | | | | | | | | | | | | | | | | | | | | > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | 
#! /usr/bin/env tclsh
if {[catch {
	set buildflags [split [lindex $argv 1] -]
	# Determine if Threads was requested (or in 8.6+, unrequested)
	if {$tcl_version == "8.6"} {
		if {[lsearch -exact $buildflags "unthreaded"] == -1} {
			set isthreaded 1
		} else {
			set isthreaded 0
		}
	} else {
		if {[lsearch -exact $buildflags "threaded"] == -1} {
			set isthreaded 0
		} else {
			set isthreaded 1
		}
	}
	# Minimal builds don't come with threads.
	if {[lsearch -exact $buildflags "min"] != -1} {
		set isthreaded 0
	}
	if {!$isthreaded} {
		exit 0
	}
	package require Thread
	exit 0
}]} {
	puts "Error in Thread Test: $errorInfo"
	exit 1
}
 | 
Added build/test/tests/16-itcl.tcl version [91f3c57960].
| > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | 
#! /usr/bin/env tclsh
if {[catch {
	set buildflags [split [lindex $argv 1] -]
	# Determine if Itcl was was requested
	## Minimal builds don't come with Itcl
	set hasitcl 1
	if {[lsearch -exact $buildflags "min"] != -1} {
		set hasitcl 0
	}
	if {!$hasitcl} {
		exit 0
	}
	package require Itcl
	exit 0
}]} {
	puts "Error in Itcl Test: $errorInfo"
	exit 1
}
 | 
Modified kitcreator from [15de613872] to [fb76c24536].
| ︙ | ︙ | |||
| 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | 
fi
# Define the list of all packages, for cleaning purposes
KITCREATOR_ALLPKGS="kitsh tcl tclvfs zlib tk itcl mk4tcl thread kitdll"
for pkg in ${KITCREATOR_ALLPKGS}; do
	rm -f "${pkg}/build.log"
	rm -rf "${pkg}/out" "${pkg}/inst" "${pkg}/build"
	if [ "${mode}" = "distclean" ]; then
		rm -rf "${pkg}/src"
	fi
done
# We're all done if we're in clean or distclean mode
 | > > | 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | 
fi
# Define the list of all packages, for cleaning purposes
KITCREATOR_ALLPKGS="kitsh tcl tclvfs zlib tk itcl mk4tcl thread kitdll"
for pkg in ${KITCREATOR_ALLPKGS}; do
	rm -f "${pkg}/build.log"
	rm -rf "${pkg}/out" "${pkg}/inst" "${pkg}/build"
	rm -rf "${pkg}/src"/tmp-*
	if [ "${mode}" = "distclean" ]; then
		rm -rf "${pkg}/src"
	fi
done
# We're all done if we're in clean or distclean mode
 | 
| ︙ | ︙ | |||
| 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | 
			echo '         Set STATICMK4 to 1 if you really want to link Mk4tcl statically.' >&2
			STATICMK4="0"
			export STATICMK4
		fi
	fi
fi
failedpkgs=""
buildfailed="0"
for pkg in tcl tclvfs zlib ${KITCREATOR_PKGS} "${KITTARGET}"; do
	echo -n "Building ${pkg} ..."
	failed="0"
 | > > > > > > > > > > > > > | 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | 
			echo '         Set STATICMK4 to 1 if you really want to link Mk4tcl statically.' >&2
			STATICMK4="0"
			export STATICMK4
		fi
	fi
fi
# Find Windows resource-related files
if [ -f "kit.ico" ]; then
	KITCREATOR_ICON="$(pwd)/kit.ico"
else
	KITCREATOR_ICON="$(echo "$(pwd)/kitsh/buildsrc"/kitsh-*/kit.ico)"
fi
if [ -f "kit.rc" ]; then
	KITCREATOR_RC="$(pwd)/kit.rc"
else
	KITCREATOR_RC="$(echo "$(pwd)/kitsh/buildsrc"/kitsh-*/kit.rc)"
fi
export KITCREATOR_ICON KITCREATOR_RC
failedpkgs=""
buildfailed="0"
for pkg in tcl tclvfs zlib ${KITCREATOR_PKGS} "${KITTARGET}"; do
	echo -n "Building ${pkg} ..."
	failed="0"
 | 
| ︙ | ︙ | 
Modified kitdll/buildsrc/kitdll-0.0/Makefile.in from [024981b5ad] to [54a46a52d1].
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | CC = @CC@ CFLAGS = @CFLAGS@ @SHOBJFLAGS@ -Wall CPPFLAGS = @CPPFLAGS@ @DEFS@ -DKITDLL_MAKE_LOADABLE=1 WISH_CFLAGS = @WISH_CFLAGS@ LDFLAGS = @LDFLAGS@ SHOBJLDFLAGS = @SHOBJLDFLAGS@ LIBS = @LIBS@ STATICLIBS = @ARCHS@ OBJS = vfs_kitdll_data_tcl.o kitInit.o rechan.o pwb.o zlib.o EXTRA_OBJS = @EXTRA_OBJS@ TCLSH_NATIVE = tclsh # Default target all: libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@ | > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | CC = @CC@ OBJCOPY = @OBJCOPY@ CFLAGS = @CFLAGS@ @SHOBJFLAGS@ -Wall CPPFLAGS = @CPPFLAGS@ @DEFS@ -DKITDLL_MAKE_LOADABLE=1 WISH_CFLAGS = @WISH_CFLAGS@ LDFLAGS = @LDFLAGS@ SHOBJLDFLAGS = @SHOBJLDFLAGS@ LIBS = @LIBS@ STATICLIBS = @ARCHS@ STRIPLIBS = @STRIPLIBS@ @EXTRA_OBJS@ OBJS = vfs_kitdll_data_tcl.o kitInit.o rechan.o pwb.o zlib.o EXTRA_OBJS = @EXTRA_OBJS@ TCLSH_NATIVE = tclsh # Default target all: libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@ | 
| ︙ | ︙ | |||
| 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | ## Extensions rechan.o: rechan.c pwb.o: pwb.c zlib.o: zlib.c ## DLL Build libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@: $(OBJS) $(EXTRA_OBJS) $(CC) $(CPPFLAGS) $(CFLAGS) -o libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@ $(OBJS) $(EXTRA_OBJS) $(LDFLAGS) $(SHOBJLDFLAGS) @WHOLEARCHIVE@ $(STATICLIBS) @NOWHOLEARCHIVE@ $(LIBS) # Test driver tclsh.o: tclsh.c tclsh: tclsh.o $(EXTRA_OBJS) libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@ $(CC) $(CPPFLAGS) $(CFLAGS) -o tclsh tclsh.o $(EXTRA_OBJS) -L. -ltclkit@KITDLL_LIB_VERSION@ -Wl,-rpath,. | > | 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | 
## Extensions
rechan.o: rechan.c
pwb.o: pwb.c
zlib.o: zlib.c
## DLL Build
libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@: $(OBJS) $(EXTRA_OBJS)
	-for striplib in $(STRIPLIBS); do $(OBJCOPY) --weaken "$${striplib}"; done
	$(CC) $(CPPFLAGS) $(CFLAGS) -o libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@ $(OBJS) $(EXTRA_OBJS) $(LDFLAGS) $(SHOBJLDFLAGS) @WHOLEARCHIVE@ $(STATICLIBS) @NOWHOLEARCHIVE@ $(LIBS)
# Test driver
tclsh.o: tclsh.c
tclsh: tclsh.o $(EXTRA_OBJS) libtclkit@KITDLL_LIB_VERSION@.@SHOBJEXT@
	$(CC) $(CPPFLAGS) $(CFLAGS) -o tclsh tclsh.o $(EXTRA_OBJS) -L. -ltclkit@KITDLL_LIB_VERSION@ -Wl,-rpath,.
 | 
| ︙ | ︙ | 
Modified kitdll/buildsrc/kitdll-0.0/aclocal.m4 from [57e33ec54f] to [0c2240a08b].
| ︙ | ︙ | |||
| 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 | 
	dnl Sun Studio uses -lCstd -lCrun, most platforms use -lstdc++
	DC_DO_STATIC_LINK_LIB([C++ Library (Sun Studio)], [-lCstd -lCrun],, [
		DC_DO_STATIC_LINK_LIB([C++ Library (UNIX)], [-lstdc++])
	])
])
AC_DEFUN(DC_FIND_TCLKIT_LIBS, [
	DC_SETUP_TCL_PLAT_DEFS
	WISH_CFLAGS=""
	dnl We will need this for the Tcl project, which we will always have
	DC_CHECK_FOR_WHOLE_ARCHIVE
	for proj in tcl tclvfs tk mk4tcl; do
		AC_MSG_CHECKING([for libraries required for ${proj}])
		libdir="../../../${proj}/inst"
		libfiles="`find "${libdir}" -name '*.a' 2>/dev/null | tr "\n" ' '`"
		libfilesnostub="`find "${libdir}" -name '*.a' 2>/dev/null | grep -v 'stub' | tr "\n" ' '`"
		for libfile in ${libfiles}; do
			LDFLAGS="${LDFLAGS} -L`dirname "${libfile}"`"
		done
		if test "$proj" = "tcl"; then
			DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfilesnostub], [
				libfiles="${libfilesnostub}"
			], [
				DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfiles], [
					libfiles="${libfiles}"
				])
			])
		fi
		if test "${proj}" = "mk4tcl"; then
			if test -n "$libfiles"; then
				AC_DEFINE(KIT_INCLUDES_MK4TCL, [1], [Specify this if you link against mkt4tcl])
				DC_DO_STATIC_LINK_LIBCXX
			fi
 | > > > > > > | 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 | 
	dnl Sun Studio uses -lCstd -lCrun, most platforms use -lstdc++
	DC_DO_STATIC_LINK_LIB([C++ Library (Sun Studio)], [-lCstd -lCrun],, [
		DC_DO_STATIC_LINK_LIB([C++ Library (UNIX)], [-lstdc++])
	])
])
AC_DEFUN(DC_FIND_TCLKIT_LIBS, [
	AC_CHECK_TOOL(OBJCOPY, objcopy, [:])
	DC_SETUP_TCL_PLAT_DEFS
	WISH_CFLAGS=""
	dnl We will need this for the Tcl project, which we will always have
	DC_CHECK_FOR_WHOLE_ARCHIVE
	for proj in tcl tclvfs tk mk4tcl; do
		AC_MSG_CHECKING([for libraries required for ${proj}])
		libdir="../../../${proj}/inst"
		libfiles="`find "${libdir}" -name '*.a' 2>/dev/null | tr "\n" ' '`"
		libfilesnostub="`find "${libdir}" -name '*.a' 2>/dev/null | grep -v 'stub' | tr "\n" ' '`"
		for libfile in ${libfiles}; do
			LDFLAGS="${LDFLAGS} -L`dirname "${libfile}"`"
		done
		hide_symbols="1"
		if test "$proj" = "tcl"; then
			DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfilesnostub], [
				libfiles="${libfilesnostub}"
			], [
				DC_TEST_WHOLE_ARCHIVE_SHARED_LIB([$ARCHS $libfiles], [
					libfiles="${libfiles}"
				])
			])
			hide_symbols="0"
		fi
		if test "${proj}" = "mk4tcl"; then
			if test -n "$libfiles"; then
				AC_DEFINE(KIT_INCLUDES_MK4TCL, [1], [Specify this if you link against mkt4tcl])
				DC_DO_STATIC_LINK_LIBCXX
			fi
 | 
| ︙ | ︙ | |||
| 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 | 
				if test -n "${TK_VERSION}"; then
					AC_DEFINE_UNQUOTED(KIT_TK_VERSION, "${TK_VERSION}${TK_PATCH_LEVEL}", [Specify the version of Tk])
				fi
				if test "$host_os" = "mingw32msvc" -o "$host_os" = "mingw32"; then
					WISH_CFLAGS="-mwindows"
				fi
			fi
		fi
		ARCHS="${ARCHS} ${libfiles}"
		AC_MSG_RESULT([${libfiles}])
	done
	AC_SUBST(WISH_CFLAGS)
	AC_SUBST(ARCHS)
])
AC_DEFUN(DC_CHECK_FOR_ACCEPTABLE_DLADDR, [
	AC_CHECK_HEADERS(dlfcn.h)
	AC_CHECK_FUNCS(dladdr)
	AC_MSG_CHECKING([for acceptable dladdr])
 | > > > > > > > > | 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 | 
				if test -n "${TK_VERSION}"; then
					AC_DEFINE_UNQUOTED(KIT_TK_VERSION, "${TK_VERSION}${TK_PATCH_LEVEL}", [Specify the version of Tk])
				fi
				if test "$host_os" = "mingw32msvc" -o "$host_os" = "mingw32"; then
					WISH_CFLAGS="-mwindows"
				fi
				hide_symbols="0"
			fi
		fi
		ARCHS="${ARCHS} ${libfiles}"
		AC_MSG_RESULT([${libfiles}])
		if test "${hide_symbols}" = "1"; then
			STRIPLIBS="${STRIPLIBS} ${libfiles}"
		fi
	done
	AC_SUBST(WISH_CFLAGS)
	AC_SUBST(ARCHS)
	AC_SUBST(STRIPLIBS)
])
AC_DEFUN(DC_CHECK_FOR_ACCEPTABLE_DLADDR, [
	AC_CHECK_HEADERS(dlfcn.h)
	AC_CHECK_FUNCS(dladdr)
	AC_MSG_CHECKING([for acceptable dladdr])
 | 
| ︙ | ︙ | 
Modified kitsh/build.sh from [b70457f0fd] to [9ac6c7313f].
| ︙ | ︙ | |||
| 39 40 41 42 43 44 45 | 
	ZLIBDIR="$(cd "${OTHERPKGSDIR}/zlib/inst" 2>/dev/null && pwd)"
	export ZLIBDIR
	if [ -z "${ZLIBDIR}" -o ! -f "${ZLIBDIR}/lib/libz.a" ]; then
		unset ZLIBDIR
	fi
	# Copy user specified kit.rc and kit.ico in to build directory, if found
 | < | < < | < | > > > > | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | 
	ZLIBDIR="$(cd "${OTHERPKGSDIR}/zlib/inst" 2>/dev/null && pwd)"
	export ZLIBDIR
	if [ -z "${ZLIBDIR}" -o ! -f "${ZLIBDIR}/lib/libz.a" ]; then
		unset ZLIBDIR
	fi
	# Copy user specified kit.rc and kit.ico in to build directory, if found
	cp "${KITCREATOR_ICON}" "${BUILDDIR}/kit.ico"
	cp "${KITCREATOR_RC}" "${BUILDDIR}/kit.rc"
	# Include extra objects as required
	## Initialize list of extra objects
	EXTRA_OBJS=""
	## Tk Resources (needed for Win32 support) -- remove kit-found resources to prevent the symbols from being in conflict
	TKDIR="$(cd "${OTHERPKGSDIR}/tk/inst" && pwd)"
	TKRSRC="${TKDIR}/lib/tkbase.res.o"
	if [ -n "${TKDIR}" -a -f "${TKRSRC}" ]; then
		EXTRA_OBJS="${EXTRA_OBJS} ${TKRSRC}"
		echo ' *** Removing "kit.rc" since we have Tk with its own resource file'
		rm -f "${BUILDDIR}/kit.rc"
	fi
	## Export to the environment, to be picked up by the "configure" script
	export EXTRA_OBJS
	# Compile Kitsh
	if [ -z "${ZLIBDIR}" ]; then
 | 
| ︙ | ︙ | |||
| 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 | 
	# Intall VFS onto kit
	## Determine if we have a Tclkit to do this work
	TCLKIT="${TCLKIT:-tclkit}"
	if echo 'exit 0' | "${TCLKIT}" >/dev/null 2>/dev/null; then
		## Install using existing Tclkit
		### Call installer
		"${TCLKIT}" installvfs.tcl kit starpack.vfs "${ENABLECOMPRESSION}"
	else
		## Bootstrap (cannot cross-compile)
		### Call installer
		cp kit runkit
		echo "set argv [list kit starpack.vfs {${ENABLECOMPRESSION}}]" > setup.tcl
		echo 'if {[catch { clock seconds }]} { proc clock args { return 0 } }' >> setup.tcl
		echo 'source installvfs.tcl' >> setup.tcl
		echo | ./runkit
	fi
	exit 0
) || exit 1
exit 0
 | > > > | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | 
	# Intall VFS onto kit
	## Determine if we have a Tclkit to do this work
	TCLKIT="${TCLKIT:-tclkit}"
	if echo 'exit 0' | "${TCLKIT}" >/dev/null 2>/dev/null; then
		## Install using existing Tclkit
		### Call installer
		echo "Running: \"${TCLKIT}\" installvfs.tcl kit starpack.vfs \"${ENABLECOMPRESSION}\""
		"${TCLKIT}" installvfs.tcl kit starpack.vfs "${ENABLECOMPRESSION}"
	else
		## Bootstrap (cannot cross-compile)
		### Call installer
		cp kit runkit
		echo "set argv [list kit 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'
		echo | ./runkit
	fi
	exit 0
) || exit 1
exit 0
 | 
Modified kitsh/buildsrc/kitsh-0.0/configure.ac from [d545ae6633] to [da08c3d389].
| ︙ | ︙ | |||
| 24 25 26 27 28 29 30 31 | dnl Find extra objects we need to link as a part of "kit" AC_SUBST(EXTRA_OBJS) dnl Check for Windows Resource Compiler AC_CHECK_TOOL([RC], [windres], [false]) dnl If we found the resource compiler, add "kit.res.o" to our list of objects to build if ! test "$RC" = "false"; then | > > | > | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | 
dnl Find extra objects we need to link as a part of "kit"
AC_SUBST(EXTRA_OBJS)
dnl Check for Windows Resource Compiler
AC_CHECK_TOOL([RC], [windres], [false])
dnl If we found the resource compiler, add "kit.res.o" to our list of objects to build
dnl (as long as the source for such an object exists)
if ! test "$RC" = "false"; then
	if test -f kit.rc; then
		EXTRA_OBJS="$EXTRA_OBJS kit.res.o"
	fi
fi
dnl Check for Tcl features
SAVE_LIBS="${LIBS}"
LIBS="${ARCHS} ${LIBS}"
dnl Determine if we have "Tcl_SetStartupScript" (8.6.x) or "TclSetStartupScriptPath" (8.4.x)
AC_CHECK_FUNCS(Tcl_SetStartupScript TclSetStartupScriptPath)
 | 
| ︙ | ︙ | 
Modified mk4tcl/build.sh from [9c93a36278] to [1ccf77c409].
| ︙ | ︙ | |||
| 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 | 
		tryopts="--enable-shared --disable-shared"
	elif [ "${STATICMK4}" = "-1" ]; then
		tryopts="--enable-shared"
	else
		tryopts="--disable-shared"
	fi
	for tryopt in $tryopts __fail__; do
		# Clean up, if needed
		make distclean >/dev/null 2>/dev/null
		rm -rf "${INSTDIR}"
		mkdir "${INSTDIR}"
		if [ "${tryopt}" = "__fail__" ]; then
			exit 1
		fi
		if [ "${tryopt}" == "--enable-shared" ]; then
			isshared="1"
		else
			isshared="0"
		fi
		(
			echo "Running: ./configure $tryopt --prefix=\"${INSTDIR}\" --exec-prefix=\"${INSTDIR}\" --with-tcl=\"${TCLCONFIGDIR}/../generic\" ${CONFIGUREEXTRA}"
			./configure $tryopt --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
			echo "Running: ${MAKE:-make} tcllibdir=\"${INSTDIR}/lib\" AR=\"${AR:-ar}\" RANLIB=\"${RANLIB:-ranlib}\""
			${MAKE:-make} tcllibdir="${INSTDIR}/lib" AR="${AR:-ar}" RANLIB="${RANLIB:-ranlib}" || exit 1
 | > > > > > > > > | 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | 
		tryopts="--enable-shared --disable-shared"
	elif [ "${STATICMK4}" = "-1" ]; then
		tryopts="--enable-shared"
	else
		tryopts="--disable-shared"
	fi
	SAVE_CXXFLAGS="${CXXFLAGS}"
	for tryopt in $tryopts __fail__; do
		# Clean up, if needed
		make distclean >/dev/null 2>/dev/null
		rm -rf "${INSTDIR}"
		mkdir "${INSTDIR}"
		if [ "${tryopt}" = "__fail__" ]; then
			exit 1
		fi
		if [ "${tryopt}" == "--enable-shared" ]; then
			isshared="1"
		else
			isshared="0"
		fi
		# If build a static Mk4tcl for KitDLL, ensure that we use PIC
		# so that it can be linked into the shared object
		if [ "${isshared}" = "0" -a "${KITTARGET}" = "kitdll" ]; then
			CXXFLAGS="${SAVE_CXXFLAGS} -fPIC"
			export CXXFLAGS
		fi
		(
			echo "Running: ./configure $tryopt --prefix=\"${INSTDIR}\" --exec-prefix=\"${INSTDIR}\" --with-tcl=\"${TCLCONFIGDIR}/../generic\" ${CONFIGUREEXTRA}"
			./configure $tryopt --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}/../generic" ${CONFIGUREEXTRA}
			echo "Running: ${MAKE:-make} tcllibdir=\"${INSTDIR}/lib\" AR=\"${AR:-ar}\" RANLIB=\"${RANLIB:-ranlib}\""
			${MAKE:-make} tcllibdir="${INSTDIR}/lib" AR="${AR:-ar}" RANLIB="${RANLIB:-ranlib}" || exit 1
 | 
| ︙ | ︙ | 
Added mk4tcl/patches/all/metakit-2.4.9.7-fixsharedobjlinker.diff version [6280191256].
| > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | 
Binary files metakit-2.4.9.7.orig/unix/.Makefile.in.swp and metakit-2.4.9.7-1rsk/unix/.Makefile.in.swp differ
Binary files metakit-2.4.9.7.orig/unix/.configure.in.swp and metakit-2.4.9.7-1rsk/unix/.configure.in.swp differ
diff -uNr metakit-2.4.9.7.orig/unix/configure metakit-2.4.9.7-1rsk/unix/configure
--- metakit-2.4.9.7.orig/unix/configure	2007-06-15 18:26:40.000000000 -0500
+++ metakit-2.4.9.7-1rsk/unix/configure	2011-03-09 07:39:59.000000000 -0600
@@ -1482,7 +1482,7 @@
 if test $SHARED_BUILD = 1; then
   SHLIB_FLAGS="-shared"
   SHLIB_CFLAGS="-fPIC -DUSE_TCL_STUBS"
-  SHLIB_LD="g++ -shared"
+  SHLIB_LD="${CXX} -shared"
 else
   SHLIB_FLAGS=""
   SHLIB_CFLAGS=""
diff -uNr metakit-2.4.9.7.orig/unix/configure.in metakit-2.4.9.7-1rsk/unix/configure.in
--- metakit-2.4.9.7.orig/unix/configure.in	2007-06-15 18:26:40.000000000 -0500
+++ metakit-2.4.9.7-1rsk/unix/configure.in	2011-03-09 07:39:29.000000000 -0600
@@ -117,7 +117,7 @@
 if test $SHARED_BUILD = 1; then
   SHLIB_FLAGS="-shared"
   SHLIB_CFLAGS="-fPIC -DUSE_TCL_STUBS"
-  SHLIB_LD="g++ -shared"
+  SHLIB_LD="${CXX} -shared"
 else
   SHLIB_FLAGS=""
   SHLIB_CFLAGS=""
 | 
Modified tcl/build.sh from [805b596118] to [08b84fc697].
| ︙ | ︙ | |||
| 24 25 26 27 28 29 30 31 32 33 34 35 | 
mkdir 'build' 'out' 'inst' || exit 1
if [ ! -f "${SRC}" ]; then
	mkdir 'src' >/dev/null 2>/dev/null
	if echo "${TCLVERS}" | grep '^cvs_' >/dev/null; then
		CVSTAG=$(echo "${TCLVERS}" | sed 's/^cvs_//g')
		export CVSTAG
		(
			cd src || exit 1
 | > > > > > | > > > > > > > > > > > > | > > > > > | | > > > > | 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 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 | 
mkdir 'build' 'out' 'inst' || exit 1
if [ ! -f "${SRC}" ]; then
	mkdir 'src' >/dev/null 2>/dev/null
	if echo "${TCLVERS}" | grep '^cvs_' >/dev/null; then
		CVSTAG=$(echo "${TCLVERS}" | sed 's/^cvs_//g')
		if [ "${CVSTAG}" = "HEAD" ]; then
			CVSTAG="trunk"
		fi
		export CVSTAG
		(
			cd src || exit 1
			workdir="tmp-$$${RANDOM}${RANDOM}${RANDOM}"
			rm -rf "${workdir}"
			mkdir "${workdir}" || exit 1
			cd "${workdir}" || exit 1
			wget -O "tmp-tcl.tar.gz" "http://core.tcl.tk/tcl/tarball/tcl-fossil.tar.gz?uuid=${CVSTAG}" || rm -f 'tmp-tcl.tar.gz'
			wget -O "tmp-itcl.tar.gz" "http://core.tcl.tk/itcl/tarball/itcl-fossil.tar.gz?uuid=${CVSTAG}" || rm -f 'tmp-itcl.tar.gz'
			wget -O "tmp-thread.tar.gz" "http://core.tcl.tk/thread/tarball/thread-fossil.tar.gz?uuid=${CVSTAG}" || rm -f "tmp-thread.tar.gz"
			wget -O "tmp-tclconfig.tar.gz" "http://core.tcl.tk/tclconfig/tarball/tclconfig-fossil.tar.gz?uuid=${CVSTAG}" || rm -f "tmp-tclconfig.tar.gz"
			gzip -dc 'tmp-tcl.tar.gz' | tar -xf -
			gzip -dc "tmp-itcl.tar.gz" | tar -xf -
			gzip -dc "tmp-thread.tar.gz" | tar -xf -
			gzip -dc "tmp-tclconfig.tar.gz" | tar -xf -
			mv "tcl-fossil" "tcl${TCLVERS}"
			mv "itcl-fossil" "tcl${TCLVERS}/pkgs/itcl"
			mv "thread-fossil" "tcl${TCLVERS}/pkgs/thread"
			cp -r "tclconfig-fossil" "tcl${TCLVERS}/pkgs/itcl/tclconfig"
			cp -r "tclconfig-fossil" "tcl${TCLVERS}/pkgs/thread/tclconfig"
			mv "tclconfig-fossil" "tcl${TCLVERS}/tclconfig"
			tar -cf - "tcl${TCLVERS}" | gzip -c > "../../${SRC}"
			cd ..
			rm -rf "${workdir}"
		) || exit 1
	else
		rm -f "${SRC}.tmp"
		wget -O "${SRC}.tmp" "${SRCURL}" || exit 1
		mv "${SRC}.tmp" "${SRC}"
	fi
fi
 | 
| ︙ | ︙ | |||
| 75 76 77 78 79 80 81 | 
			(
				. "${patchscript}"
			)
		fi
	done
 | < < < < < < < < < < < | 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | 
			(
				. "${patchscript}"
			)
		fi
	done
	for dir in unix win macosx __fail__; do
		if [ "${dir}" = "__fail__" ]; then
			# If we haven't figured out how to build it, reject.
			exit 1
		fi
 | 
| ︙ | ︙ | 
Added tcl/patchscripts/minbuild-nopkgs.sh version [d1143d6e77].
| > > > > > | 1 2 3 4 5 | 
#! /bin/bash
if [ -n "${KITCREATOR_MINBUILD}" ]; then
	rm -rf 'pkgs'
fi
 | 
Added tcl/patchscripts/visibility-unhidden.sh version [05e06e331d].
| > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 | 
#! /bin/bash
if [ "${KITTARGET}" != "kitdll" ]; then
	exit 0
fi
for file in unix/configure; do
	sed 's@-fvisibility@-__disabled__fvisibility@' "${file}" > "${file}.new"
	cat "${file}.new" > "${file}"
	rm -f "${file}.new"
done
 | 
Added tcl/patchscripts/win32-dllmain.sh version [610ea73aa0].
| > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 | 
#! /bin/bash
if [ "${KITTARGET}" != "kitdll" ]; then
	exit 0
fi
## DllMain is needed when building KitDLL
for filetopatch in win/tclWin32Dll.c win/tclWinInit.c; do
	echo "Undefining STATIC_BUILD in \"${filetopatch}\""
	sed 's@STATIC_BUILD@NEVER_STATIC_BUILD@g' "${filetopatch}" > "${filetopatch}.new" && cat "${filetopatch}.new" > "${filetopatch}"
	rm -f "${filetopatch}.new"
done
 | 
Modified tclvfs/build.sh from [d1e2c23178] to [c20cbb9749].
| ︙ | ︙ | |||
| 81 82 83 84 85 86 87 | 
	echo "Running: ./configure --disable-shared --prefix=\"${INSTDIR}\" --exec-prefix=\"${INSTDIR}\" --with-tcl=\"${TCLCONFIGDIR}\" ${CONFIGUREEXTRA}"
	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
	echo "Running: ${MAKE:-make}"
	${MAKE:-make} || exit 1
	echo "Running: ${MAKE:-make} install"
 | | | 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | 
	echo "Running: ./configure --disable-shared --prefix=\"${INSTDIR}\" --exec-prefix=\"${INSTDIR}\" --with-tcl=\"${TCLCONFIGDIR}\" ${CONFIGUREEXTRA}"
	./configure --disable-shared --prefix="${INSTDIR}" --exec-prefix="${INSTDIR}" --with-tcl="${TCLCONFIGDIR}" ${CONFIGUREEXTRA}
	echo "Running: ${MAKE:-make}"
	${MAKE:-make} || exit 1
	echo "Running: ${MAKE:-make} install"
	${MAKE:-make} install || exit 1
	mkdir "${OUTDIR}/lib" || exit 1
	cp -r "${INSTDIR}/lib"/vfs* "${OUTDIR}/lib/"
	rm -f "${OUTDIR}/lib"/vfs*/*.a "${OUTDIR}/lib"/vfs*/*.so
	exit 0
) || exit 1
 | 
| ︙ | ︙ | 
Modified tk/build.sh from [394ddd8947] to [f374ed53cb].
| ︙ | ︙ | |||
| 13 14 15 16 17 18 19 | 
SRC="src/tk${TCLVERS}.tar.gz"
SRCURL="http://prdownloads.sourceforge.net/tcl/tk${TCLVERS}-src.tar.gz"
BUILDDIR="$(pwd)/build/tk${TCLVERS}"
PATCHDIR="$(pwd)/patches"
OUTDIR="$(pwd)/out"
INSTDIR="$(pwd)/inst"
 | > | > > > > > | > > > > > | | | > > > | 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | 
SRC="src/tk${TCLVERS}.tar.gz"
SRCURL="http://prdownloads.sourceforge.net/tcl/tk${TCLVERS}-src.tar.gz"
BUILDDIR="$(pwd)/build/tk${TCLVERS}"
PATCHDIR="$(pwd)/patches"
OUTDIR="$(pwd)/out"
INSTDIR="$(pwd)/inst"
PATCHSCRIPTDIR="$(pwd)/patchscripts"
export SRC SRCURL BUILDDIR PATCHDIR OUTDIR INSTDIR PATCHSCRIPTDIR
rm -rf 'build' 'out' 'inst'
mkdir 'build' 'out' 'inst' || exit 1
# Determine Tcl version
TCL_VERSION="unknown"
if [ -f "${TCLCONFIGDIR}/tclConfig.sh" ]; then
	source "${TCLCONFIGDIR}/tclConfig.sh"
fi
export TCL_VERSION
if [ ! -f "${SRC}" ]; then
	mkdir 'src' >/dev/null 2>/dev/null
	if echo "${TCLVERS}" | grep '^cvs_' >/dev/null; then
		CVSTAG=$(echo "${TCLVERS}" | sed 's/^cvs_//g')
		if [ "${CVSTAG}" = "HEAD" ]; then
			CVSTAG="trunk"
		fi
		export CVSTAG
		(       
			cd src || exit 1
			workdir="tmp-$$${RANDOM}${RANDOM}${RANDOM}"
			rm -rf "${workdir}"
			mkdir "${workdir}" || exit 1
			cd "${workdir}" || exit 1
			wget -O "tmp-tk.tar.gz" "http://core.tcl.tk/tk/tarball/tk-${CVSTAG}.tar.gz?uuid=${CVSTAG}" || rm -f 'tmp-tk.tar.gz'
			gzip -dc "tmp-tk.tar.gz" | tar -xf -
			mv "tk-${CVSTAG}" "tk${TCLVERS}"
                        
			tar -cf - "tk${TCLVERS}" | gzip -c > "../../${SRC}"
			cd ..
			rm -rf "${workdir}"
		)
	else
		rm -f "${SRC}.tmp"
		wget -O "${SRC}.tmp" "${SRCURL}" || exit 1
		mv "${SRC}.tmp" "${SRC}"
	fi
fi
 | 
| ︙ | ︙ | |||
| 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | 
				continue
			fi
			echo "Applying: ${patch}"
			${PATCH:-patch} -p1 < "${patch}"
		done
	)
	for dir in unix win macosx win64 __fail__; do
		if [ "${dir}" = "__fail__" ]; then
			exit 1
		fi
		# Windows/amd64 workarounds
 | > > > > > > > > > > > | 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 | 
				continue
			fi
			echo "Applying: ${patch}"
			${PATCH:-patch} -p1 < "${patch}"
		done
	)
	# Apply patch scripts if needed
	for patchscript in "${PATCHSCRIPTDIR}"/*.sh; do
		if [ -f "${patchscript}" ]; then
			echo "Running patch script: ${patchscript}"
                                
			(
				. "${patchscript}"
			)
		fi
	done
	for dir in unix win macosx win64 __fail__; do
		if [ "${dir}" = "__fail__" ]; then
			exit 1
		fi
		# Windows/amd64 workarounds
 | 
| ︙ | ︙ | |||
| 139 140 141 142 143 144 145 146 147 148 149 150 151 152 | 
		) || continue
		echo "Running: ${MAKE:-make} install"
		${MAKE:-make} install || continue
		# Update to include resources, if found
		if [ "${dir}" = "win" ]; then
			echo ' *** Creating tkbase.res.o to support Windows build'
			echo "\"${RC:-windres}\" -o tkbase.res.o  --define STATIC_BUILD --include \"./../generic\" --include \"${TCLCONFIGDIR}/../generic\" --include \"${TCLCONFIGDIR}\" --include \"./rc\" \"./rc/tk_base.rc\""
			"${RC:-windres}" -o tkbase.res.o  --define STATIC_BUILD --include "./../generic" --include "${TCLCONFIGDIR}/../generic" --include "${TCLCONFIGDIR}" --include "./rc" "./rc/tk_base.rc"
			if [ -f "tkbase.res.o" ]; then
				cp "tkbase.res.o" "${INSTDIR}/lib/"
			fi
 | > > > > > > | 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 | 
		) || continue
		echo "Running: ${MAKE:-make} install"
		${MAKE:-make} install || continue
		# Update to include resources, if found
		if [ "${dir}" = "win" ]; then
			echo ' *** Importing user-specified icon'
			cp "${KITCREATOR_ICON}" rc/tk.ico
			echo ' *** Importing user-specified resources'
			cat "${KITCREATOR_RC}" | grep -v '^ *tclsh  *ICON' >> "./rc/tk_base.rc"
			echo ' *** Creating tkbase.res.o to support Windows build'
			echo "\"${RC:-windres}\" -o tkbase.res.o  --define STATIC_BUILD --include \"./../generic\" --include \"${TCLCONFIGDIR}/../generic\" --include \"${TCLCONFIGDIR}\" --include \"./rc\" \"./rc/tk_base.rc\""
			"${RC:-windres}" -o tkbase.res.o  --define STATIC_BUILD --include "./../generic" --include "${TCLCONFIGDIR}/../generic" --include "${TCLCONFIGDIR}" --include "./rc" "./rc/tk_base.rc"
			if [ -f "tkbase.res.o" ]; then
				cp "tkbase.res.o" "${INSTDIR}/lib/"
			fi
 | 
| ︙ | ︙ | 
Added tk/patchscripts/visibility-unhidden.sh version [05e06e331d].
| > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 | 
#! /bin/bash
if [ "${KITTARGET}" != "kitdll" ]; then
	exit 0
fi
for file in unix/configure; do
	sed 's@-fvisibility@-__disabled__fvisibility@' "${file}" > "${file}.new"
	cat "${file}.new" > "${file}"
	rm -f "${file}.new"
done
 |