aboutsummaryrefslogtreecommitdiffhomepage
path: root/meson_options.txt (follow)
AgeCommit message (Collapse)AuthorLines
2025-05-11Allow configuration of JANET_THREAD_LOCAL. Address #1595Calvin Rose-0/+1
This is to better allow configuration on various, unknown compilers. Previously, we hardcoded how thread local storage was specified for a few different compilers, but we were not following and C standard. In C11, there is a standardized storage specifier _Thread_local for this storage class, however this is now deprecated in various C++ compilers for a new keyword, confusingly. Janet also does not claim to require the C11 standard, so for maximum flexibilty, the storage specifier must be specified at configure time.
2024-08-11Stop out better configuration.Calvin Rose-0/+1
2024-02-03Update debug meson options.Calvin Rose-2/+2
2023-11-02Add ipv6, shared, and cryptorand options to meosn.Calvin Rose-0/+3
Allows for builting with cosmopolitan, both with meson and Makefile. Use: CC=comsocc meson setup -Dipv6=false -Ddynamic_modules=false -Dshared=false -Dos_name=cosmopolitan to configure for cosmopolitan build.
2023-08-24Allow multiple simultaneous interrupts cleanly for #1262Calvin Rose-1/+1
Instead of setting a flag, each interrupt increments an atomic counter. When the interrupt is finally handled, either by scheduling code to run on the event loop or executing some out of band code, the user must now decrement the interrupt counter with janet_interpreter_interrupt_handled. While this counter is non-zero, the event loop will not enter the interpreter. This changes the API a bit but makes it possible and easy to handle signals without race conditions or scheduler hacks, as the runtime can ensure that high priority code is run before re-entering possibly blocking interpreter code again. Also included is a new function janet_schedule_soon, which prepends to the task queue instead of appending, allowing interrupt handler to skip ahead of all other scheduled fibers. Lastly, also update meson default options to include the interpreter_interrupt code and raise a runtime error if os/sigaction is used with interpreter interrupt but that build option is not enabled.
2022-12-03Add ffi/jitfn for JIT compilation.Calvin Rose-0/+1
Convert a byte sequence of machine code to an an executable pointer that can be used with ffi/call.
2022-06-06Implement sys v abi on x64 partially.Calvin Rose-0/+1
2021-09-19Remove thread module.Calvin Rose-1/+0
Instead, use the more general and non-blocing `ev/` module.
2021-09-07Fix meson build.bindportbakpakin-1/+1
2021-09-03Add kqueue option to meson, janetconf, fix typoesllmII-0/+1
2021-07-24Add janet_interpreter_interrupt for custom scheduling.bakpakin-0/+1
This would allow an embedder to suspend the current Janet fiber via an external event like a signal, other thread, or really anything. This is a useful primitive for custom schedulers that would call janet_interpreter_interupt periodically (say, in an interval with SIG_ALRM), do some work, and then use janet_continue on the janet_root_fiber, or for embedding into other soft-realtime applications like a game. To say, only allow about 5ms per frame of interpreter time.
2021-07-17Add option to build janet without thread library.Calvin Rose-0/+1
2021-04-29Remove typed arrays from the core.Calvin Rose-1/+0
Typed arrays will instead live in an external jpm nodule. Also, changes have been made to `jpm` to allow other natives to use the typedarray headers.
2020-11-15Add meson test build for epoll.Calvin Rose-0/+1
2020-09-12Merge branch 'master' into evCalvin Rose-0/+1
2020-09-07Prepare 1.12.0 Release.v1.12.0Calvin Rose-0/+1
2020-07-25Merge branch 'master' into evCalvin Rose-1/+1
2020-07-25Disable PRF by default.Calvin Rose-1/+1
Since it is not any better by default without initializing the key, we disable it by default. It can be turned on with JANET_PRF in janetconf.h.
2020-05-28Start with ev module.Calvin Rose-0/+1
2020-05-12Add new Makefile options to meson.Calvin Rose-0/+3
2020-02-01Begin net/ module in core.Calvin Rose-0/+1
Humble beginnings.
2020-01-16Allow disabling keyed hash function (prf) in confCalvin Rose-0/+1
In some cases, one might want to disable what is currently SipHash for speed / better security mechansims. For example, using red black trees for caches rather than hash tables.
2019-08-19Fix some stack overflow bugs.Calvin Rose-1/+1
2019-08-18Add os/arch to core.Calvin Rose-0/+3
Also allow setting custom keywords for compiled os name and architecture name.
2019-06-24Add reduced_os option functionality.Calvin Rose-1/+1
2019-06-20Verify working meson build on windows.meson-onlyCalvin Rose-1/+1
Using MSVC, no need for GNU tools.
2019-06-20Start working to a full meson build.Calvin Rose-0/+17
One build system instead of three for Make + Meson + build_win.bat.