Stephen Hassard
e422abc269
Use relative path for include/janet.h symlink
...
When using make to build an rpm, the current symlink is
created with an absolute path to the buildroot as causes
the make install target to fail with:
error: Symlink points to BuildRoot: /usr/include/janet.h -> /home/stephen/rpmbuild/BUILDROOT/janet-1.23.0-3.x86_64/usr/include/janet/janet.h
We can create the link relatively which makes this more
portable, where:
ln -sf -t '/home/stephen/rpmbuild/BUILDROOT/janet-1.23.0-3.x86_64/usr/include' janet.h janet/janet.h
Resulting in the following symlink:
ls -la BUILDROOT/usr/include/janet.h
lrwxrwxrwx. 1 stephen stephen 13 Jul 2 08:17 BUILDROOT/usr/include/janet.h -> janet/janet.h
This symlink can then be properly packaged without path
issues.
Signed-off-by: Stephen Hassard <steve@hassard.net>
2022-07-02 08:52:17 -07:00
Calvin Rose
0a15a5ee56
Prepare for 1.23.0 release.
2022-06-19 15:07:35 -05:00
Calvin Rose
40e9430278
Move examples to example directory.
2022-06-17 17:24:52 -05:00
Calvin Rose
3f27d78ab5
Add some FFI testing and more improvements to sysv abi.
...
Add support for integer return and floating point return variants, as
well as arguments on the stack. Start flushing out struct arguments.
Still needed:
- structs (packed and unpacked)
- complex numbers
- long doubles
- MASM alternative for windows (you can technically use sysv abi on
windows)
- more calling conventions.
2022-06-08 09:44:49 -05:00
Calvin Rose
282d1ba22f
Implement sys v abi on x64 partially.
2022-06-06 18:54:17 -05:00
bakpakin
85129a1873
Prepare for 1.22.0 release.
2022-05-09 10:19:40 -05:00
Calvin Rose
6db796e10c
Add janet.h (in addition to janet/janet.h) on install.
...
A number of bindings (many of which I have written) include
<janet.h> rather than <janet/janet.h>.
2022-04-22 22:29:12 -05:00
Calvin Rose
f74df41fff
Merge branch 'master' into make
2022-04-05 20:18:12 -05:00
Calvin Rose
f05e5f908e
Update SONAME in Makefile.
2022-04-01 21:41:07 -05:00
Jason Pepas
43139b43b1
Produce dylibs on macOS
2022-03-31 00:17:59 -05:00
Calvin Rose
1c96c7163a
Address #926 - enter the event loop from janet_dobytes or
...
janet_dostring.
2022-03-21 18:06:14 -05:00
Calvin Rose
40ae2e812f
Prepare for 1.20.0 release.
2022-01-27 21:38:07 -06:00
Calvin Rose
a0ddfcb109
Prepare for 1.19.0 release.
2021-11-27 10:00:36 -06:00
Michael Camilleri
f3bab72a86
Add comment to explain Linux check in Makefile
2021-10-21 14:23:23 +09:00
Michael Camilleri
2bd63c2d27
Fix error for uname switch -o on macOS
2021-10-21 14:13:51 +09:00
Brad Svercl
e0dba85cbb
Support Android (termux)
2021-10-14 21:18:35 -05:00
Calvin Rose
6c58347916
Remove thread module.
...
Instead, use the more general and non-blocing `ev/` module.
2021-09-19 14:19:32 -05:00
Calvin Rose
cccbdc164c
Add (number combinator to peg).
...
This allows using Janet's number parser without creating
intermediate strings.
2021-09-19 13:02:16 -05:00
Calvin Rose
8cd57025a0
Add makefile var to fix jpm to a tag/branch
2021-09-17 16:38:11 -05:00
Calvin Rose
faf60b6b1f
Pass DESTDIR directly to jpm bootstrap script.
2021-09-16 18:36:29 -05:00
Calvin Rose
31a7fdc7b6
Add Make task to more easily install jpm.
2021-08-29 11:15:15 -05:00
Calvin Rose
c20a76cddb
Update CHANGELOG and indicate next release will be 1.17.0
2021-07-16 21:05:42 -05:00
Calvin Rose
1ef6db16ed
Add janet_vm_save and janet_vm_load.
...
This lets a user multiplex multiple Janet VMs on a single
thread or process if they are willing to implement context switching
themselves.
2021-07-16 20:59:03 -05:00
Calvin Rose
230b734663
Delete jpm and related testing from this repository.
...
JPM and related functionality has been moved to it's own repository
and will be versioned separately from Janet. The distribution process
could later be modified to bundle a version of jpm with Janet but this
is perhaps not needed.
2021-07-15 20:49:41 -05:00
Calvin Rose
41a7154aa5
Remove jhydro from CI pipeline.
2021-06-27 12:49:19 -05:00
Calvin Rose
2040709585
Re-add make docs
.
...
Wasn't hurting anything.
2021-05-30 16:44:37 -05:00
Calvin Rose
dfa5fa1187
Remove some stupid shell gymnastics in Makefile.
2021-05-30 09:14:34 -05:00
Calvin Rose
1baab5eb61
Remove typed arrays from the core.
...
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.
2021-04-29 12:33:49 -05:00
Damien Ready
27e400fba3
Prepare the .tar distribution with folder layout
2021-03-20 10:53:51 -05:00
Calvin Rose
d3e52a2afb
Fix makefile to attach build identifier.
2021-02-27 19:50:31 -06:00
Calvin Rose
bdf14170a4
Get ready for 1.15.0 release.
2021-02-08 18:10:46 -06:00
Calvin Rose
259d5fabd9
Update Makefile and build_win for better builds.
...
Use build/c/janet.c in both to prevent accidental inclusion
of build/janet.h (which may be stale) instead of the source headers.
2021-01-31 09:59:53 -06:00
Calvin Rose
6dfb689d1f
Update versions to indicate 14.1
2021-01-16 15:54:27 -06:00
Calvin Rose
f5877ac6d1
Revert makefile.
2021-01-05 20:29:50 -06:00
Calvin Rose
adc41e31f4
Address #547 - don't drop references.
...
Keep a separate stack for tagged references. May cause pegs to
use more memory but makes the backref and backmatch features much more
powerful.
Also disables the second stack if backref and backmatch are not used in the peg.
2021-01-05 20:27:15 -06:00
Calvin Rose
c357af02c2
Allow iterating over fibers with each and similar.
2021-01-03 16:17:36 -06:00
Calvin Rose
d0ac318980
Don't print to stderr in Makefile to detect version. Fix #544
2021-01-03 12:59:16 -06:00
Calvin Rose
392d5d51df
Fix build info for 1.13.1
2020-12-13 11:59:52 -06:00
Calvin Rose
2dc04d2957
On install, merge janetconf.h into janet.h
...
This results in a cleaner amalgmated build
2020-11-17 09:53:12 -06:00
Calvin Rose
ea45165db8
Merge branch 'master' into ev
2020-10-10 09:04:05 -05:00
Andrew Chambers
bf6ebc4a68
Add missing Makefile dependencies for install.
2020-10-07 10:19:49 +13:00
Calvin Rose
d3182dce51
Merge branch 'master' into ev
2020-09-12 10:02:01 -05:00
Calvin Rose
93602ad9ea
Prepare 1.12.0 Release.
2020-09-07 15:28:46 -05:00
Calvin Rose
babfe50550
Merge branch 'master' into ev
...
Also add poll implementation for ev.
2020-09-07 12:52:50 -05:00
Calvin Rose
24b8b0e382
Fix NaNboxing bug that cause flaky builds.
...
The macro janet_checktype(x, JANET_NUMBER) was incorrect when
x was NaN. This caused the initial unmarshalling dictionary to be missing
entries in certain cases.
2020-09-06 14:59:29 -05:00
Calvin Rose
1a9c14acde
Add checksum to build/janet.c to check for inconsistent builds.
2020-09-06 11:04:07 -05:00
Calvin Rose
3563e7e1aa
Add -fPIC to default cflags when building boot image.
2020-08-03 17:32:41 -05:00
Calvin Rose
5899671d96
Merge branch 'master' into ev
2020-08-03 07:54:53 -05:00
Calvin Rose
8c1eb23aa1
Add -fPIC to default cflags when building boot image.
2020-08-02 13:52:21 -05:00
Calvin Rose
297de01d95
Add preliminary channel implementation.
2020-08-01 13:13:58 -05:00
Calvin Rose
d393fbf360
Merge branch 'master' into ev
2020-07-25 14:07:47 -05:00
Calvin Rose
d37eda4e9b
Don't use x43bot to test install.
2020-07-25 13:23:57 -05:00
Calvin Rose
3960d0f6de
Merge branch 'master' into ev
2020-07-25 13:17:05 -05:00
Calvin Rose
5be5e5b58f
Update soname.
2020-07-25 13:11:52 -05:00
Calvin Rose
df145f4bc9
Merge branch 'master' into ev
2020-07-19 17:20:43 -05:00
Calvin Rose
9e163db491
Test building binaries with jpm.
...
Test in CI with both meson and normal build.
Also test windows.
2020-07-18 15:50:58 -05:00
Calvin Rose
3ba2c7e7e8
Address #394 and #451 - Prepare for 1.11.0
...
Prefix MANPATH and PKG_CONFIG_PATH variables
with JANET_ to disassociate with standard env variables
that have a different format.
2020-07-18 13:09:53 -05:00
Calvin Rose
a0abf307b4
Merge branch 'master' into ev
2020-07-03 12:14:48 -05:00
Calvin Rose
9c5e97144d
More small changes to help with cross compilation
...
via makefile. Add option to turn off built in
getline via janetconf.
2020-06-27 12:39:16 -05:00
Calvin Rose
328ee94412
Merge branch 'master' into ev
2020-06-22 22:25:44 -05:00
Calvin Rose
853b33b67c
On nix platforms, patch jpm with path information.
...
This means we no longer need to guess paths after install.
Custom directory layouts can now be better supported at install
time without need for environment variables.
2020-06-14 14:04:23 -05:00
Calvin Rose
19f3568e18
Update for 1.10.0.
2020-06-14 12:15:56 -05:00
Calvin Rose
a78af0a7fb
Do not explicitly free state machines, instead return a status.
...
This makes it harder to have some kind of use after free issue.
2020-05-30 11:31:05 -05:00
Calvin Rose
b68b0a256e
Start with ev module.
2020-05-28 10:39:40 -05:00
Calvin Rose
92df01b99d
Add valtest and debug to Makefile help.
2020-05-15 17:59:05 -05:00
LouisJackman
d6cd69e659
Add make help target
2020-05-15 07:51:21 +01:00
Calvin Rose
1add0c7d43
make test-install should be easier to clean.
2020-05-09 10:30:09 -05:00
Calvin Rose
d2ebf4b52d
Merge branch 'net'
2020-04-26 12:27:37 -05:00
Calvin Rose
69eb9531da
Rename auxbin/jpm -> jpm.
2020-04-26 08:55:32 -05:00
Calvin Rose
596111c988
Merge branch 'master' into net
2020-04-17 15:08:26 -05:00
Calvin Rose
810ef7401c
Update changelog and bump version to dev version.
2020-04-04 21:50:27 -05:00
Calvin Rose
bb5c478704
Switch to two digit sonames.
...
Janet's versioning scheme is not 'true' semantic versioning.
Minor versions can have and often do have breaking changes.
Although such breakages are mostly avoided, only limited effort is
made to prevent this, and no system is in place to verify this.
Thus, stricter version pinning is needed.
2020-04-04 18:30:18 -05:00
Calvin Rose
6b89da4bb2
Use -Wl,-install_name,... on macos.
2020-04-04 13:44:21 -05:00
Calvin Rose
1d0e862129
Update Makefile for pkg-config issues and soname.
2020-04-04 13:09:59 -05:00
Calvin Rose
8f1527712e
Merge branch 'master' into net
2020-03-05 18:08:35 -06:00
Calvin Rose
f06addfe06
For #240 , address case when LDCONFIG is empty
2020-03-03 18:13:25 -06:00
Calvin Rose
7c2c50ee16
For #240 - don't run ldconfig for DESTDIR installs.
2020-03-03 18:03:44 -06:00
Calvin Rose
8580d3c27e
Address #240 - Support DESTDIR in Makefile.
2020-03-03 17:45:59 -06:00
Calvin Rose
951e10f272
Address #292
...
Faulty Makefile fallback.
2020-03-03 08:21:14 -06:00
Calvin Rose
2779037f13
Clean up Makefile.
2020-02-25 20:02:03 -06:00
Calvin Rose
c0d2140d14
Begin net/ module in core.
...
Humble beginnings.
2020-02-01 20:39:54 -06:00
Calvin Rose
1bdde9c4f7
Fix warnings.
2020-01-28 23:46:14 -06:00
Calvin Rose
333ae7c4f8
Make amalgamtion the default when building.
...
This way we can support fewer build configurations. Also, remove
all undefined behavior due to use of memcpy with NULL pointers. GCC
was exploiting this to remove NULL checks in some builds.
2020-01-28 23:38:52 -06:00
Calvin Rose
62cf407f0c
Remove lto.
...
Gosh Darnit, Travis!
2020-01-20 13:53:59 -06:00
Calvin Rose
bbed72f39f
Only enable lto on linux for now.
...
Was failing with clang, as the default clang linker doesn't
do LTO.
2020-01-20 13:37:10 -06:00
Calvin Rose
3c87d89df3
Enable LTO by default
...
Most compilers support it, and it gives a good perf increase OOTB.
2020-01-20 11:38:22 -06:00
Calvin Rose
8fbcae6029
Remove -march=native from Makefile
...
Instead, one can pass in CFLAGS to make
2020-01-18 20:01:12 -06:00
Calvin Rose
a68ee7aac6
Update Copyright 2020.
2020-01-12 10:50:37 -06:00
Thodoris Sotiropoulos
5575e7577a
Fix faults in Make build
2020-01-02 22:15:55 +02:00
Calvin Rose
9dd152dc28
Add features.h for feature test macros.
...
Because we use an amalgated build, feature
test macros should be set in a single file that
is included before any other headers, and is placed
at the top of the amalgamated build.
2019-12-30 19:06:15 -05:00
Calvin Rose
407d8af026
Address #233
...
Move _POSIX_C_SOURCE to internal header.
2019-12-30 12:31:26 -05:00
Calvin Rose
52dd0f132a
Remove emscripten build.
...
Prefer using custom toolchain with amalgmated build.
2019-12-28 16:11:15 -05:00
Calvin Rose
aa7f3411f5
Use JANET_SINGLE_THREADED to disable threads.
2019-12-12 17:39:22 -06:00
Calvin Rose
eb1c21b0da
Fix some example issue and warnings under -Os.
2019-12-08 12:40:05 -06:00
Calvin Rose
8a91c52fa2
Change pthreads linking with jpm, make, and meson.
...
Try to add pthread deps when compiling programs with jpm.
2019-11-27 14:52:20 -06:00
Calvin Rose
bca0392738
First work on threading.
...
Posix only, needs to be disabled on windows. Also
the Makefile needs to be configurable, and meson.build
needs to take pthreads into account.
2019-11-26 23:13:53 -06:00
Calvin Rose
8911daaf6c
Add --test flag to jpm.
...
Also test some select packages when testing installation.
This is used in CI to make sure that versions of Janet work with
the most libraries.
2019-11-09 10:03:56 -06:00
Calvin Rose
6591e7636d
Copy janetconf to build for amalg target.
...
This makes testing the amalg easier.
2019-11-08 20:36:16 -06:00
Calvin Rose
58e3e63a89
Add jpm to release bundle.
2019-11-08 11:00:12 -06:00
Calvin Rose
cf19cd5292
Add the quickbin command to jpm.
...
This is useful for making one off executable scripts
without needing to set up a project.janet file.
2019-10-29 20:33:18 -05:00