Age | Commit message (Collapse) | Author | Files | Lines |
|
Without this, readdir() doesn't work properly on some 32 bit platforms
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
This changes especially makes buffered I/O work
with non-blocking channels.
- separate read and write buffering
- support for timeout on blocking read
- read/write on same channel in event loop with buffering
- read buffer is the same across read, gets, copyto
- autoflush non-blocking writes via event loop
- copyto can now copy to any filehandle-like command
- add some copyto tests
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
There are very few posix platforms where fork isn't available.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
- fix popen [open "|pipeline ..."] to return meaningful status in close
(but note that stderr is not captured)
- popen pipelines can now be used as the target of exec redirection
- overally improvements to exec on windows. Now crt file descriptors
are used throughout
- add support for [pid], [wait] and popen on windows
- os.wait is now wait, and integrates with [exec ... &] to be able
to wait for running background tasks
- [socket pipe] is now also [pipe] and is supported on windows
- [file tempfile] is supported on windows
- move duplicated code between jim-aio.c and jim-exec.c to jimiocompat.c
- Fix [exec] on windows to match unix semantics wrt sharing the parent stream
unless redirected rather than using /dev/null
- On windows redirect to or from /dev/null is automatically converted to NUL:
- If signal support is disabled, implement a minimal Jim_SignalId() for exec and wait
- aio now supports getfd, to return the underlying file descriptor.
This is used by exec to support redirection, and allows popen channels
to support exec redirection.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
No need for references support
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Also, fix build if JIM_OPTIMIZATION is disabled
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Makes it easier to run the test suite if a minmal 'package require'
is supported.
Also omit SSL code from jim-aio.c
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
All reasonable unix platforms have mkstemp(), so
use it in bootstrap jimsh.
Without it, exec is non-functional.
(Previously it was just assumed to exist in [exec], but not [file tempfile])
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Reported-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
With -DJIM_BOOTSTRAP_LIB_ONLY
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
By removing comments and some large blocks of unnecessary code
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Since the line number should correspond to the first
line of the script, it is easier to use with __LINE__
if the filename and line number are before the script.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
e.g. gcc 2.95
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Tcl compatible.
Also move jimsh initialisation script into initjimsh.tcl
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
$tcl_platform(platform) should be "windows" on mingw
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Convert some paths from backslashes to forward slashes
Handle splitting/joining paths which look like z:/abc/def
Identify the platform as mingw
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
- Check for mkdir with one arg at configure time
- mingw can't really do select(), so support only time events in eventloop
- Declare dlerror() to be compatible with mingw
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Use system() to implement [exec] if vfork() and waitpid()
are not available. This is just functional enough for simple tasks.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Allows a single source file version of jimsh to be created
for bootstrap purposes.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|