Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Changes In Branch jimtcl
Excluding Merge-Ins
This is equivalent to a diff from
238b761afa
to de9c2f08d7
|
2012-01-24
| | |
| 13:28 |
|
...
(check-in: 1e39808853 user: mistachkin tags: trunk)
|
|
2012-01-23
| | |
| 03:51 |
|
...
(Closed-Leaf
check-in: de9c2f08d7 user: steveb tags: jimtcl)
|
|
2012-01-22
| | |
| 22:02 |
|
...
(check-in: e1c424cb69 user: mgagnon tags: mgagnon_fix)
|
| 06:59 |
|
...
(check-in: 238b761afa user: mistachkin tags: trunk)
|
| 06:52 |
|
...
(check-in: 21555be397 user: mistachkin tags: trunk)
|
|
2011-11-07
| | |
| 07:07 |
|
...
(check-in: 5905232d45 user: steveb tags: jimtcl)
|
| | |
Changes to auto.def.
| ︙ | | |
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
121
122
|
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
121
122
|
-
+
-
-
+
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
}
if {![cc-check-includes zlib.h] || ![cc-check-function-in-lib inflateEnd z]} {
user-error "zlib not found please install it or specify the location with --with-zlib"
}
set tclpath [opt-val with-tcl]
if {$tclpath ne ""} {
# Note parse-tclconfig-sh is in autosetup/local.tcl
# Note parse-tclconfig-sh is in autosetup/local.tcl
if {$tclpath eq "1"} {
# Use the system Tcl. Look in some likely places.
array set tclconfig [parse-tclconfig-sh /usr /usr/local /usr/share /opt/local]
set msg "on your system"
} else {
set msg "on your system"
} else {
array set tclconfig [parse-tclconfig-sh $tclpath]
set msg "at $tclpath"
}
if {![info exists tclconfig(TCL_INCLUDE_SPEC)]} {
user-error "Cannot find Tcl $msg"
}
set cflags $tclconfig(TCL_INCLUDE_SPEC)
set libs "$tclconfig(TCL_LIB_SPEC) $tclconfig(TCL_LIBS)"
cc-with [list -cflags $cflags -libs $libs] {
if {![cc-check-functions Tcl_CreateInterp]} {
user-error "Cannot find a usable Tcl $msg"
}
}
set version $tclconfig(TCL_VERSION)$tclconfig(TCL_PATCH_LEVEL)
msg-result "Found Tcl $version at $tclconfig(TCL_PREFIX)"
define-append LIBS $libs
define-append EXTRA_CFLAGS $cflags
define-append EXTRA_LDFLAGS $tclconfig(TCL_LD_FLAGS)
set msg "at $tclpath"
}
if {![info exists tclconfig(TCL_INCLUDE_SPEC)]} {
user-error "Cannot find Tcl $msg"
}
set cflags $tclconfig(TCL_INCLUDE_SPEC)
set libs "$tclconfig(TCL_LIB_SPEC) $tclconfig(TCL_LIBS)"
cc-with [list -cflags $cflags -libs $libs] {
if {![cc-check-functions Tcl_CreateInterp]} {
user-error "Cannot find a usable Tcl $msg"
}
}
set version $tclconfig(TCL_VERSION)$tclconfig(TCL_PATCH_LEVEL)
msg-result "Found Tcl $version at $tclconfig(TCL_PREFIX)"
define-append LIBS $libs
define-append EXTRA_CFLAGS $cflags
define-append EXTRA_LDFLAGS $tclconfig(TCL_LD_FLAGS)
define FOSSIL_ENABLE_TCL
}
# Helper for openssl checking
proc check-for-openssl {msg {cflags {}}} {
msg-checking "Checking for $msg..."
|
| ︙ | | |
Changes to autosetup/README.autosetup.
1
|
1
|
-
+
|
This is autosetup v0.6.2. See http://msteveb.github.com/autosetup/
This is autosetup v0.6.3. See http://msteveb.github.com/autosetup/
|
Changes to autosetup/autosetup.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
-
+
|
#!/bin/sh
# Copyright (c) 2006-2011 WorkWare Systems http://www.workware.net.au/
# All rights reserved
# vim:se syntax=tcl:
# \
dir=`dirname "$0"`; exec "`$dir/find-tclsh`" "$0" "$@"
set autosetup(version) 0.6.2
set autosetup(version) 0.6.3
# Can be set to 1 to debug early-init problems
set autosetup(debug) 0
##################################################################
#
# Main flow of control, option handling
|
| ︙ | | |
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
|
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
|
+
-
+
+
+
+
|
}
getenv $name $default
}
# @env-is-set name
#
# Returns 1 if the $name was specified on the command line or in the environment.
# Note that an empty environment variable is not considered to be set.
#
proc env-is-set {name} {
if {[dict exists $::autosetup(cmdline) $name]} {
return 1
}
info exists ::env($name)
if {[getenv $name ""] ne ""} {
return 1
}
return 0
}
# @readfile filename ?default=""?
#
# Return the contents of the file, without the trailing newline.
# If the doesn't exist or can't be read, returns $default.
#
|
| ︙ | | |
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
|
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
|
-
-
-
-
-
-
-
-
-
|
}
} elseif {$autosetup(iswin)} {
# On Windows, backslash convert all environment variables
# (Assume that Tcl does this for us)
proc getenv {name args} {
string map {\\ /} [env $name {*}$args]
}
# Jim uses system() for exec under mingw, so
# we need to fetch the output ourselves
proc exec-with-stderr {args} {
set tmpfile auto[format %04x [rand 10000]].tmp
set rc [catch [list exec {*}$args >$tmpfile 2>&1] result]
set result [readfile $tmpfile]
file delete $tmpfile
return -code $rc $result
}
} else {
# Jim on unix is simple
alias getenv env
}
# In case 'file normalize' doesn't exist
#
|
| ︙ | | |
Changes to autosetup/cc-shared.tcl.
| ︙ | | |
54
55
56
57
58
59
60
61
62
63
|
54
55
56
57
58
59
60
61
62
63
|
-
+
|
}
* {
# Generic Unix settings
define SH_LINKFLAGS -rdynamic
define SH_CFLAGS -fpic
define SH_LDFLAGS -shared
define SHOBJ_CFLAGS -fpic
define SHOBJ_LDFLAGS "-shared -nostartfiles"
define SHOBJ_LDFLAGS -shared
}
}
|
Changes to autosetup/cc.tcl.
| ︙ | | |
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
|
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
|
-
+
|
} elseif {[llength $args] > 1} {
autosetup-error "usage: cc-with settings ?script?"
} else {
set save [cc-add-settings $settings]
set rc [catch {uplevel 1 [lindex $args 0]} result info]
cc-store-settings $save
if {$rc != 0} {
return $result -code [dict get $info -code]
return -code [dict get $info -code] $result
}
return $result
}
}
# @cctest ?settings?
#
|
| ︙ | | |
Changes to autosetup/find-tclsh.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
+
-
+
|
#!/bin/sh
# Looks for a suitable tclsh or jimsh in the PATH
# If not found, builds a bootstrap jimsh from source
d=`dirname "$0"`
{ "$d/jimsh0" "$d/test-tclsh"; } 2>/dev/null && exit 0
PATH="$PATH:$d"
for tclsh in jimsh tclsh tclsh8.5 tclsh8.6 jimsh0; do
for tclsh in jimsh tclsh tclsh8.5 tclsh8.6; do
{ $tclsh "$d/test-tclsh"; } 2>/dev/null && exit 0
done
echo 1>&2 "No installed jimsh or tclsh, building local bootstrap jimsh0"
for cc in ${CC_FOR_BUILD:-cc} gcc; do
{ $cc -o "$d/jimsh0" "$d/jimsh0.c"; } 2>/dev/null || continue
"$d/jimsh0" "$d/test-tclsh" && exit 0
done
|
| ︙ | | |
Changes to autosetup/jimsh0.c.
more than 10,000 changes
Changes to autosetup/system.tcl.
| ︙ | | |
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
|
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
|
-
+
+
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
|
define prefix $prefix
define builddir $autosetup(builddir)
define srcdir $autosetup(srcdir)
# Allow this to come from the environment
define top_srcdir [get-env top_srcdir [get-define srcdir]]
# autoconf supports all of these
define exec_prefix [opt-val exec-prefix [get-env exec-prefix \${prefix}]]
set exec_prefix [opt-val exec-prefix $prefix]
define exec_prefix $exec_prefix
foreach {name defpath} {
bindir \${exec_prefix}/bin
sbindir \${exec_prefix}/sbin
libexecdir \${exec_prefix}/libexec
libdir \${exec_prefix}/lib
datadir \${prefix}/share
sysconfdir \${prefix}/etc
sharedstatedir \${prefix}/com
localstatedir \${prefix}/var
infodir \${prefix}/share/info
mandir \${prefix}/share/man
includedir \${prefix}/include
bindir /bin
sbindir /sbin
libexecdir /libexec
libdir /lib
} {
define $name [opt-val $name $exec_prefix$defpath]
}
foreach {name defpath} {
datadir /share
sysconfdir /etc
sharedstatedir /com
localstatedir /var
infodir /share/info
mandir /share/man
includedir /include
} {
define $name [opt-val $name [get-env $name $defpath]]
define $name [opt-val $name $prefix$defpath]
}
define SHELL [get-env SHELL [find-an-executable sh bash ksh]]
# Windows vs. non-Windows
switch -glob -- [get-define host] {
*-*-ming* - *-*-cygwin {
|
| ︙ | | |
Changes to autosetup/test-tclsh.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
-
+
-
-
-
+
|
# A small Tcl script to verify that the chosen
# interpreter works. Sometimes we might e.g. pick up
# an interpreter for a different arch.
# Outputs the full path to the interpreter
if {[catch {info version} version] == 0} {
# This is Jim Tcl
if {$version >= 0.70} {
if {$version >= 0.72} {
# Ensure that regexp works
regexp (a.*?) a
# Older versions of jimsh may return a relative path for [info nameofexecutable]
puts [file join [pwd] [info nameofexecutable]]
puts [info nameofexecutable]
exit 0
}
} elseif {[catch {info tclversion} version] == 0} {
if {$version >= 8.5 && ![string match 8.5a* [info patchlevel]]} {
puts [info nameofexecutable]
exit 0
}
|
| ︙ | | |
Added src/jim-config.h.
|
1
2
3
4
5
|
+
+
+
+
+
|
#ifndef _JIM_CONFIG_H
#define _JIM_CONFIG_H
/*#undef HAVE_LONG_LONG*/
/*#undef JIM_UTF8*/
#endif
|
| | | |
Added src/jim-win32compat.h.
|
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
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
|
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
|
#ifndef JIM_WIN32COMPAT_H
#define JIM_WIN32COMPAT_H
/* Compatibility for Windows (mingw and msvc, not cygwin */
/* Note that at this point we don't yet have access to jimautoconf.h */
#if defined(_WIN32) || defined(WIN32)
#define HAVE_DLOPEN
void *dlopen(const char *path, int mode);
int dlclose(void *handle);
void *dlsym(void *handle, const char *symbol);
char *dlerror(void);
#ifdef _MSC_VER
/* These are msvc vs gcc */
#if _MSC_VER >= 1000
#pragma warning(disable:4146)
#endif
#include <limits.h>
#define jim_wide _int64
#ifndef LLONG_MAX
#define LLONG_MAX 9223372036854775807I64
#endif
#ifndef LLONG_MIN
#define LLONG_MIN (-LLONG_MAX - 1I64)
#endif
#define JIM_WIDE_MIN LLONG_MIN
#define JIM_WIDE_MAX LLONG_MAX
#define JIM_WIDE_MODIFIER "I64d"
#define strcasecmp _stricmp
#define strtoull _strtoui64
#define snprintf _snprintf
#include <io.h>
#ifndef NO_TIMEVAL
struct timeval {
long tv_sec;
long tv_usec;
};
#endif
int gettimeofday(struct timeval *tv, void *unused);
#define HAVE_OPENDIR
#ifndef NO_DIRENT
struct dirent {
char *d_name;
};
typedef struct DIR {
long handle; /* -1 for failed rewind */
struct _finddata_t info;
struct dirent result; /* d_name null iff first time */
char *name; /* null-terminated char string */
} DIR;
DIR *opendir(const char *name);
int closedir(DIR *dir);
struct dirent *readdir(DIR *dir);
#endif
#endif /* _MSC_VER */
#endif /* WIN32 */
#endif
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
Added src/jim.h.