Check-in [528526c7d9]
Overview
Comment:Added start of critcl support
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 528526c7d9b36aa4b75e41ec2d3116ec9d110a0b
User & Date: peter.piwowarski on 2020-04-15 04:07:55
Original User & Date: rkeene on 2020-04-15 04:07:55
Other Links: manifest | tags
Context
2020-04-15
05:19
Improved Critcl support check-in: a461844cd4 user: rkeene tags: trunk
04:07
Added start of critcl support check-in: 528526c7d9 user: peter.piwowarski tags: trunk
2020-01-22
18:53
Add release information to the TclPKCS11 and TclLuX modules check-in: c90c17ac3b user: rkeene tags: trunk
Changes

Modified build/web/kitcreator.vfs/index.rvt from [35e03c16f3] to [5dbfcbacaa].

18
19
20
21
22
23
24




25
26
27
28
29
30
31

	proc versionEncoded {versionString} {
		set output 0

		if {$versionString eq "trunk"} {
			return [versionEncoded "255.255.255"]
		}





		foreach element [lrange [split $versionString .] 0 2] {
			if {![string is integer -strict $element]} {
				return "\"$versionString\""
			}

			set output [expr {($output << 8) | $element}]







>
>
>
>







18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

	proc versionEncoded {versionString} {
		set output 0

		if {$versionString eq "trunk"} {
			return [versionEncoded "255.255.255"]
		}

		if {$versionString eq "core-8-7a3"} {
			return [versionEncoded "8.6.253"]
		}

		foreach element [lrange [split $versionString .] 0 2] {
			if {![string is integer -strict $element]} {
				return "\"$versionString\""
			}

			set output [expr {($output << 8) | $element}]
59
60
61
62
63
64
65



66
67
68
69
70
71
72
73
74
75
76
	set tcl_versions(8.6.4) 8.6.4
	set tcl_versions(8.6.5) 8.6.5
	set tcl_versions(8.6.6) 8.6.6
	set tcl_versions(8.6.7) 8.6.7
	set tcl_versions(8.6.8) 8.6.8
	set tcl_versions(8.6.9) 8.6.9
	set tcl_versions(8.6.10) 8.6.10



	set tcl_versions(fossil_trunk) "Fossil Trunk Tip"

	set tcl_version_list [lsort -dictionary [array names tcl_versions]]
	set tcl_version_selected [lindex $tcl_version_list end-1]

	# Platforms
	set platforms(android-arm) "Android/ARM"
	set platforms(freebsd-amd64) "FreeBSD/amd64"
	set platforms(hpux-hppa64) "HP-UX/PA-RISC 2.0"
	set platforms(aix-ppc) "AIX/POWER"
	set platforms(linux-amd64) "Linux/amd64"







>
>
>

|

<







63
64
65
66
67
68
69
70
71
72
73
74
75

76
77
78
79
80
81
82
	set tcl_versions(8.6.4) 8.6.4
	set tcl_versions(8.6.5) 8.6.5
	set tcl_versions(8.6.6) 8.6.6
	set tcl_versions(8.6.7) 8.6.7
	set tcl_versions(8.6.8) 8.6.8
	set tcl_versions(8.6.9) 8.6.9
	set tcl_versions(8.6.10) 8.6.10
	set tcl_version_list [lsort -dictionary [array names tcl_versions]]
	set tcl_version_selected [lindex $tcl_version_list end]

	set tcl_versions(fossil_trunk) "Fossil Trunk Tip"
	set tcl_versions(fossil_core-8-7a3) "Tcl 8.7a3"
	set tcl_version_list [lsort -dictionary [array names tcl_versions]]


	# Platforms
	set platforms(android-arm) "Android/ARM"
	set platforms(freebsd-amd64) "FreeBSD/amd64"
	set platforms(hpux-hppa64) "HP-UX/PA-RISC 2.0"
	set platforms(aix-ppc) "AIX/POWER"
	set platforms(linux-amd64) "Linux/amd64"
107
108
109
110
111
112
113

114
115
116
117
118
119
120
	set packages(tdom) "tDOM"
	set packages(tuapi) "Tcl UNIX API"
	set packages(lmdb) "LMDB"
	set packages(tclcurl) "cURL"
	set packages(duktape) "Duktape"
	set packages(tclpkcs11) "TclPKCS#11 (pki::pkcs11)"
	set packages(tcllux) "TclLuX (Tcl UNIX Utilities)"


	set options_info(threaded) "Kit: Threaded"
	set options_info(kitdll) "Kit: Build Library (KitDLL)"
	set options_info(debug) "Kit: Debugging Build"
	set options_info(dynamictk) "Kit: Always link Tk dynamically (if Tk is built)"
	set options_info(minbuild) "Kit: \"Minimal\" build (remove extra packages shipped as part of Tcl and reduce encodings)"
	set options_info(staticlibssl) "TLS: Statically link to LibSSL"







>







113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
	set packages(tdom) "tDOM"
	set packages(tuapi) "Tcl UNIX API"
	set packages(lmdb) "LMDB"
	set packages(tclcurl) "cURL"
	set packages(duktape) "Duktape"
	set packages(tclpkcs11) "TclPKCS#11 (pki::pkcs11)"
	set packages(tcllux) "TclLuX (Tcl UNIX Utilities)"
	set packages(critcl) "critcl"

	set options_info(threaded) "Kit: Threaded"
	set options_info(kitdll) "Kit: Build Library (KitDLL)"
	set options_info(debug) "Kit: Debugging Build"
	set options_info(dynamictk) "Kit: Always link Tk dynamically (if Tk is built)"
	set options_info(minbuild) "Kit: \"Minimal\" build (remove extra packages shipped as part of Tcl and reduce encodings)"
	set options_info(staticlibssl) "TLS: Statically link to LibSSL"
147
148
149
150
151
152
153

154
155
156
157
158
159
160
		kitcreator_version <0.9.0 {package_tcc4tcl}
		kitcreator_version <0.9.2 {package_tcllib package_tclx package_udp package_yajltcl}
		kitcreator_version <0.9.3 {package_nsf}
		kitcreator_version <0.10.0 {package_tdom package_tuapi}
		kitcreator_version <0.11.0 {package_lmdb}
		kitcreator_version <0.11.1 {package_tclcurl package_duktape}
		kitcreator_version <0.12.0 {package_tclpkcs11 package_tcllux}

	}

	set specific {
		platform win32 file icon {Kit Icon}
		platform win32 text description {Description}
		platform win64 file icon {Kit Icon}
		platform win64 text description {Description}







>







154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
		kitcreator_version <0.9.0 {package_tcc4tcl}
		kitcreator_version <0.9.2 {package_tcllib package_tclx package_udp package_yajltcl}
		kitcreator_version <0.9.3 {package_nsf}
		kitcreator_version <0.10.0 {package_tdom package_tuapi}
		kitcreator_version <0.11.0 {package_lmdb}
		kitcreator_version <0.11.1 {package_tclcurl package_duktape}
		kitcreator_version <0.12.0 {package_tclpkcs11 package_tcllux}
		kitcreator_version <trunk {package_critcl}
	}

	set specific {
		platform win32 file icon {Kit Icon}
		platform win32 text description {Description}
		platform win64 file icon {Kit Icon}
		platform win64 text description {Description}
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
				break
			}
		}

		# Resolve version numbers to checkin IDs
		## XXX: TODO
		set cache_tcl_version $build_tcl_version
		if {$build_tcl_version == "fossil_trunk"} {
			set cache_tcl_version [clock format [clock seconds] -format {%Y%m%d}]
		}

		set cache_kitcreator_version $build_kitcreator_version
		if {$build_kitcreator_version == "trunk"} {
			set cache_kitcreator_version [clock format [clock seconds] -format {%Y%m%d}]
		}








|
|







403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
				break
			}
		}

		# Resolve version numbers to checkin IDs
		## XXX: TODO
		set cache_tcl_version $build_tcl_version
		if {[string match "fossil_*" $build_tcl_version]} {
			set cache_tcl_version "${build_tcl_version}_[clock format [clock seconds] -format {%Y%m%d}]"
		}

		set cache_kitcreator_version $build_kitcreator_version
		if {$build_kitcreator_version == "trunk"} {
			set cache_kitcreator_version [clock format [clock seconds] -format {%Y%m%d}]
		}

512
513
514
515
516
517
518




519
520
521
522
523
524
525

	function versionEncoded(versionString) {
		var output = 0;

		if (versionString === "trunk") {
			return(versionEncoded("255.255.255"));
		}





		try {
			versionString.split(".").slice(0, 3).forEach(function(element) {
				element = parseInt(element);
				if (isNaN(element)) {
					throw new Error("Invalid version string");
				}







>
>
>
>







520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537

	function versionEncoded(versionString) {
		var output = 0;

		if (versionString === "trunk") {
			return(versionEncoded("255.255.255"));
		}

		if (versionString === "core-8-7a3") {
			return(versionEncoded("8.6.253"));
		}

		try {
			versionString.split(".").slice(0, 3).forEach(function(element) {
				element = parseInt(element);
				if (isNaN(element)) {
					throw new Error("Invalid version string");
				}

Added critcl/build.sh version [a9ff88ca8e].





































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
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
#! /usr/bin/env bash

# BuildCompatible: KitCreator

version='3.1.18.1'
url="http://github.com/andreas-kupries/critcl/tarball/${version}/critcl-${version}.tar.gz"
sha256='c26893bda46dfda332d2e7d7410ae998eafda697169ea25b4256295d293089de'

function configure() {
	:
}

function build() {
	:
}

function install() {
	local tclmajminvers
	local critcl_cdir

	mkdir -p "${installdir}/lib" || return 1

	tclmajminvers="$(echo "${TCLVERS}" | cut -f 1-2 -d .)"

	"${TCLSH_NATIVE}" ./build.tcl install "${installdir}/lib" || return 1

	critcl_cdir="$(echo "${installdir}/lib"/critcl*/critcl_c)"

	mv "${critcl_cdir}/tcl${tclmajminvers}" "${critcl_cdir}/.keep-tcl" || return 1
	rm -rf "${critcl_cdir}"/tcl*/
	mv "${critcl_cdir}/.keep-tcl" "${critcl_cdir}/tcl${tclmajminvers}" || return 1

	return 0
}