aboutsummaryrefslogtreecommitdiff
path: root/auto.def
AgeCommit message (Collapse)AuthorFilesLines
2024-02-04aio: implement openpty.c locallySteve Bennett1-3/+6
To avoid linking with -lutil if possible Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-08-13jimsh, interp, tests: fixes when line editing is disabledSteve Bennett1-2/+4
- Set jim::lineedit to indicate if line editing is configured - Ensure that aio tty works even if line editing is disabled - Skip some tests if line editing is not configured Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-07-11signal: fix build warningsSteve Bennett1-1/+1
Need strings.h for strcasecmp (Although I don't really think it's necessary to support lower case versions of signal names. This will probably change). Fixes #270 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-07-11configure: zlib needs to check for zlib.hSteve Bennett1-1/+1
If pkg-config is not available Fixes #272 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-07-04aio: change to use unix io, not stdioSteve Bennett1-2/+1
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>
2023-06-22build: Add -I. as the first include pathSteve Bennett1-3/+3
If building on a system with an installed jim.h, we want to be sure to pick up the local jim headers in preference. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-06-20file: use 64 bit stat functions if necessarySteve Bennett1-1/+9
Some 32 bit systems may require explicit use of stat64, etc. Fixes #263
2023-03-20Add support for ./configure --disable-introspectionSteve Bennett1-0/+5
Sometimes it can be useful to provide an embedded interpreter where introspection is not permitted. This includes: - info commands, procs, channels: only allow exact match, not glob pattern - info frame: don't include cmd and proc in the returned dict - info level: only return the command name, not the command arguments - info body, args, statics: do not allow these to be called Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-03-20build: allow build without math functionsSteve Bennett1-4/+7
if sin(), etc. aren't available, just build without math functions unless --math is explicitly given Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-03-20build: define _GNU_SOURCE only on the command lineSteve Bennett1-0/+2
Not in source files See https://ariadne.space/2021/12/21/stop-defining-feature-test-macros-in-your-code/ Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-03-02auto.def: fix whitespaceSteve Bennett1-24/+24
Some tabs have crept into this file. Expand to spaces for consistency. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-03-02configure: don't complain about no ssl unless --ssl is givenSteve Bennett1-1/+1
SSL is now enabled by default, but it is only a fatal error if no libssl and --ssl is explicitly enabled. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-02-13ensemble: Add a simple ensemble commandSteve Bennett1-0/+1
Uses a prefix to automatically map from subcommand to implementation. Includes support for namespace ensemble Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-02-13configure: Default to --fullSteve Bennett1-26/+38
Now use --minimal and/or --without-ext to disable things. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-02-13clock millis, time: now use monotonic raw time if possibleSteve Bennett1-1/+4
Instead of using all time, these commands now use a monotonically increasing system timer so that they are not affected by time (e.g. ntp) adjustments. (But not on Windows since it doesn't work reliably) Fixes #240 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-02-13windows: compatibility changesSteve Bennett1-1/+4
_fullpath isn't necessarily available, so check for it symlink() isn't useful enough on Windows to use Signed-off-by: Steve Bennett <steveb@workware.net.au>
2023-02-09build: handle old compilers without restrict keywordSteve Bennett1-0/+4
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-09-18build: isinf and isnan are macros in CSteve Bennett1-1/+5
So don't try to find them as functions Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-08-21docs: update for 0.81+Steve Bennett1-1/+1
Document changes since 0.81 and add documentation for new filename return for sockets. Internal version is now 0.82 in preparation for (eventual) 0.82 release. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-08-20build: Fix a few places that AS_CFLAGS was missingSteve Bennett1-2/+2
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-08-20build: macos has deprecated vfork()Steve Bennett1-2/+9
On platforms where using vfork emits a warning, use fork instead Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-08-20build: rework CFLAGS handlingSteve Bennett1-13/+16
Based on http://msteveb.github.io/autosetup/articles/handling-cflags/ using autosetup 0.7.1 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-04-22build: win32: Fix build with tdm-gcc10.3Steve Bennett1-0/+2
Mostly we need to specifically target WinXP. Also silence deprecation warnings. And fix the confusion about _stat64 vs __stat64 Fixes #219 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-04-05build: Add /usr/lib64 to list of host lib pathsSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-04-05build: Use $libdir rather than $prefix/libSteve Bennett1-1/+1
Makes it easier to override Signed-off-by: Steve Bennett <steveb@workware.net.au>
2022-02-23build: on windows, need --shared for build-jim-ext to workSteve Bennett1-4/+13
So don't build it unless --shared is specified Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-11-28bump version to 0.81Steve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-04-09build: Allow some paths to contain spacesSteve Bennett1-1/+1
Quote the build dir or and the path to jimsh/tclsh in the Makefile in case they contain spaces. Also fix a few problems in tests/ that arise when the build and/or source dir contain spaces. Fixes #199 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-04-03expr: allow existing multiple argument support with --compatSteve Bennett1-0/+5
Some users may not be ready to immediately move to the single-argument expr, so provide a --compat option to configure to support the previous behaviour as a transition strategy. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-02-20build: some extensions are dep onlySteve Bennett1-2/+2
Extensions like nshelper and jsonencode should only be selected if explicitly enabled or if they are the target of a dependency. So enabling namespace enables nshelper, but --full --without-ext=namespace doesn't. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-01-06build: Need sdl needs 'check false'Steve Bennett1-1/+1
If no 'check' is provided, we assume that the checks passed. If pkg-config is specified, but no other check, use 'check false' to ensure the module is disable if the pkg-config checks don't pass. Also travis now does 'make all' so that any module extensions are also built, and add a dependency on libhiredis-dev to test building the redis extension. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-01-06configure: Add --allextmod optionSteve Bennett1-132/+151
To build all non-default extensions as modules if prerequisites are met. Also move the extension help out of the main help since it is quite long and show it with --extinfo. Now extension help is generated from $extdb to avoid the help and the module configuration becoming out of sync. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-01-02build: Dynamic modules require $(LIBJIM)Steve Bennett1-1/+1
Add this depenency to avoid issues with parallel builds Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-01-01sdl: Add basic text supportSteve Bennett1-1/+1
Requires a truetype font file Signed-off-by: Steve Bennett <steveb@workware.net.au>
2021-01-01sdl: Add support for SDL2Steve Bennett1-3/+5
Now we only support using pkg-config to find SDL, and prefer SDL2 over SDL. For compatibility between versions, the render surface is now cleared on flip. And closing the window now results in a JIM_EXIT return code from flip. Also supports [sdl clear] to clear the background to a given colour. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-11-15redis: Add simple redis client extensionSteve Bennett1-0/+3
Using the hiredis client library. Synchronous API only. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-11-08build: Fix build and tests for out-of-tree buildSteve Bennett1-1/+1
Loadable modules and tests Fixes #179 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-10-05bump version to 0.80Steve Bennett1-1/+1
Update documentation to indicate v0.80 and update Tcl_shipped.html Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-10-05build: some systems have backtrace but not execinfo.hSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-05-06aio: Add socket ptySteve Bennett1-1/+4
Allows a psuedo-tty pair to be created. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-05-04build: Improve coverage supportSteve Bennett1-4/+9
Disable optimisation during coverage. Set CCACHE_DISABLE=1 in the environment, just to be sure to disable ccache Also cleanup coverage files in subdirs too Add support for both lcov and gcovr Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-04-17build: Add ./configure --coverageSteve Bennett1-2/+23
To make it easier to generate code coverage output. Ensure that gcovr is installed, then do: ./configure --coverage make test coverage And see the report in coverage.html Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-03-05build: Check for 32-bit time_t at configure timeSteve Bennett1-1/+15
To warn of Y2038 problems, and suggest use of -D__MINGW_USE_VC2005_COMPAT on mingw32. Do this instead of the previous runtime test. Add -D__MINGW_USE_VC2005_COMPAT to the appveyor build. Fixes msteveb/jimtcl#145 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-02-13build: examples.api: Add necessary linker flagsSteve Bennett1-0/+1
Linking with -ljim may need additional libraries Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-20bump version to 0.790.79Steve Bennett1-1/+1
Update documentation to indicate v0.79 and update Tcl_shipped.html Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-15build: Check for inline supportSteve Bennett1-0/+3
To ensure that linenoise.c can build, even for strict c89 Add cc-check-inline in autosetup/jim-misc.auto Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-14build: Fix out-of-tree build with json extSteve Bennett1-0/+2
If building out-of-tree, the jsmn/ directory may not exist. So create it during configure Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-12configure: add SIZEOF_INT to jim-config.hSteve Bennett1-1/+2
It can be useful for extensions to know the size of integers Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-09json: Add json encoder/decoderSteve Bennett1-6/+24
Using the jsmn library for decoding. Based on the original implementation by Svyatoslav Mishyn <juef@openmailbox.org> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-06build: improve build for shared objectsSteve Bennett1-0/+17
Rather than listing the build rules for each shared object (loadable module) in the Makefile template, generate the build rules in configure. Also, if an extension is configured as a module, any automatic dependencies required by the extension are configured as modules by default. Signed-off-by: Steve Bennett <steveb@workware.net.au>