Compare commits

...
Author SHA1 Message Date
jan.nijtmans 5104cf2a07 merge TIP #477 implementation. Not tested yet in combination with semver changes 2017-12-08 16:19:54 +00:00
jan.nijtmans 621cfc8ba1 Re-base everything to latest core-8-branch. But don't include deprecations in *.decls files any more (split-off in separate TIP) 2017-11-24 09:24:16 +00:00
jan.nijtmans cb2182ae3a merge core-8-branch 2017-11-05 14:41:32 +00:00
jan.nijtmans ec1825beba Re-base to trunk. Now versioned as 8.7.0-alpha.2 2017-09-08 14:38:27 +00:00
jan.nijtmans 3d9812a359 Recognise "-rc" also as part of version ranges (was missing from previous commit) 2017-09-05 14:56:12 +00:00
jan.nijtmans 8add81e270 Add support for "-rc" releases, which are the same as final releases but the version string is different. 2017-09-05 14:19:46 +00:00
jan.nijtmans 96a979aa33 merge trunk 2017-09-04 15:24:50 +00:00
jan.nijtmans 92729b607a merge trunk 2017-09-04 12:40:10 +00:00
jan.nijtmans 4bb73a49b5 merge trunk 2017-08-30 12:39:09 +00:00
jan.nijtmans 7d237da216 merge trunk 2017-08-30 12:01:20 +00:00
jan.nijtmans 5104e3f11c merge trunk 2017-07-14 14:21:06 +00:00
jan.nijtmans 7bceb5b767 merge trunk 2017-06-26 11:37:37 +00:00
jan.nijtmans 3ca1ed1912 merge trunk 2017-05-12 15:06:51 +00:00
jan.nijtmans 79f67000c1 merge trunk 2017-05-03 12:09:19 +00:00
jan.nijtmans 7b70e3d5eb merge trunk 2017-04-20 14:50:44 +00:00
jan.nijtmans 1c04f78adb merge trunk 2017-04-20 12:15:36 +00:00
jan.nijtmans 1efd8faedd merge trunk 2017-04-12 08:40:16 +00:00
jan.nijtmans 25a4ea0a48 merge trunk 2017-04-06 12:24:36 +00:00
jan.nijtmans 9d2b91a84c merge trunk 2017-04-06 08:53:43 +00:00
jan.nijtmans 516cc8a0ac merge trunk 2017-03-24 10:31:57 +00:00
jan.nijtmans daea6758cb Merge trunk 2017-03-13 10:22:00 +00:00
jan.nijtmans 868882e2e7 Merge trunk 2017-03-08 14:53:11 +00:00
jan.nijtmans dcb3e865c6 merge trunk 2017-02-16 15:52:21 +00:00
jan.nijtmans c4c2b0b58d merge trunk 2017-02-01 16:22:13 +00:00
jan.nijtmans 0140824cf4 merge trunk 2017-01-17 10:28:31 +00:00
jan.nijtmans 9d13b8508a merge trunk 2016-12-16 15:25:04 +00:00
jan.nijtmans 99ba3608b0 Merge trunk 2016-12-15 11:28:32 +00:00
jan.nijtmans 73eba9c51c merge trunk 2016-11-02 12:56:09 +00:00
jan.nijtmans 44c6dd4e06 Fix: 3 places where a superfluous TCL_MINOR_VERSION is still used where it shouldn't. 2016-09-28 14:20:59 +00:00
jan.nijtmans 6b44c55123 merge trunk 2016-09-28 13:59:27 +00:00
jan.nijtmans 4f06f3cc81 merge trunk 2016-09-16 09:25:10 +00:00
jan.nijtmans 1400cb8082 merge trunk 2016-08-30 13:41:27 +00:00
jan.nijtmans ed1882a83b merge trunk 2016-08-19 08:48:20 +00:00
jan.nijtmans a132b14f9d Merge trunk 2016-06-30 13:55:26 +00:00
jan.nijtmans 0b3ef351aa Merge trunk 2016-06-29 12:07:12 +00:00
jan.nijtmans 3815952b56 Merge trunk. Add "--with-dbgx" configure option, so the name of the tclsh executable/sharedlibrary can be modified (request at EuroTcl 2016) 2016-06-29 10:03:59 +00:00
jan.nijtmans b3b8293b8a Merge trunk. Update the "package" documentation regarding compatibility with the "Semantic Versioning" specification. 2016-06-22 14:44:02 +00:00
jan.nijtmans 900590be7b Merge trunk 2016-06-21 10:27:22 +00:00
jan.nijtmans b64f0f8376 merge trunk 2016-03-17 15:54:22 +00:00
jan.nijtmans 429f7134b4 merge trunk 2016-03-13 17:31:09 +00:00
jan.nijtmans c746a673fc Merge trunk 2016-03-08 14:20:24 +00:00
jan.nijtmans e90545855f merge trunk 2016-03-07 08:39:32 +00:00
jan.nijtmans 5bfce469ff merge trunk 2016-03-04 08:21:06 +00:00
jan.nijtmans 76810a91c5 merge trunk 2016-03-02 09:32:33 +00:00
jan.nijtmans 2271d85d60 merge trunk 2016-01-24 16:57:28 +00:00
jan.nijtmans 51ec2a3862 Remove build information from TIP-439 implementation: At the least should be a different separate TIP 2016-01-23 21:54:46 +00:00
jan.nijtmans 24dba328fa fix generiation of tclUuid.h on win32/unix. Add build information (experimental) 2016-01-22 12:51:25 +00:00
jan.nijtmans 78e0b60876 Merge trunk. Simplify build information to "+core.<UUID>" 2016-01-22 10:56:45 +00:00
jan.nijtmans 25b132c55d Add 'engine' core.tcl.tk and build information to the output of "package require Tcl". Alternative suggestion to TIP #440 2016-01-19 21:54:56 +00:00
jan.nijtmans e6bd929886 now really set the "manifest" setting 2016-01-19 20:32:47 +00:00
jan.nijtmans e0a3388465 Set versioned "manifest" setting 2016-01-19 20:28:46 +00:00
jan.nijtmans f3913010d0 merge trunk 2016-01-19 14:00:36 +00:00
jan.nijtmans 912208469b Start implementing TCL_NO_DEPRECATED part of TIP #439 2016-01-19 13:57:35 +00:00
jan.nijtmans 06a80fa07a Fix last bug (hopefully) in this branch, found by test-case safe-14.1 2016-01-19 10:38:04 +00:00
jan.nijtmans 4a1edbbc86 Merge trunk 2016-01-19 09:25:04 +00:00
jan.nijtmans d2438fd3c5 Fix determination of TCL_WIN_VERSION for manifest: Didn't take the semantic version into account yet. 2016-01-06 13:16:09 +00:00
jan.nijtmans 78c3d98edf Merge trunk.
If TCL_NO_DEPRECATED is defined, make all internal stub funcions MODULE_SCOPE
2016-01-06 11:46:58 +00:00
jan.nijtmans 024a5290d1 More 8.6 -> 8.7 2016-01-02 23:42:54 +00:00
jan.nijtmans 3072103385 merge trunk. Fix versioning on OSX 2016-01-02 21:41:08 +00:00
jan.nijtmans dd81b3e791 Make symbols which are deprecated MODULE_SCOPE, if the flag TCL_NO_DEPRECATED is specified 2015-12-18 15:41:52 +00:00
jan.nijtmans 4a343bdb40 Merge trunk.
Fix configure scripts: dot should be part of TCL_PATCH_LEVEL
2015-12-15 13:22:53 +00:00
jan.nijtmans 7e3a1abc07 Bug in tclPkg.c, use semantic version in more places., but don't use "+" syntax yet. 2015-12-11 09:29:27 +00:00
jan.nijtmans 39069282e2 revert some unintentional changes 2015-12-11 08:51:52 +00:00
jan.nijtmans 494a069ca6 Experiments with [http://semver.org/|Semantic Versioning] in Tcl. (Don't look!) 2015-12-11 08:43:28 +00:00
37 changed files with 335 additions and 313 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
README: Tcl
This is the Tcl 8.7a2 source distribution.
This is the Tcl 8.7.0-alpha.2 source distribution.
http://sourceforge.net/projects/tcl/files/Tcl/
You can get any source release of Tcl from the URL above.
+2 -1
View File
@@ -25,7 +25,8 @@ The patch level of the Tcl library (or alpha or beta number).
.AP Tcl_ReleaseType *type out
The type of release, also indicates the type of patch level. Can be
one of \fBTCL_ALPHA_RELEASE\fR, \fBTCL_BETA_RELEASE\fR, or
\fBTCL_FINAL_RELEASE\fR.
\fBTCL_FINAL_RELEASE\fR. This function cannot distinguish between
final and rc releases, both will be considered final.
.BE
.SH DESCRIPTION
+46 -24
View File
@@ -169,8 +169,8 @@ of a command; when the command is invoked during a \fBpackage require\fR
command, Tcl appends one or more additional arguments giving the desired
package name and requirements.
For example, if \fIcommand\fR is \fBfoo bar\fR and later the command
\fBpackage require test 2.4\fR is invoked, then Tcl will execute
the command \fBfoo bar test 2.4\fR to load the package.
\fBpackage require test 2.4.0\fR is invoked, then Tcl will execute
the command \fBfoo bar test 2.4.0\fR to load the package.
If no requirements are supplied to the \fBpackage require\fR command,
then only the name will be added to invoked command.
If the \fBpackage unknown\fR command is invoked without a \fIcommand\fR
@@ -239,7 +239,7 @@ is equal to the \fImin\fR.
Otherwise if, and only if the \fIversion\fR is greater than or equal
to the \fImin\fR, and less than the \fImax\fR, where both \fImin\fR
and \fImax\fR have been padded internally with
.QW a0 .
.QW -alpha.0 .
Note that while the comparison to \fImin\fR is inclusive, the
comparison to \fImax\fR is exclusive.
.RE
@@ -257,7 +257,7 @@ A \fIversion\fR satisfies a
.QW min-unbound
requirement if, and only if it is greater than or equal to the
\fImin\fR, where the \fImin\fR has been padded internally with
.QW a0 .
.QW -alpha.0 .
There is no constraint to a maximum.
.RE
.TP
@@ -299,46 +299,68 @@ the initial (and permanent) selection mode value is set to
.SH "VERSION NUMBERS"
.PP
Version numbers consist of one or more decimal numbers separated
by dots, such as 2 or 1.162 or 3.1.13.1.
by dots, such as 2.0.0 or 1.162.0 or 3.1.13.
The first number is called the major version number.
Larger numbers correspond to later versions of a package, with
leftmost numbers having greater significance.
For example, version 2.1 is later than 1.3 and version
For example, version 2.1.0 is later than 1.3.0 and version
3.4.6 is later than 3.3.5.
Missing fields are equivalent to zeroes: version 1.3 is the
same as version 1.3.0 and 1.3.0.0, so it is earlier than 1.3.1 or 1.3.0.2.
In addition, the letters
.QW a
In addition, the specifiers
.QW -alpha
(alpha) and/or
.QW b
(beta) may appear
exactly once to replace a dot for separation. These letters
.QW -beta
(beta) and/or
.QW -rc
(rc) may be inserted
exactly once just before a dot for separation. These specifiers
semantically add a negative specifier into the version, where
.QW a
.QW -alpha
is \-3, and
.QW -beta
is \-2, and
.QW b
.QW -rc
is \-1. Each may be specified only once, and
.QW a
.QW -alpha
or
.QW b
are mutually exclusive in a specifier. Thus 1.3a1 becomes (semantically)
1.3.\-2.1, 1.3b1 is 1.3.\-1.1. Negative numbers are not directly allowed
.QW -beta
or
.QW -rc
are mutually exclusive in a specifier. Thus 1.3.0-alpha.1 becomes (semantically)
1.3.0.\-3.1, 1.3.0-beta.1 is 1.3.0.\-2.1. Negative numbers are not directly allowed
in version specifiers.
A version number not containing the letters
.QW a
A version number not containing the specifier
.QW -alpha
or
.QW b
.QW -beta
or
.QW -rc
as specified
above is called a \fBstable\fR version, whereas presence of the letters
above is called a \fBstable\fR version, whereas presence of the specifier
causes the version to be called is \fBunstable\fR.
A later version number is assumed to be upwards compatible with
an earlier version number as long as both versions have the same
major version number.
For example, Tcl scripts written for version 2.3 of a package should
work unchanged under versions 2.3.2, 2.4, and 2.5.1.
For example, Tcl scripts written for version 2.3.0 of a package should
work unchanged under versions 2.3.2, 2.4.0, and 2.5.1.
Changes in the major version number signify incompatible changes:
if code is written to use version 2.1 of a package, it is not guaranteed
if code is written to use version 2.1.0 of a package, it is not guaranteed
to work unmodified with either version 1.7.3 or version 3.1.
.PP
Instead of the full specifiers \fB-alpha.\fR and \fB-beta.\fR (with dot this
time), it is allowed to shorten this to simply \fBa\fR resp \fBb\fR. The
number of elements doesn't need to be 3 (MAJOR, MINOR, PATCH), but it could
be for reasons of compatibility with the "Semantic Versioning" specification.
Tcl and Tk >= 8.7 follow this specificiation, but packages are
not required to do that: Those packages will still function as expected
with Tcl and Tk >= 8.7. There is no short equivalent to \fB-rc.\fR
.PP
Note that valid version number may contain a "-", while a dash can
also be used to separate two version numbers in a requirement. The rule
is that if the dash is followed by a non-digit, then the dash is
interpreted as being part of the version number. Otherwise, it is
handled as part of the requirement syntax.
.SH "PACKAGE INDICES"
.PP
The recommended way to use packages in Tcl is to invoke \fBpackage require\fR
+20 -1
View File
@@ -57,8 +57,27 @@ extern "C" {
#define TCL_RELEASE_LEVEL TCL_ALPHA_RELEASE
#define TCL_RELEASE_SERIAL 2
/*
* Translation of above numbers to the strings below are as follows:
* TCL_VERSION = $TCL_MAJOR_VERSION.$TCL_MINOR_VERSION
* For alpha releases:
* TCL_PATCH_LEVEL = $TCL_MAJOR_VERSION.$TCL_MINOR_VERSION.0-alpha.$TCL_RELEASE_SERIAL
* For beta releases:
* TCL_PATCH_LEVEL = $TCL_MAJOR_VERSION.$TCL_MINOR_VERSION.0-beta.$TCL_RELEASE_SERIAL
* For rc releases (not distinguishing from final releases, other than through TCL_PATCH_LEVEL):
* TCL_PATCH_LEVEL = $TCL_MAJOR_VERSION.$TCL_MINOR_VERSION.0-rc.1
* For final releases:
* TCL_PATCH_LEVEL = $TCL_MAJOR_VERSION.$TCL_MINOR_VERSION.$TCL_RELEASE_SERIAL
*
* Indeed, for alpha and beta releases, and additional ".0" is inserted in order
* to comply with the semver rules that the numerical version must consist of 3 parts.
* It indicates that version "a.b.c-anything" will eventually lead to version "a.b.c".
* Tcl only releases alpha/beta's for c=0, there are no plans to change that (although
* it would be possible with the semver numbering)
*/
#define TCL_VERSION "8.7"
#define TCL_PATCH_LEVEL "8.7a2"
#define TCL_PATCH_LEVEL "8.7.0-alpha.2"
#if !defined(TCL_NO_DEPRECATED) || defined(RC_INVOKED)
/*
+2 -2
View File
@@ -417,8 +417,8 @@ Tcl_Init(
" lappend scripts {\n"
"set parentDir [file dirname [file dirname [info nameofexecutable]]]\n"
"set grandParentDir [file dirname $parentDir]\n"
"file join $parentDir lib tcl[info tclversion]} \\\n"
" {file join $grandParentDir lib tcl[info tclversion]} \\\n"
"file join $parentDir share tcl8} \\\n"
" {file join $grandParentDir share tcl8} \\\n"
" {file join $parentDir library} \\\n"
" {file join $grandParentDir library} \\\n"
" {file join $grandParentDir tcl[info tclversion] library} \\\n"
+52 -23
View File
@@ -1425,11 +1425,11 @@ CheckVersionAndConvert(
int *stable) /* Flag: Version is (un)stable. */
{
const char *p = string;
char prevChar;
char prevChar = 0;
int hasunstable = 0;
/*
* 4* assuming that each char is a separator (a,b become ' -x ').
* 4+ to have spce for an additional -2 at the end
* 4+ to have spce for an additional -3 at the end
*/
char *ibuf = ckalloc(4 + 4*strlen(string));
char *ip = ibuf;
@@ -1446,6 +1446,12 @@ CheckVersionAndConvert(
* (3) s.a.
* (4) Only one of 'a' or 'b' may occur.
* (5) Neither 'a', nor 'b' may occur before or after a '.'
*
* TIP 439, Modified rules
* In stead of "a" and "b" in the above rules, the longer
* forms "-alpha." and "-beta." are accepted as well. In
* addition, "-rc." is allowed as intermediate between
* beta and final release.
*/
if (!isdigit(UCHAR(*p))) { /* INTL: digit */
@@ -1456,34 +1462,51 @@ CheckVersionAndConvert(
for (prevChar = *p, p++; *p != 0; p++) {
if (!isdigit(UCHAR(*p)) && /* INTL: digit */
((*p!='.' && *p!='a' && *p!='b') ||
((hasunstable && (*p=='a' || *p=='b')) ||
((prevChar=='a' || prevChar=='b' || prevChar=='.')
((*p!='.' && *p!='a' && *p!='b' && *p!='-') ||
((hasunstable && (*p=='a' || *p=='b'|| *p=='-')) ||
((prevChar=='a' || prevChar=='b' || prevChar=='r' || prevChar=='.')
&& (*p=='.')) ||
((*p=='a' || *p=='b' || *p=='.') && prevChar=='.')))) {
goto error;
}
if (*p == 'a' || *p == 'b') {
hasunstable = 1;
}
/*
* Translation to the internal rep. Regular version chars are copied
* as is. The separators are translated to numerics. The new separator
* for all parts is space.
*/
if (*p == '.') {
prevChar = *p;
if (*p == '-') {
if (!strncmp(p+1, "alpha.", 6)) {
p += 6;
prevChar = 'a';
} else if (!strncmp(p+1, "beta.", 5)) {
p += 5;
prevChar = 'b';
} else if (!strncmp(p+1, "rc.", 3)) {
p += 3;
prevChar = 'r';
}
}
if (prevChar == '.') {
*ip++ = ' ';
*ip++ = '0';
*ip++ = ' ';
} else if (*p == 'a') {
} else if (prevChar == 'a') {
hasunstable = 1;
*ip++ = ' ';
*ip++ = '-';
*ip++ = '3';
*ip++ = ' ';
} else if (prevChar == 'b') {
hasunstable = 1;
*ip++ = ' ';
*ip++ = '-';
*ip++ = '2';
*ip++ = ' ';
} else if (*p == 'b') {
} else if (prevChar == 'r') {
hasunstable = 1;
*ip++ = ' ';
*ip++ = '-';
*ip++ = '1';
@@ -1492,9 +1515,8 @@ CheckVersionAndConvert(
*ip++ = *p;
}
prevChar = *p;
}
if (prevChar!='.' && prevChar!='a' && prevChar!='b') {
if (prevChar!='.' && prevChar!='a' && prevChar!='b' && prevChar!='r') {
*ip = '\0';
if (internal != NULL) {
*internal = ibuf;
@@ -1759,7 +1781,10 @@ CheckRequirement(
char *dash = NULL, *buf;
dash = strchr(string, '-');
if (dash == NULL) {
if ((dash != NULL) && (dash[1]=='a' || dash[1]=='b' || dash[1]=='r')) {
dash = strchr(dash+1, '-');
}
if ((dash == NULL) || dash[1]=='a' || dash[1]=='b' || dash[1]=='r') {
/*
* No dash found, has to be a simple version.
*/
@@ -1767,7 +1792,8 @@ CheckRequirement(
return CheckVersionAndConvert(interp, string, NULL, NULL);
}
if (strchr(dash+1, '-') != NULL) {
buf = strchr(dash+1, '-');
if ((buf != NULL) && isdigit(UCHAR(buf[1]))) {
/*
* More dashes found after the first. This is wrong.
*/
@@ -1947,11 +1973,14 @@ RequirementSatisfied(
char *dash = NULL, *buf, *min, *max;
dash = strchr(req, '-');
if (dash == NULL) {
if ((dash != NULL) && (dash[1]=='a' || dash[1]=='b')) {
dash = strchr(dash+1, '-');
}
if ((dash == NULL) || dash[1]=='a' || dash[1]=='b') {
/*
* No dash found, is a simple version, fallback to regular check. The
* 'CheckVersionAndConvert' cannot fail. We pad the requirement with
* 'a0', i.e '-2' before doing the comparison to properly accept
* 'a0', i.e '-3' before doing the comparison to properly accept
* unstables as well.
*/
@@ -1959,7 +1988,7 @@ RequirementSatisfied(
int thisIsMajor;
CheckVersionAndConvert(NULL, req, &reqi, NULL);
strcat(reqi, " -2");
strcat(reqi, " -3");
res = CompareVersions(havei, reqi, &thisIsMajor);
satisfied = (res == 0) || ((res == 1) && !thisIsMajor);
ckfree(reqi);
@@ -1980,11 +2009,11 @@ RequirementSatisfied(
if (*dash == '\0') {
/*
* We have a min, but no max. For the comparison we generate the
* internal rep, padded with 'a0' i.e. '-2'.
* internal rep, padded with 'a0' i.e. '-3'.
*/
CheckVersionAndConvert(NULL, buf, &min, NULL);
strcat(min, " -2");
strcat(min, " -3");
satisfied = (CompareVersions(havei, min, NULL) >= 0);
ckfree(min);
ckfree(buf);
@@ -2003,8 +2032,8 @@ RequirementSatisfied(
if (CompareVersions(min, max, NULL) == 0) {
satisfied = (CompareVersions(min, havei, NULL) == 0);
} else {
strcat(min, " -2");
strcat(max, " -2");
strcat(min, " -3");
strcat(max, " -3");
satisfied = ((CompareVersions(min, havei, NULL) <= 0) &&
(CompareVersions(havei, max, NULL) < 0));
}
+3
View File
@@ -22,6 +22,9 @@
#include "tclInt.h"
#include "tclOO.h"
#include <math.h>
#ifndef TCL_NO_DEPRECATED
# define TCL_NO_DEPRECATED
#endif
/*
* Required for Testregexp*Cmd
+7 -5
View File
@@ -46,7 +46,7 @@ proc auto_reset {} {
#
# Arguments:
# basename Prefix of the directory name, (e.g., "tk")
# version Version number of the package, (e.g., "8.0")
# version Version number of the package, (e.g., "8")
# patch Patchlevel of the package, (e.g., "8.0.3")
# initScript Initialization script to source (e.g., tk.tcl)
# enVarName environment variable to honor (e.g., TK_LIBRARY)
@@ -94,8 +94,8 @@ proc tcl_findLibrary {basename version patch initScript enVarName varName} {
}
# 3. Various locations relative to the executable
# ../lib/foo1.0 (From bin directory in install hierarchy)
# ../../lib/foo1.0 (From bin/arch directory in install hierarchy)
# ../share/foo1.0 (From bin directory in install hierarchy)
# ../../share/foo1.0 (From bin/arch directory in install hierarchy)
# ../library (From unix directory in build hierarchy)
#
# Remaining locations are out of date (when relevant, they ought to be
@@ -109,8 +109,10 @@ proc tcl_findLibrary {basename version patch initScript enVarName varName} {
set parentDir [file dirname [file dirname [info nameofexecutable]]]
set grandParentDir [file dirname $parentDir]
lappend dirs [file join $parentDir lib $basename$version]
lappend dirs [file join $grandParentDir lib $basename$version]
lappend dirs [file join $parentDir share $basename$version]
lappend dirs [file join $grandParentDir share $basename$version]
lappend dirs [file join $parentDir share tcl8 $basename$version]
lappend dirs [file join $grandParentDir share tcl8 $basename$version]
lappend dirs [file join $parentDir library]
if {0} {
lappend dirs [file join $grandParentDir library]
+1 -5
View File
@@ -1,7 +1,3 @@
if {([info commands ::tcl::pkgconfig] eq "")
|| ([info sharedlibextension] ne ".dll")} return
if {[::tcl::pkgconfig get debug]} {
package ifneeded dde 1.4.0 [list load [file join $dir tcldde14g.dll] dde]
} else {
package ifneeded dde 1.4.0 [list load [file join $dir tcldde14.dll] dde]
}
package ifneeded dde 1.4.0 [list load [file join $dir tcldde1.dll] dde]
+6 -2
View File
@@ -16,7 +16,7 @@
if {[info commands package] == ""} {
error "version mismatch: library\nscripts expect Tcl version 7.5b1 or later but the loaded version is\nonly [info patchlevel]"
}
package require -exact Tcl 8.7a2
package require -exact Tcl 8.7.0-alpha.2
# Compute the auto path to use in this interpreter.
# The values on the path come from several locations:
@@ -53,7 +53,11 @@ namespace eval tcl {
}
}
set Dir [file join [file dirname [file dirname \
[info nameofexecutable]]] lib]
[info nameofexecutable]]] lib tcl8]
if {$Dir ni $::auto_path} {
lappend ::auto_path $Dir
}
set Dir [file dirname $Dir]
if {$Dir ni $::auto_path} {
lappend ::auto_path $Dir
}
+2 -7
View File
@@ -1,9 +1,4 @@
if {([info commands ::tcl::pkgconfig] eq "")
|| ([info sharedlibextension] ne ".dll")} return
if {[::tcl::pkgconfig get debug]} {
package ifneeded registry 1.3.2 \
[list load [file join $dir tclreg13g.dll] registry]
} else {
package ifneeded registry 1.3.2 \
[list load [file join $dir tclreg13.dll] registry]
}
package ifneeded registry 1.3.2 \
[list load [file join $dir tclreg1.dll] registry]
+5 -1
View File
@@ -317,7 +317,6 @@ proc ::tcl::tm::Defaults {} {
# Note that we're using [::list], not [list] because [list] means
# something other than [::list] in this namespace.
roots [::list \
[file dirname [info library]] \
[file join [file dirname [file dirname $exe]] lib] \
]
@@ -326,6 +325,11 @@ proc ::tcl::tm::Defaults {} {
} else {
set sep ":"
}
if {[info exists env(TCL${major}_TM_PATH)]} {
foreach p [split $env(TCL${major}_TM_PATH) $sep] {
path add $p
}
}
for {set n $minor} {$n >= 0} {incr n -1} {
foreach ev [::list \
TCL${major}.${n}_TM_PATH \
+1 -1
View File
@@ -92,7 +92,7 @@ PROJECT := tcl
PRODUCT_NAME := Tcl
UNIX_DIR := ${CURDIR}/../unix
VERSION := $(shell awk -F= '/^TCL_VERSION/ {print $$2; nextfile}' ${UNIX_DIR}/configure.ac)
VERSION := $(shell awk -F= '/^TCL_MAJOR_VERSION/ {print $$2; nextfile}' ${UNIX_DIR}/configure.ac)
TCLSH := tclsh${VERSION}
BUILD_TARGET := all tcltest
+2 -2
View File
@@ -141,9 +141,9 @@ Detailed Instructions for building with macosx/GNUmakefile
- Unpack the Tcl source release archive.
- The following instructions assume the Tcl source tree is named "tcl${ver}",
(where ${ver} is a shell variable containing the Tcl version number e.g. '8.7').
(where ${ver} is a shell variable containing the Tcl version number e.g. '8').
Setup this shell variable as follows:
ver="8.7"
ver="8"
If you are building from CVS, omit this step (CVS source tree names usually do
not contain a version number).
+1 -1
View File
@@ -34,4 +34,4 @@ TCL_CONFIGURE_ARGS = --enable-threads --enable-dtrace
TCL_LIBRARY = $(LIBDIR)/tcl$(VERSION)
TCL_PACKAGE_PATH = "$(LIBDIR)"
TCL_DEFS = HAVE_TCL_CONFIG_H
VERSION = 8.7
VERSION = 8
+11 -3
View File
@@ -118,6 +118,14 @@ test package-2.6 {Tcl_PkgProvide procedure} {
package forget t
package provide t 2.3a1
} {}
test package-2.7 {Tcl_PkgProvide procedure} {
package forget t
package provide t 2.3.0-alpha.1
} {}
test package-2.8 {Tcl_PkgProvide procedure} {
package forget t
package provide t 2.3.0-rc.1
} {}
set n 0
foreach v {
@@ -585,7 +593,7 @@ test package-3.50 {Tcl_PkgRequire procedure, picking best stable version} -const
}
} -body {
child eval {
foreach i {1.4 3.4 4.0a1 2.3 2.4 2.2} {
foreach i {1.4 3.4 4.0a1 4.0.0-alpha.1 2.3 2.4 2.2} {
package ifneeded t $i "set x $i; package provide t $i"
}
package require t
@@ -598,7 +606,7 @@ test package-3.51 {Tcl_PkgRequire procedure, picking best stable version} -setup
package forget t
set x xxx
} -body {
foreach i {1.2b1 1.2 1.3a2 1.3} {
foreach i {1.2b1 1.2.0-beta.1 1.2 1.3a2 1.3.0-alpha.2 1.3} {
package ifneeded t $i "set x $i; package provide t $i"
}
package require t
@@ -608,7 +616,7 @@ test package-3.52 {Tcl_PkgRequire procedure, picking best stable version} -setup
package forget t
set x xxx
} -body {
foreach i {1.2b1 1.2 1.3 1.3a2} {
foreach i {1.2b1 1.2.0-beta.1 1.2 1.3 1.3a2 1.3.0-alpha.2} {
package ifneeded t $i "set x $i; package provide t $i"
}
package require t
+1 -1
View File
@@ -1700,7 +1700,7 @@ fi
. $TCL_BIN_DIR/tclConfig.sh
TCL_WIN_VERSION=$TCL_MAJOR_VERSION$TCL_MINOR_VERSION
TCL_WIN_VERSION=$TCL_MAJOR_VERSION
CC=$TCL_CC
+1 -1
View File
@@ -23,7 +23,7 @@ fi
. $TCL_BIN_DIR/tclConfig.sh
TCL_WIN_VERSION=$TCL_MAJOR_VERSION$TCL_MINOR_VERSION
TCL_WIN_VERSION=$TCL_MAJOR_VERSION
AC_SUBST(TCL_WIN_VERSION)
CC=$TCL_CC
AC_SUBST(CC)
+2 -2
View File
@@ -5,9 +5,9 @@ HCW=0
LCID=0x409 0x0 0x0 ;English (United States)
REPORT=Yes
TITLE=Tcl/Tk Reference Manual
CNT=tcl87.cnt
CNT=tcl8.cnt
COPYRIGHT=Copyright © 2000 Ajuba Solutions
HLP=tcl87.hlp
HLP=tcl8.hlp
[FILES]
tcl.rtf
+2 -2
View File
@@ -4,7 +4,7 @@ if {[catch {package require Tcl 8.6-} msg]} {
puts stderr "ERROR: $msg"
puts stderr "If running this script from 'make html', set the\
NATIVE_TCLSH environment\nvariable to point to an installed\
tclsh8.7 (or the equivalent tclsh87.exe\non Windows)."
tclsh8 (or the equivalent tclsh8.exe\non Windows)."
exit 1
}
@@ -22,7 +22,7 @@ if {[catch {package require Tcl 8.6-} msg]} {
# Copyright (c) 1995-1997 Roger E. Critchlow Jr
# Copyright (c) 2004-2010 Donal K. Fellows
set ::Version "50/8.7"
set ::Version "50/8"
set ::CSSFILE "docs.css"
##
+19 -11
View File
@@ -635,7 +635,7 @@ ${LIB_FILE}: ${STUB_LIB_FILE} ${OBJS}
@MAKE_LIB@
${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
@if test "x${LIB_FILE}" = "xlibtcl${MAJOR_VERSION}.${MINOR_VERSION}.dll"; then \
@if test "x${LIB_FILE}" = "xlibtcl${MAJOR_VERSION}.dll"; then \
(cd ${TOP_DIR}/win; ${MAKE} winextensions); \
fi
rm -f $@
@@ -804,8 +804,8 @@ install-binaries: binaries
@echo "Installing $(LIB_FILE) to $(DLL_INSTALL_DIR)/"
@@INSTALL_LIB@
@chmod 555 "$(DLL_INSTALL_DIR)/$(LIB_FILE)"
@echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
@$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)/tclsh$(VERSION)${EXE_SUFFIX}"
@echo "Installing ${TCL_EXE} as $(BIN_INSTALL_DIR)/tclsh$(MAJOR_VERSION)${EXE_SUFFIX}"
@$(INSTALL_PROGRAM) ${TCL_EXE} "$(BIN_INSTALL_DIR)/tclsh$(MAJOR_VERSION)${EXE_SUFFIX}"
@echo "Installing tclConfig.sh to $(CONFIG_INSTALL_DIR)/"
@$(INSTALL_DATA) tclConfig.sh "$(CONFIG_INSTALL_DIR)/tclConfig.sh"
@echo "Installing tclooConfig.sh to $(CONFIG_INSTALL_DIR)/"
@@ -829,7 +829,7 @@ install-libraries: libraries
else true; \
fi; \
done;
@for i in opt0.4 http1.0 encoding ../tcl8 ../tcl8/8.4 ../tcl8/8.4/platform ../tcl8/8.5 ../tcl8/8.6; \
@for i in opt0.4 http1.0 encoding; \
do \
if [ ! -d "$(SCRIPT_INSTALL_DIR)"/$$i ] ; then \
echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
@@ -837,6 +837,14 @@ install-libraries: libraries
else true; \
fi; \
done;
@for i in tcl8 tcl8/8.4 tcl8/8.4/platform tcl8/8.5 tcl8/8.6; \
do \
if [ ! -d "$(LIB_INSTALL_DIR)"/$$i ] ; then \
echo "Making directory $(LIB_INSTALL_DIR)/$$i"; \
$(INSTALL_DATA_DIR) "$(LIB_INSTALL_DIR)"/$$i; \
else true; \
fi; \
done;
@echo "Installing library files to $(SCRIPT_INSTALL_DIR)/";
@for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex \
$(UNIX_DIR)/tclAppInit.c @LDAIX_SRC@ @DTRACE_SRC@; \
@@ -849,21 +857,21 @@ install-libraries: libraries
$(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/http1.0; \
done;
@echo "Installing package http 2.8.12 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.6/http-2.8.12.tm;
@$(INSTALL_DATA) $(TOP_DIR)/library/http/http.tcl "$(LIB_INSTALL_DIR)"/tcl8/8.6/http-2.8.12.tm;
@echo "Installing package opt0.4 files to $(SCRIPT_INSTALL_DIR)/opt0.4/";
@for i in $(TOP_DIR)/library/opt/*.tcl ; \
do \
$(INSTALL_DATA) $$i "$(SCRIPT_INSTALL_DIR)"/opt0.4; \
done;
@echo "Installing package msgcat 1.6.1 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/msgcat-1.6.1.tm;
@echo "Installing package tcltest 2.4.1 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.5/tcltest-2.4.1.tm;
@$(INSTALL_DATA) $(TOP_DIR)/library/msgcat/msgcat.tcl "$(LIB_INSTALL_DIR)"/tcl8/8.5/msgcat-1.6.1.tm;
@echo "Installing package tcltest 2.4.0 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/tcltest/tcltest.tcl "$(LIB_INSTALL_DIR)"/tcl8/8.5/tcltest-2.4.1.tm;
@echo "Installing package platform 1.0.14 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform-1.0.14.tm;
@$(INSTALL_DATA) $(TOP_DIR)/library/platform/platform.tcl "$(LIB_INSTALL_DIR)"/tcl8/8.4/platform-1.0.14.tm;
@echo "Installing package platform::shell 1.1.4 as a Tcl Module";
@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(SCRIPT_INSTALL_DIR)"/../tcl8/8.4/platform/shell-1.1.4.tm;
@$(INSTALL_DATA) $(TOP_DIR)/library/platform/shell.tcl "$(LIB_INSTALL_DIR)"/tcl8/8.4/platform/shell-1.1.4.tm;
@echo "Installing encoding files to $(SCRIPT_INSTALL_DIR)/encoding/";
@for i in $(TOP_DIR)/library/encoding/*.enc ; do \
@@ -2105,7 +2113,7 @@ alldist: dist
# such, this rule is not guaranteed to work well on all systems; it only needs
# to function on those of the Tcl/Tk maintainers.
#
# Also note that the 8.6 tool build requires an installed 8.6 native Tcl
# Also note that the 8.7 tool build requires an installed 8.7 native Tcl
# interpreter in order to be able to run.
#--------------------------------------------------------------------------
+22 -28
View File
@@ -761,6 +761,7 @@ enable_shared
enable_64bit
enable_64bit_vis
enable_rpath
with_dbgx
enable_corefoundation
enable_load
enable_symbols
@@ -1416,6 +1417,7 @@ Optional Packages:
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-encoding encoding for configuration values (default:
iso8859-1)
--with-dbgx debug extension for binaries
--with-tzdata install timezone data (default: autodetect)
Some influential environment variables:
@@ -2325,8 +2327,8 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
TCL_VERSION=8.7
TCL_MAJOR_VERSION=8
TCL_MINOR_VERSION=7
TCL_PATCH_LEVEL="a2"
VERSION=${TCL_VERSION}
TCL_PATCH_LEVEL=".0-alpha.2"
VERSION=${TCL_MAJOR_VERSION}
EXTRA_INSTALL_BINARIES=${EXTRA_INSTALL_BINARIES:-"@:"}
EXTRA_BUILD_HTML=${EXTRA_BUILD_HTML:-"@:"}
@@ -4943,6 +4945,13 @@ fi
# Step 3: set configuration options based on system name and version.
# Check whether --with-dbgx was given.
if test "${with_dbgx+set}" = set; then :
withval=$with_dbgx; with_dbgx=${withval}
fi
do64bit_ok=no
# default to '{$LIBS}' and set to "" on per-platform necessary basis
SHLIB_LD_LIBS='${LIBS}'
@@ -4952,9 +4961,7 @@ fi
# is disabled by the user. [Bug 1016796]
LDFLAGS_ARCH=""
UNSHARED_LIB_SUFFIX=""
TCL_TRIM_DOTS='`echo ${VERSION} | tr -d .`'
ECHO_VERSION='`echo ${VERSION}`'
TCL_LIB_VERSIONS_OK=ok
CFLAGS_DEBUG=-g
if test "$GCC" = yes; then :
@@ -5236,7 +5243,7 @@ fi
CC_SEARCH_FLAGS=""
LD_SEARCH_FLAGS=""
TCL_NEEDS_EXP_FILE=1
TCL_EXPORT_FILE_SUFFIX='${VERSION}\$\{DBGX\}.dll.a'
TCL_EXPORT_FILE_SUFFIX='${VERSION}${with_dbgx}.dll.a'
SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -Wl,--out-implib,\$@.a"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Cygwin version of gcc" >&5
$as_echo_n "checking for Cygwin version of gcc... " >&6; }
@@ -5729,8 +5736,7 @@ fi
fi
# OpenBSD doesn't do version numbers with dots.
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
TCL_LIB_VERSIONS_OK=nodots
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'
;;
NetBSD-*)
# NetBSD has ELF and can use 'cc -shared' to build shared libs
@@ -5778,10 +5784,8 @@ fi
case $system in
FreeBSD-3.*)
# Version numbers are dot-stripped by system policy.
TCL_TRIM_DOTS=`echo ${VERSION} | tr -d .`
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so'
TCL_LIB_VERSIONS_OK=nodots
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'
SHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.so'
;;
esac
;;
@@ -6519,11 +6523,11 @@ fi
if test "$SHARED_LIB_SUFFIX" = ""; then :
SHARED_LIB_SUFFIX='${VERSION}${SHLIB_SUFFIX}'
SHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}${SHLIB_SUFFIX}'
fi
if test "$UNSHARED_LIB_SUFFIX" = ""; then :
UNSHARED_LIB_SUFFIX='${VERSION}.a'
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'
fi
DLL_INSTALL_DIR="\$(LIB_INSTALL_DIR)"
@@ -6671,7 +6675,6 @@ else
fi
# FIXME: Currently, LDFLAGS_DEFAULT is not used, it should work like CFLAGS_DEFAULT.
DBGX=""
if test "$tcl_ok" = "no"; then
CFLAGS_DEFAULT='$(CFLAGS_OPTIMIZE)'
LDFLAGS_DEFAULT='$(LDFLAGS_OPTIMIZE)'
@@ -10186,11 +10189,11 @@ eval "TCL_LIB_FILE=libtcl${LIB_SUFFIX}"
# tclConfig.sh needs a version of the _LIB_SUFFIX that has been eval'ed
# since on some platforms TCL_LIB_FILE contains shell escapes.
# (See also: TCL_TRIM_DOTS).
# (See also: TCL_TRIM_DOTS, which is deprecated).
eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
TCL_LIBRARY='$(prefix)/share/tcl$(MAJOR_VERSION)'
PRIVATE_INCLUDE_DIR='$(includedir)'
HTML_DIR='$(DISTDIR)/html'
@@ -10293,11 +10296,7 @@ else
eval libdir="$libdir"
# default install directory for bundled packages
PACKAGE_DIR="$libdir"
if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
TCL_LIB_FLAG="-ltcl${TCL_VERSION}"
else
TCL_LIB_FLAG="-ltcl`echo ${TCL_VERSION} | tr -d .`"
fi
TCL_LIB_FLAG="-ltcl${TCL_MAJOR_VERSION}${with_dbgx}"
TCL_BUILD_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_LIB_FLAG}"
TCL_LIB_SPEC="-L${libdir} ${TCL_LIB_FLAG}"
fi
@@ -10329,18 +10328,13 @@ fi
# stub support.
#--------------------------------------------------------------------
# Replace ${VERSION} with contents of ${TCL_VERSION}
# double-eval to account for TCL_TRIM_DOTS.
# Replace ${VERSION} with contents of ${TCL_MAJOR_VERSION}
#
eval "TCL_STUB_LIB_FILE=libtclstub${TCL_UNSHARED_LIB_SUFFIX}"
eval "TCL_STUB_LIB_FILE=\"${TCL_STUB_LIB_FILE}\""
eval "TCL_STUB_LIB_DIR=${libdir}"
if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
TCL_STUB_LIB_FLAG="-ltclstub${TCL_VERSION}"
else
TCL_STUB_LIB_FLAG="-ltclstub`echo ${TCL_VERSION} | tr -d .`"
fi
TCL_STUB_LIB_FLAG="-ltclstub${TCL_MAJOR_VERSION}${with_dbgx}"
TCL_BUILD_STUB_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_STUB_LIB_FLAG}"
TCL_STUB_LIB_SPEC="-L${TCL_STUB_LIB_DIR} ${TCL_STUB_LIB_FLAG}"
+8 -17
View File
@@ -4,7 +4,7 @@ dnl generate the file "configure", which is run during Tcl installation
dnl to configure the system for the local environment.
AC_INIT([tcl],[8.7])
AC_PREREQ(2.69)
AC_PREREQ(2.59)
dnl This is only used when included from macosx/configure.ac
m4_ifdef([SC_USE_CONFIG_HEADERS], [
@@ -25,8 +25,8 @@ m4_ifdef([SC_USE_CONFIG_HEADERS], [
TCL_VERSION=8.7
TCL_MAJOR_VERSION=8
TCL_MINOR_VERSION=7
TCL_PATCH_LEVEL="a2"
VERSION=${TCL_VERSION}
TCL_PATCH_LEVEL=".0-alpha.2"
VERSION=${TCL_MAJOR_VERSION}
EXTRA_INSTALL_BINARIES=${EXTRA_INSTALL_BINARIES:-"@:"}
EXTRA_BUILD_HTML=${EXTRA_BUILD_HTML:-"@:"}
@@ -819,11 +819,11 @@ eval "TCL_LIB_FILE=libtcl${LIB_SUFFIX}"
# tclConfig.sh needs a version of the _LIB_SUFFIX that has been eval'ed
# since on some platforms TCL_LIB_FILE contains shell escapes.
# (See also: TCL_TRIM_DOTS).
# (See also: TCL_TRIM_DOTS, which is deprecated).
eval "TCL_LIB_FILE=${TCL_LIB_FILE}"
TCL_LIBRARY='$(prefix)/lib/tcl$(VERSION)'
TCL_LIBRARY='$(prefix)/share/tcl$(MAJOR_VERSION)'
PRIVATE_INCLUDE_DIR='$(includedir)'
HTML_DIR='$(DISTDIR)/html'
@@ -890,11 +890,7 @@ else
eval libdir="$libdir"
# default install directory for bundled packages
PACKAGE_DIR="$libdir"
if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
TCL_LIB_FLAG="-ltcl${TCL_VERSION}"
else
TCL_LIB_FLAG="-ltcl`echo ${TCL_VERSION} | tr -d .`"
fi
TCL_LIB_FLAG="-ltcl${TCL_MAJOR_VERSION}${with_dbgx}"
TCL_BUILD_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_LIB_FLAG}"
TCL_LIB_SPEC="-L${libdir} ${TCL_LIB_FLAG}"
fi
@@ -926,18 +922,13 @@ fi
# stub support.
#--------------------------------------------------------------------
# Replace ${VERSION} with contents of ${TCL_VERSION}
# double-eval to account for TCL_TRIM_DOTS.
# Replace ${VERSION} with contents of ${TCL_MAJOR_VERSION}
#
eval "TCL_STUB_LIB_FILE=libtclstub${TCL_UNSHARED_LIB_SUFFIX}"
eval "TCL_STUB_LIB_FILE=\"${TCL_STUB_LIB_FILE}\""
eval "TCL_STUB_LIB_DIR=${libdir}"
if test "${TCL_LIB_VERSIONS_OK}" = "ok"; then
TCL_STUB_LIB_FLAG="-ltclstub${TCL_VERSION}"
else
TCL_STUB_LIB_FLAG="-ltclstub`echo ${TCL_VERSION} | tr -d .`"
fi
TCL_STUB_LIB_FLAG="-ltclstub${TCL_MAJOR_VERSION}${with_dbgx}"
TCL_BUILD_STUB_LIB_SPEC="-L`pwd | sed -e 's/ /\\\\ /g'` ${TCL_STUB_LIB_FLAG}"
TCL_STUB_LIB_SPEC="-L${TCL_STUB_LIB_DIR} ${TCL_STUB_LIB_FLAG}"
+8 -12
View File
@@ -736,7 +736,6 @@ AC_DEFUN([SC_ENABLE_SYMBOLS], [
[build with debugging symbols (default: off)]),
[tcl_ok=$enableval], [tcl_ok=no])
# FIXME: Currently, LDFLAGS_DEFAULT is not used, it should work like CFLAGS_DEFAULT.
DBGX=""
if test "$tcl_ok" = "no"; then
CFLAGS_DEFAULT='$(CFLAGS_OPTIMIZE)'
LDFLAGS_DEFAULT='$(LDFLAGS_OPTIMIZE)'
@@ -1072,6 +1071,8 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
# Step 3: set configuration options based on system name and version.
AC_ARG_WITH(dbgx, [ --with-dbgx debug extension for binaries], with_dbgx=${withval})
do64bit_ok=no
# default to '{$LIBS}' and set to "" on per-platform necessary basis
SHLIB_LD_LIBS='${LIBS}'
@@ -1081,9 +1082,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
# is disabled by the user. [Bug 1016796]
LDFLAGS_ARCH=""
UNSHARED_LIB_SUFFIX=""
TCL_TRIM_DOTS='`echo ${VERSION} | tr -d .`'
ECHO_VERSION='`echo ${VERSION}`'
TCL_LIB_VERSIONS_OK=ok
CFLAGS_DEBUG=-g
AS_IF([test "$GCC" = yes], [
CFLAGS_OPTIMIZE=-O2
@@ -1207,7 +1206,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
CC_SEARCH_FLAGS=""
LD_SEARCH_FLAGS=""
TCL_NEEDS_EXP_FILE=1
TCL_EXPORT_FILE_SUFFIX='${VERSION}\$\{DBGX\}.dll.a'
TCL_EXPORT_FILE_SUFFIX='${VERSION}${with_dbgx}.dll.a'
SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -Wl,--out-implib,\$[@].a"
AC_CACHE_CHECK(for Cygwin version of gcc,
ac_cv_cygwin,
@@ -1461,8 +1460,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
CFLAGS="$CFLAGS -pthread"
])
# OpenBSD doesn't do version numbers with dots.
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
TCL_LIB_VERSIONS_OK=nodots
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'
;;
NetBSD-*)
# NetBSD has ELF and can use 'cc -shared' to build shared libs
@@ -1502,10 +1500,8 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
case $system in
FreeBSD-3.*)
# Version numbers are dot-stripped by system policy.
TCL_TRIM_DOTS=`echo ${VERSION} | tr -d .`
UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.a'
SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}.so'
TCL_LIB_VERSIONS_OK=nodots
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'
SHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.so'
;;
esac
;;
@@ -1926,9 +1922,9 @@ dnl # preprocessing tests use only CPPFLAGS.
])
AS_IF([test "$SHARED_LIB_SUFFIX" = ""], [
SHARED_LIB_SUFFIX='${VERSION}${SHLIB_SUFFIX}'])
SHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}${SHLIB_SUFFIX}'])
AS_IF([test "$UNSHARED_LIB_SUFFIX" = ""], [
UNSHARED_LIB_SUFFIX='${VERSION}.a'])
UNSHARED_LIB_SUFFIX='${TCL_MAJOR_VERSION}${with_dbgx}.a'])
DLL_INSTALL_DIR="\$(LIB_INSTALL_DIR)"
AS_IF([test "${SHARED_BUILD}" = 1 -a "${SHLIB_SUFFIX}" != ""], [
+1 -1
View File
@@ -4,7 +4,7 @@
Name: tcl
Summary: Tcl scripting language development environment
Version: 8.7a2
Version: 8.7.0-alpha.2
Release: 2
License: BSD
Group: Development/Languages
+2 -1
View File
@@ -23,6 +23,7 @@ TCL_DEFS='@DEFS@'
# TCL_DBGX used to be used to distinguish debug vs. non-debug builds.
# This was a righteous pain so the core doesn't do that any more.
# DEPRECATED, will be removed in Tcl 9!
TCL_DBGX=
# Default flags used in an optimized and debuggable build, respectively.
@@ -113,7 +114,7 @@ TCL_INCLUDE_SPEC='@TCL_INCLUDE_SPEC@'
# Indicates whether a version numbers should be used in -l switches
# ("ok" means it's safe to use switches like -ltcl7.5; "nodots" means
# use switches like -ltcl75). SunOS and FreeBSD require "nodots", for
# example.
# example. DEPRECATED, will be removed in Tcl 9!
TCL_LIB_VERSIONS_OK='@TCL_LIB_VERSIONS_OK@'
# String that can be evaluated to generate the part of a shared library
+1 -1
View File
@@ -488,7 +488,7 @@ TclpInitLibraryPath(
* installed.
*/
sprintf(installLib, "lib/tcl%s", TCL_VERSION);
sprintf(installLib, "lib/tcl%d", TCL_MAJOR_VERSION);
/*
* If TCL_LIBRARY is set, search there.
+18 -24
View File
@@ -34,7 +34,7 @@ INSTALL_ROOT =
# Directory from which applications will reference the library of Tcl scripts
# (note: you can set the TCL_LIBRARY environment variable at run-time to
# override this value):
TCL_LIBRARY = $(prefix)/lib/tcl$(VERSION)
TCL_LIBRARY = $(prefix)/share/tcl$(VER)
# Path to use at runtime to refer to LIB_INSTALL_DIR:
LIB_RUNTIME_DIR = $(libdir)
@@ -66,9 +66,6 @@ MAN3_INSTALL_DIR = $(MAN_INSTALL_DIR)/man3
# Directory in which to install manual entries for the built-in Tcl commands:
MANN_INSTALL_DIR = $(MAN_INSTALL_DIR)/mann
# Libraries built with optimization switches have this additional extension
TCL_DBGX = @TCL_DBGX@
# warning flags
CFLAGS_WARNING = @CFLAGS_WARNING@
@@ -130,12 +127,9 @@ DLLSUFFIX = @DLLSUFFIX@
LIBSUFFIX = @LIBSUFFIX@
EXESUFFIX = @EXESUFFIX@
VER = @TCL_MAJOR_VERSION@@TCL_MINOR_VERSION@
DOTVER = @TCL_MAJOR_VERSION@.@TCL_MINOR_VERSION@
DDEVER = @TCL_DDE_MAJOR_VERSION@@TCL_DDE_MINOR_VERSION@
DDEDOTVER = @TCL_DDE_MAJOR_VERSION@.@TCL_DDE_MINOR_VERSION@
REGVER = @TCL_REG_MAJOR_VERSION@@TCL_REG_MINOR_VERSION@
REGDOTVER = @TCL_REG_MAJOR_VERSION@.@TCL_REG_MINOR_VERSION@
VER = @TCL_MAJOR_VERSION@
DDEVER = @TCL_DDE_MAJOR_VERSION@
REGVER = @TCL_REG_MAJOR_VERSION@
TCL_STUB_LIB_FILE = @TCL_STUB_LIB_FILE@
TCL_DLL_FILE = @TCL_DLL_FILE@
@@ -577,7 +571,7 @@ install-binaries: binaries
else true; \
fi; \
done;
@for i in dde${DDEDOTVER} reg${REGDOTVER}; \
@for i in tcl8 tcl8/dde${DDEVER} tcl8/reg${REGVER}; \
do \
if [ ! -d $(LIB_INSTALL_DIR)/$$i ] ; then \
echo "Making directory $(LIB_INSTALL_DIR)/$$i"; \
@@ -601,23 +595,23 @@ install-binaries: binaries
done
@if [ -f $(DDE_DLL_FILE) ]; then \
echo Installing $(DDE_DLL_FILE); \
$(COPY) $(DDE_DLL_FILE) $(LIB_INSTALL_DIR)/dde${DDEDOTVER}; \
$(COPY) $(DDE_DLL_FILE) $(LIB_INSTALL_DIR)/tcl8/dde${DDEVER}; \
$(COPY) $(ROOT_DIR)/library/dde/pkgIndex.tcl \
$(LIB_INSTALL_DIR)/dde${DDEDOTVER}; \
$(LIB_INSTALL_DIR)/tcl8/dde${DDEVER}; \
fi
@if [ -f $(DDE_LIB_FILE) ]; then \
echo Installing $(DDE_LIB_FILE); \
$(COPY) $(DDE_LIB_FILE) $(LIB_INSTALL_DIR)/dde${DDEDOTVER}; \
$(COPY) $(DDE_LIB_FILE) $(LIB_INSTALL_DIR)/tcl8/dde${DDEVER}; \
fi
@if [ -f $(REG_DLL_FILE) ]; then \
echo Installing $(REG_DLL_FILE); \
$(COPY) $(REG_DLL_FILE) $(LIB_INSTALL_DIR)/reg${REGDOTVER}; \
$(COPY) $(REG_DLL_FILE) $(LIB_INSTALL_DIR)/tcl8/reg${REGVER}; \
$(COPY) $(ROOT_DIR)/library/reg/pkgIndex.tcl \
$(LIB_INSTALL_DIR)/reg${REGDOTVER}; \
$(LIB_INSTALL_DIR)/tcl8/reg${REGVER}; \
fi
@if [ -f $(REG_LIB_FILE) ]; then \
echo Installing $(REG_LIB_FILE); \
$(COPY) $(REG_LIB_FILE) $(LIB_INSTALL_DIR)/reg${REGDOTVER}; \
$(COPY) $(REG_LIB_FILE) $(LIB_INSTALL_DIR)/tcl8/reg${REGVER}; \
fi
install-libraries: libraries install-tzdata install-msgs
@@ -630,7 +624,7 @@ install-libraries: libraries install-tzdata install-msgs
else true; \
fi; \
done;
@for i in http1.0 opt0.4 encoding ../tcl8 ../tcl8/8.4 ../tcl8/8.4/platform ../tcl8/8.5 ../tcl8/8.6; \
@for i in http1.0 opt0.4 encoding platform; \
do \
if [ ! -d $(SCRIPT_INSTALL_DIR)/$$i ] ; then \
echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
@@ -658,20 +652,20 @@ install-libraries: libraries install-tzdata install-msgs
$(COPY) "$$j" "$(SCRIPT_INSTALL_DIR)/http1.0"; \
done;
@echo "Installing package http 2.8.12 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/http/http.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.6/http-2.8.12.tm;
@$(COPY) $(ROOT_DIR)/library/http/http.tcl $(SCRIPT_INSTALL_DIR)/http-2.8.12.tm;
@echo "Installing library opt0.4 directory";
@for j in $(ROOT_DIR)/library/opt/*.tcl; \
do \
$(COPY) "$$j" "$(SCRIPT_INSTALL_DIR)/opt0.4"; \
done;
@echo "Installing package msgcat 1.6.1 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/msgcat/msgcat.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.5/msgcat-1.6.1.tm;
@echo "Installing package tcltest 2.4.0 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/tcltest/tcltest.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.5/tcltest-2.4.0.tm;
@$(COPY) $(ROOT_DIR)/library/msgcat/msgcat.tcl $(SCRIPT_INSTALL_DIR)/msgcat-1.6.1.tm;
@echo "Installing package tcltest 2.4.1 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/tcltest/tcltest.tcl $(SCRIPT_INSTALL_DIR)/tcltest-2.4.1.tm;
@echo "Installing package platform 1.0.14 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/platform/platform.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/platform-1.0.14.tm;
@$(COPY) $(ROOT_DIR)/library/platform/platform.tcl $(SCRIPT_INSTALL_DIR)/platform-1.0.14.tm;
@echo "Installing package platform::shell 1.1.4 as a Tcl Module";
@$(COPY) $(ROOT_DIR)/library/platform/shell.tcl $(SCRIPT_INSTALL_DIR)/../tcl8/8.4/platform/shell-1.1.4.tm;
@$(COPY) $(ROOT_DIR)/library/platform/shell.tcl $(SCRIPT_INSTALL_DIR)/platform/shell-1.1.4.tm;
@echo "Installing encodings";
@for i in $(ROOT_DIR)/library/encoding/*.enc ; do \
$(COPY) "$$i" "$(SCRIPT_INSTALL_DIR)/encoding"; \
+2 -2
View File
@@ -79,9 +79,9 @@ Use the Makefile "install" target to install Tcl. It will install it
according to the prefix options you provided in the correct directory
structure.
Note that in order to run tclsh87.exe, you must ensure that tcl87.dll is
Note that in order to run tclsh8.exe, you must ensure that tcl8.dll is
on your path, in the system directory, or in the directory containing
tclsh87.exe.
tclsh8.exe.
Note: Tcl no longer provides support for Win32s.
+27 -28
View File
@@ -767,6 +767,7 @@ enable_threads
with_encoding
enable_shared
enable_64bit
with_dbgx
enable_symbols
enable_embedded_manifest
'
@@ -1397,6 +1398,7 @@ Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-encoding encoding for configuration values
--with-dbgx debug extension for binaries
Some influential environment variables:
CC C compiler command
@@ -2097,8 +2099,8 @@ SHELL=/bin/sh
TCL_VERSION=8.7
TCL_MAJOR_VERSION=8
TCL_MINOR_VERSION=7
TCL_PATCH_LEVEL="a2"
VER=$TCL_MAJOR_VERSION$TCL_MINOR_VERSION
TCL_PATCH_LEVEL=".0-alpha.2"
VER=$TCL_MAJOR_VERSION
TCL_DDE_VERSION=1.4
TCL_DDE_MAJOR_VERSION=1
@@ -3851,6 +3853,13 @@ fi
# Check whether --with-dbgx was given.
if test "${with_dbgx+set}" = set; then :
withval=$with_dbgx; with_dbgx=${withval}
fi
SHLIB_SUFFIX=".dll"
# MACHINE is IX86 for LINK, but this is used by the manifest,
@@ -4099,7 +4108,7 @@ $as_echo_n "checking compiler flags... " >&6; }
$as_echo "using static flags" >&6; }
runtime=
LIBRARIES="\${STATIC_LIBRARIES}"
EXESUFFIX="s\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
else
# dynamic
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using shared flags" >&5
@@ -4114,7 +4123,7 @@ $as_echo "using shared flags" >&6; }
runtime=
# Add SHLIB_LD_LIBS to the Make rule, not here.
EXESUFFIX="\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
LIBRARIES="\${SHARED_LIBRARIES}"
fi
# Link with gcc since ld does not link to default libs like
@@ -4125,9 +4134,9 @@ $as_echo "using shared flags" >&6; }
-Wl,--out-implib,\$(patsubst %.dll,lib%.a,\$@)"
# DLLSUFFIX is separate because it is the building block for
# users of tclConfig.sh that may build shared or static.
DLLSUFFIX="\${DBGX}.dll"
LIBSUFFIX="\${DBGX}.a"
LIBFLAGSUFFIX="\${DBGX}"
DLLSUFFIX="${with_dbgx}.dll"
LIBSUFFIX="${with_dbgx}.a"
LIBFLAGSUFFIX="${with_dbgx}"
SHLIB_SUFFIX=.dll
EXTRA_CFLAGS="${extra_cflags}"
@@ -4208,7 +4217,7 @@ $as_echo " Using 64-bit $MACHINE mode" >&6; }
$as_echo "using static flags" >&6; }
runtime=-MT
LIBRARIES="\${STATIC_LIBRARIES}"
EXESUFFIX="s\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
else
# dynamic
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: using shared flags" >&5
@@ -4216,7 +4225,7 @@ $as_echo "using shared flags" >&6; }
runtime=-MD
# Add SHLIB_LD_LIBS to the Make rule, not here.
LIBRARIES="\${SHARED_LIBRARIES}"
EXESUFFIX="\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
case "x`echo \${VisualStudioVersion}`" in
x1[4-9]*)
lflags="${lflags} -nodefaultlib:libucrt.lib"
@@ -4228,9 +4237,9 @@ $as_echo "using shared flags" >&6; }
MAKE_DLL="\${SHLIB_LD} \$(LDFLAGS) -out:\$@"
# DLLSUFFIX is separate because it is the building block for
# users of tclConfig.sh that may build shared or static.
DLLSUFFIX="\${DBGX}.dll"
LIBSUFFIX="\${DBGX}.lib"
LIBFLAGSUFFIX="\${DBGX}"
DLLSUFFIX="${with_dbgx}.dll"
LIBSUFFIX="${with_dbgx}.lib"
LIBFLAGSUFFIX="${with_dbgx}"
# This is a 2-stage check to make sure we have the 64-bit SDK
# We have to know where the SDK is installed.
@@ -4884,7 +4893,6 @@ fi
if test "$tcl_ok" = "no"; then
CFLAGS_DEFAULT='$(CFLAGS_OPTIMIZE)'
LDFLAGS_DEFAULT='$(LDFLAGS_OPTIMIZE)'
DBGX=""
$as_echo "#define NDEBUG 1" >>confdefs.h
@@ -4896,7 +4904,6 @@ $as_echo "no" >&6; }
else
CFLAGS_DEFAULT='$(CFLAGS_DEBUG)'
LDFLAGS_DEFAULT='$(LDFLAGS_DEBUG)'
DBGX=g
if test "$tcl_ok" = "yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (standard debugging)" >&5
$as_echo "yes (standard debugging)" >&6; }
@@ -4931,7 +4938,7 @@ $as_echo "enabled $tcl_ok debugging" >&6; }
fi
TCL_DBGX=${DBGX}
TCL_DBGX=""
#--------------------------------------------------------------------
# Embed the manifest if we can determine how
@@ -5036,17 +5043,9 @@ CFG_TCL_EXPORT_FILE_SUFFIX=${TCL_EXPORT_FILE_SUFFIX}
#--------------------------------------------------------------------
if test ${SHARED_BUILD} = 0 ; then
if test "${DBGX}" = "g"; then
RC_DEFINES="${RC_DEFINE} STATIC_BUILD ${RC_DEFINE} DEBUG"
else
RC_DEFINES="${RC_DEFINE} STATIC_BUILD"
fi
RC_DEFINES="${RC_DEFINE} STATIC_BUILD"
else
if test "${DBGX}" = "g"; then
RC_DEFINES="${RC_DEFINE} DEBUG"
else
RC_DEFINES=""
fi
RC_DEFINES=""
fi
#--------------------------------------------------------------------
@@ -5066,11 +5065,11 @@ fi
# TCL_WIN_VERSION is the 4 dotted pair Windows version format which needs
# the release level, and must account for interim release versioning
case "$TCL_PATCH_LEVEL" in
*a*) TCL_RELEASE_LEVEL=0 ;;
*b*) TCL_RELEASE_LEVEL=1 ;;
*alpha*) TCL_RELEASE_LEVEL=0 ;;
*beta*) TCL_RELEASE_LEVEL=1 ;;
*) TCL_RELEASE_LEVEL=2 ;;
esac
TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.`echo $TCL_PATCH_LEVEL | tr -d ab.`"
TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.0`echo $TCL_PATCH_LEVEL | tr -d 0abehlpt\\\\-.`"
# X86|AMD64|IA64 for manifest
+8 -16
View File
@@ -14,8 +14,8 @@ SHELL=/bin/sh
TCL_VERSION=8.7
TCL_MAJOR_VERSION=8
TCL_MINOR_VERSION=7
TCL_PATCH_LEVEL="a2"
VER=$TCL_MAJOR_VERSION$TCL_MINOR_VERSION
TCL_PATCH_LEVEL=".0-alpha.2"
VER=$TCL_MAJOR_VERSION
TCL_DDE_VERSION=1.4
TCL_DDE_MAJOR_VERSION=1
@@ -268,7 +268,7 @@ fi
SC_ENABLE_SYMBOLS
TCL_DBGX=${DBGX}
TCL_DBGX=""
#--------------------------------------------------------------------
# Embed the manifest if we can determine how
@@ -324,17 +324,9 @@ CFG_TCL_EXPORT_FILE_SUFFIX=${TCL_EXPORT_FILE_SUFFIX}
#--------------------------------------------------------------------
if test ${SHARED_BUILD} = 0 ; then
if test "${DBGX}" = "g"; then
RC_DEFINES="${RC_DEFINE} STATIC_BUILD ${RC_DEFINE} DEBUG"
else
RC_DEFINES="${RC_DEFINE} STATIC_BUILD"
fi
RC_DEFINES="${RC_DEFINE} STATIC_BUILD"
else
if test "${DBGX}" = "g"; then
RC_DEFINES="${RC_DEFINE} DEBUG"
else
RC_DEFINES=""
fi
RC_DEFINES=""
fi
#--------------------------------------------------------------------
@@ -354,11 +346,11 @@ fi
# TCL_WIN_VERSION is the 4 dotted pair Windows version format which needs
# the release level, and must account for interim release versioning
case "$TCL_PATCH_LEVEL" in
*a*) TCL_RELEASE_LEVEL=0 ;;
*b*) TCL_RELEASE_LEVEL=1 ;;
*alpha*) TCL_RELEASE_LEVEL=0 ;;
*beta*) TCL_RELEASE_LEVEL=1 ;;
*) TCL_RELEASE_LEVEL=2 ;;
esac
TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.`echo $TCL_PATCH_LEVEL | tr -d ab.`"
TCL_WIN_VERSION="$TCL_VERSION.$TCL_RELEASE_LEVEL.0`echo $TCL_PATCH_LEVEL | tr -d 0abehlpt\\\\-.`"
AC_SUBST(TCL_WIN_VERSION)
# X86|AMD64|IA64 for manifest
AC_SUBST(MACHINE)
+7 -7
View File
@@ -80,7 +80,7 @@ RCFILE = tcl.rc
# Tcl version info based on macros set up by rules.vc
DOTVERSION = $(TCL_MAJOR_VERSION).$(TCL_MINOR_VERSION)
VERSION = $(TCL_MAJOR_VERSION)$(TCL_MINOR_VERSION)
VERSION = $(TCL_MAJOR_VERSION)
# We need versions of various core packages to generate appropriate
# file names during installation.
@@ -111,10 +111,10 @@ VERSION = $(TCL_MAJOR_VERSION)$(TCL_MINOR_VERSION)
!include versions.vc
DDEDOTVERSION = 1.4
DDEVERSION = $(DDEDOTVERSION:.=)
DDEVERSION = 1
REGDOTVERSION = 1.3
REGVERSION = $(REGDOTVERSION:.=)
REGVERSION = 1
TCLREGLIBNAME = $(PROJECT)reg$(REGVERSION)$(SUFX:t=).$(EXT)
TCLREGLIB = $(OUT_DIR)\$(TCLREGLIBNAME)
@@ -887,9 +887,9 @@ install-libraries: tclConfig tcl-nmake install-msgs install-tzdata
@$(CPY) "$(TCLDDELIB)" "$(LIB_INSTALL_DIR)\"
!endif
!else
@$(CPY) "$(TCLDDELIB)" "$(LIB_INSTALL_DIR)\dde$(DDEDOTVERSION)\"
@$(CPY) "$(TCLDDELIB)" "$(LIB_INSTALL_DIR)\dde$(DDEVERSION)\"
@$(CPY) "$(ROOT)\library\dde\pkgIndex.tcl" \
"$(LIB_INSTALL_DIR)\dde$(DDEDOTVERSION)\"
"$(LIB_INSTALL_DIR)\dde$(DDEVERSION)\"
!endif
@echo Installing $(TCLREGLIBNAME)
!if $(STATIC_BUILD)
@@ -897,9 +897,9 @@ install-libraries: tclConfig tcl-nmake install-msgs install-tzdata
@$(CPY) "$(TCLREGLIB)" "$(LIB_INSTALL_DIR)\"
!endif
!else
@$(CPY) "$(TCLREGLIB)" "$(LIB_INSTALL_DIR)\reg$(REGDOTVERSION)\"
@$(CPY) "$(TCLREGLIB)" "$(LIB_INSTALL_DIR)\reg$(REGVERSION)\"
@$(CPY) "$(ROOT)\library\reg\pkgIndex.tcl" \
"$(LIB_INSTALL_DIR)\reg$(REGDOTVERSION)\"
"$(LIB_INSTALL_DIR)\reg$(REGVERSION)\"
!endif
@echo Installing encodings
@$(CPY) "$(ROOT)\library\encoding\*.enc" \
+13 -24
View File
@@ -965,7 +965,7 @@ VERSION = $(DOTVERSION:.=)
# PRJSTUBLIB - output path of the generated project stubs library
# RESFILE - output resource file (only if not static build)
SUFX = tsgx
SUFX = sgx
!if $(DEBUG)
BUILDDIRTOP = Debug
@@ -984,7 +984,7 @@ BUILDDIRTOP =$(BUILDDIRTOP)_VC$(VCVER)
SUFX = $(SUFX:g=)
!endif
TMP_DIRFULL = .\$(BUILDDIRTOP)\$(PROJECT)_ThreadedDynamicStaticX
TMP_DIRFULL = .\$(BUILDDIRTOP)\$(PROJECT)_DynamicStaticX
!if !$(STATIC_BUILD)
TMP_DIRFULL = $(TMP_DIRFULL:Static=)
@@ -1001,11 +1001,6 @@ SUFX = $(SUFX:x=)
!endif
!endif
!if !$(TCL_THREADS)
TMP_DIRFULL = $(TMP_DIRFULL:Threaded=)
SUFX = $(SUFX:t=)
!endif
!ifndef TMP_DIR
TMP_DIR = $(TMP_DIRFULL)
!ifndef OUT_DIR
@@ -1034,7 +1029,7 @@ STUBPREFIX = $(PROJECT)stub
# Set up paths to various Tcl executables and libraries needed by extensions
!if $(DOING_TCL)
TCLSHNAME = $(PROJECT)sh$(TCL_VERSION)$(SUFX).exe
TCLSHNAME = $(PROJECT)sh$(TCL_MAJOR_VERSION)$(SUFX).exe
TCLSH = $(OUT_DIR)\$(TCLSHNAME)
TCLIMPLIB = $(OUT_DIR)\$(PROJECT)$(VERSION)$(SUFX).lib
TCLLIBNAME = $(PROJECT)$(VERSION)$(SUFX).$(EXT)
@@ -1048,29 +1043,23 @@ TCL_INCLUDES = -I"$(WINDIR)" -I"$(GENERICDIR)"
!if $(TCLINSTALL) # Building against an installed Tcl
TCLSH = $(_TCLDIR)\bin\tclsh$(TCL_VERSION)$(SUFX).exe
!if !exist("$(TCLSH)") && $(TCL_THREADS)
TCLSH = $(_TCLDIR)\bin\tclsh$(TCL_VERSION)t$(SUFX).exe
!endif
TCLSTUBLIB = $(_TCLDIR)\lib\tclstub$(TCL_VERSION).lib
TCLIMPLIB = $(_TCLDIR)\lib\tcl$(TCL_VERSION)$(SUFX).lib
TCLSH = $(_TCLDIR)\bin\tclsh$(TCL_MAJOR_VERSION)$(SUFX).exe
TCLSTUBLIB = $(_TCLDIR)\lib\tclstub$(TCL_MAJOR_VERSION).lib
TCLIMPLIB = $(_TCLDIR)\lib\tcl$(TCL_MAJOR_VERSION)$(SUFX).lib
TCL_LIBRARY = $(_TCLDIR)\lib
TCLREGLIB = $(_TCLDIR)\lib\tclreg13$(SUFX:t=).lib
TCLDDELIB = $(_TCLDIR)\lib\tcldde14$(SUFX:t=).lib
TCLREGLIB = $(_TCLDIR)\lib\tclreg1$(SUFX:t=).lib
TCLDDELIB = $(_TCLDIR)\lib\tcldde1$(SUFX:t=).lib
TCLTOOLSDIR = \must\have\tcl\sources\to\build\this\target
TCL_INCLUDES = -I"$(_TCLDIR)\include"
!else # Building against Tcl sources
TCLSH = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclsh$(TCL_VERSION)$(SUFX).exe
!if !exist($(TCLSH)) && $(TCL_THREADS)
TCLSH = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclsh$(TCL_VERSION)t$(SUFX).exe
!endif
TCLSTUBLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclstub$(TCL_VERSION).lib
TCLIMPLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tcl$(TCL_VERSION)$(SUFX).lib
TCLSH = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclsh$(TCL_MAJOR_VERSION)$(SUFX).exe
TCLSTUBLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclstub$(TCL_MAJOR_VERSION).lib
TCLIMPLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tcl$(TCL_MAJOR_VERSION)$(SUFX).lib
TCL_LIBRARY = $(_TCLDIR)\library
TCLREGLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclreg13$(SUFX:t=).lib
TCLDDELIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tcldde14$(SUFX:t=).lib
TCLREGLIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tclreg1.lib
TCLDDELIB = $(_TCLDIR)\win\$(BUILDDIRTOP)\tcldde1.lib
TCLTOOLSDIR = $(_TCLDIR)\tools
TCL_INCLUDES = -I"$(_TCLDIR)\generic" -I"$(_TCLDIR)\win"
+8 -8
View File
@@ -36,7 +36,7 @@ CFG=tcl - Win32 Debug Static
# PROP BASE Intermediate_Dir "Release\tcl_Dynamic"
# PROP BASE Cmd_Line "nmake -nologo -f makefile.vc OPTS=none MSVCDIR=IDE"
# PROP BASE Rebuild_Opt "-a"
# PROP BASE Target_File "Release\tclsh87.exe"
# PROP BASE Target_File "Release\tclsh8.exe"
# PROP BASE Bsc_Name ""
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
@@ -45,7 +45,7 @@ CFG=tcl - Win32 Debug Static
# PROP Intermediate_Dir "Release\tcl_Dynamic"
# PROP Cmd_Line "nmake -nologo -f makefile.vc OPTS=threads MSVCDIR=IDE"
# PROP Rebuild_Opt "clean release"
# PROP Target_File "Release\tclsh87t.exe"
# PROP Target_File "Release\tclsh8.exe"
# PROP Bsc_Name ""
# PROP Target_Dir ""
@@ -57,7 +57,7 @@ CFG=tcl - Win32 Debug Static
# PROP BASE Intermediate_Dir "Debug\tcl_Dynamic"
# PROP BASE Cmd_Line "nmake -nologo -f makefile.vc OPTS=symbols MSVCDIR=IDE"
# PROP BASE Rebuild_Opt "-a"
# PROP BASE Target_File "Debug\tclsh87g.exe"
# PROP BASE Target_File "Debug\tclsh8.exe"
# PROP BASE Bsc_Name ""
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
@@ -66,7 +66,7 @@ CFG=tcl - Win32 Debug Static
# PROP Intermediate_Dir "Debug\tcl_Dynamic"
# PROP Cmd_Line "nmake -nologo -f makefile.vc OPTS=threads,symbols MSVCDIR=IDE"
# PROP Rebuild_Opt "clean release"
# PROP Target_File "Debug\tclsh87tg.exe"
# PROP Target_File "Debug\tclsh8.exe"
# PROP Bsc_Name ""
# PROP Target_Dir ""
@@ -78,7 +78,7 @@ CFG=tcl - Win32 Debug Static
# PROP BASE Intermediate_Dir "Debug\tcl_Static"
# PROP BASE Cmd_Line "nmake -nologo -f makefile.vc OPTS=symbols,static MSVCDIR=IDE"
# PROP BASE Rebuild_Opt "-a"
# PROP BASE Target_File "Debug\tclsh87sg.exe"
# PROP BASE Target_File "Debug\tclsh8.exe"
# PROP BASE Bsc_Name ""
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
@@ -87,7 +87,7 @@ CFG=tcl - Win32 Debug Static
# PROP Intermediate_Dir "Debug\tcl_Static"
# PROP Cmd_Line "nmake -nologo -f makefile.vc OPTS=symbols,static MSVCDIR=IDE"
# PROP Rebuild_Opt "-a"
# PROP Target_File "Debug\tclsh87sg.exe"
# PROP Target_File "Debug\tclsh8.exe"
# PROP Bsc_Name ""
# PROP Target_Dir ""
@@ -99,7 +99,7 @@ CFG=tcl - Win32 Debug Static
# PROP BASE Intermediate_Dir "Release\tcl_Static"
# PROP BASE Cmd_Line "nmake -nologo -f makefile.vc OPTS=static MSVCDIR=IDE"
# PROP BASE Rebuild_Opt "-a"
# PROP BASE Target_File "Release\tclsh87s.exe"
# PROP BASE Target_File "Release\tclsh8.exe"
# PROP BASE Bsc_Name ""
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
@@ -108,7 +108,7 @@ CFG=tcl - Win32 Debug Static
# PROP Intermediate_Dir "Release\tcl_Static"
# PROP Cmd_Line "nmake -nologo -f makefile.vc OPTS=static MSVCDIR=IDE"
# PROP Rebuild_Opt "-a"
# PROP Target_File "Release\tclsh87s.exe"
# PROP Target_File "Release\tclsh8.exe"
# PROP Bsc_Name ""
# PROP Target_Dir ""
+17 -18
View File
@@ -442,7 +442,6 @@ AC_DEFUN([SC_ENABLE_THREADS], [
# Sets to $(CFLAGS_OPTIMIZE) if false
# LDFLAGS_DEFAULT Sets to $(LDFLAGS_DEBUG) if true
# Sets to $(LDFLAGS_OPTIMIZE) if false
# DBGX Debug library extension
#
#------------------------------------------------------------------------
@@ -453,7 +452,6 @@ AC_DEFUN([SC_ENABLE_SYMBOLS], [
if test "$tcl_ok" = "no"; then
CFLAGS_DEFAULT='$(CFLAGS_OPTIMIZE)'
LDFLAGS_DEFAULT='$(LDFLAGS_OPTIMIZE)'
DBGX=""
AC_DEFINE(NDEBUG, 1, [Is no debugging enabled?])
AC_MSG_RESULT([no])
@@ -461,7 +459,6 @@ AC_DEFUN([SC_ENABLE_SYMBOLS], [
else
CFLAGS_DEFAULT='$(CFLAGS_DEBUG)'
LDFLAGS_DEFAULT='$(LDFLAGS_DEBUG)'
DBGX=g
if test "$tcl_ok" = "yes"; then
AC_MSG_RESULT([yes (standard debugging)])
fi
@@ -550,6 +547,8 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
AC_CHECK_PROG(CYGPATH, cygpath, cygpath -m, echo)
AC_ARG_WITH(dbgx, [ --with-dbgx debug extension for binaries], with_dbgx=${withval})
SHLIB_SUFFIX=".dll"
# MACHINE is IX86 for LINK, but this is used by the manifest,
@@ -682,7 +681,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
AC_MSG_RESULT([using static flags])
runtime=
LIBRARIES="\${STATIC_LIBRARIES}"
EXESUFFIX="s\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
else
# dynamic
AC_MSG_RESULT([using shared flags])
@@ -696,7 +695,7 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
runtime=
# Add SHLIB_LD_LIBS to the Make rule, not here.
EXESUFFIX="\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
LIBRARIES="\${SHARED_LIBRARIES}"
fi
# Link with gcc since ld does not link to default libs like
@@ -707,9 +706,9 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
-Wl,--out-implib,\$(patsubst %.dll,lib%.a,\[$]@)"
# DLLSUFFIX is separate because it is the building block for
# users of tclConfig.sh that may build shared or static.
DLLSUFFIX="\${DBGX}.dll"
LIBSUFFIX="\${DBGX}.a"
LIBFLAGSUFFIX="\${DBGX}"
DLLSUFFIX="${with_dbgx}.dll"
LIBSUFFIX="${with_dbgx}.a"
LIBFLAGSUFFIX="${with_dbgx}"
SHLIB_SUFFIX=.dll
EXTRA_CFLAGS="${extra_cflags}"
@@ -772,14 +771,14 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
AC_MSG_RESULT([using static flags])
runtime=-MT
LIBRARIES="\${STATIC_LIBRARIES}"
EXESUFFIX="s\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
else
# dynamic
AC_MSG_RESULT([using shared flags])
runtime=-MD
# Add SHLIB_LD_LIBS to the Make rule, not here.
LIBRARIES="\${SHARED_LIBRARIES}"
EXESUFFIX="\${DBGX}.exe"
EXESUFFIX="${with_dbgx}.exe"
case "x`echo \${VisualStudioVersion}`" in
x1[[4-9]]*)
lflags="${lflags} -nodefaultlib:libucrt.lib"
@@ -791,9 +790,9 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
MAKE_DLL="\${SHLIB_LD} \$(LDFLAGS) -out:\[$]@"
# DLLSUFFIX is separate because it is the building block for
# users of tclConfig.sh that may build shared or static.
DLLSUFFIX="\${DBGX}.dll"
LIBSUFFIX="\${DBGX}.lib"
LIBFLAGSUFFIX="\${DBGX}"
DLLSUFFIX="${with_dbgx}.dll"
LIBSUFFIX="${with_dbgx}.lib"
LIBFLAGSUFFIX="${with_dbgx}"
# This is a 2-stage check to make sure we have the 64-bit SDK
# We have to know where the SDK is installed.
@@ -1024,13 +1023,13 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
#------------------------------------------------------------------------
AC_DEFUN([SC_WITH_TCL], [
if test -d ../../tcl8.7$1/win; then
TCL_BIN_DEFAULT=../../tcl8.7$1/win
if test -d ../../tcl8$1/win; then
TCL_BIN_DEFAULT=../../tcl8$1/win
else
TCL_BIN_DEFAULT=../../tcl8.7/win
TCL_BIN_DEFAULT=../../tcl8/win
fi
AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8.7 binaries from DIR],
AC_ARG_WITH(tcl, [ --with-tcl=DIR use Tcl 8 binaries from DIR],
TCL_BIN_DIR=$withval, TCL_BIN_DIR=`cd $TCL_BIN_DEFAULT; pwd`)
if test ! -d $TCL_BIN_DIR; then
AC_MSG_ERROR(Tcl directory $TCL_BIN_DIR does not exist)
@@ -1111,7 +1110,7 @@ AC_DEFUN([SC_PROG_TCLSH], [
AC_DEFUN([SC_BUILD_TCLSH], [
AC_MSG_CHECKING([for tclsh in Tcl build directory])
BUILD_TCLSH=${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${TCL_MINOR_VERSION}${TCL_DBGX}${EXEEXT}
BUILD_TCLSH=${TCL_BIN_DIR}/tclsh${TCL_MAJOR_VERSION}${EXEEXT}
AC_MSG_RESULT($BUILD_TCLSH)
AC_SUBST(BUILD_TCLSH)
])
+5 -5
View File
@@ -23,9 +23,10 @@ TCL_CC='@CC@'
# -D flags for use with the C compiler.
TCL_DEFS='@DEFS@'
# If TCL was built with debugging symbols, generated libraries contain
# this string at the end of the library name (before the extension).
TCL_DBGX=@TCL_DBGX@
# TCL_DBGX used to be used to distinguish debug vs. non-debug builds.
# This was a righteous pain so the core doesn't do that any more.
# DEPRECATED, will be removed in Tcl 9!
TCL_DBGX=
# Default flags used in an optimized and debuggable build, respectively.
TCL_CFLAGS_DEBUG='@CFLAGS_DEBUG@'
@@ -124,7 +125,7 @@ TCL_INCLUDE_SPEC='@TCL_INCLUDE_SPEC@'
# Indicates whether a version numbers should be used in -l switches
# ("ok" means it's safe to use switches like -ltcl7.5; "nodots" means
# use switches like -ltcl75). SunOS and FreeBSD require "nodots", for
# example.
# example. DEPRECATED, will be removed in Tcl 9!
TCL_LIB_VERSIONS_OK='@TCL_LIB_VERSIONS_OK@'
# String that can be evaluated to generate the part of a shared library
@@ -178,4 +179,3 @@ TCL_STUB_LIB_PATH='@TCL_STUB_LIB_PATH@'
# Flag, 1: we built Tcl with threads enabled, 0 we didn't
TCL_THREADS=@TCL_THREADS@
+1 -25
View File
@@ -5,30 +5,6 @@
#include <winver.h>
#include <tcl.h>
//
// build-up the name suffix that defines the type of build this is.
//
#if TCL_THREADS
#define SUFFIX_THREADS "t"
#else
#define SUFFIX_THREADS ""
#endif
#if STATIC_BUILD
#define SUFFIX_STATIC "s"
#else
#define SUFFIX_STATIC ""
#endif
#if DEBUG && !UNCHECKED
#define SUFFIX_DEBUG "g"
#else
#define SUFFIX_DEBUG ""
#endif
#define SUFFIX SUFFIX_THREADS SUFFIX_STATIC SUFFIX_DEBUG
LANGUAGE 0x9, 0x1 /* LANG_ENGLISH, SUBLANG_DEFAULT */
VS_VERSION_INFO VERSIONINFO
@@ -49,7 +25,7 @@ BEGIN
BLOCK "040904b0"
BEGIN
VALUE "FileDescription", "Tclsh Application\0"
VALUE "OriginalFilename", "tclsh" STRINGIFY(TCL_MAJOR_VERSION) STRINGIFY(TCL_MINOR_VERSION) SUFFIX ".exe\0"
VALUE "OriginalFilename", "tclsh" STRINGIFY(TCL_MAJOR_VERSION) ".exe\0"
VALUE "CompanyName", "ActiveState Corporation\0"
VALUE "FileVersion", TCL_PATCH_LEVEL
VALUE "LegalCopyright", "Copyright \251 2000 by ActiveState Corporation, et al\0"