1
0
mirror of https://github.com/janet-lang/janet synced 2024-06-27 15:43:17 +00:00
Commit Graph

100 Commits

Author SHA1 Message Date
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
a68ee7aac6 Update Copyright 2020. 2020-01-12 10:50:37 -06:00
Calvin Rose
0b0fb18c42 Can we fix NSIS? 2019-12-31 12:10:57 -05:00
Calvin Rose
bfb638cfc2 Try EnVar_plugin for updating path.
This should be more robust and not fail after upgrading.
2019-12-31 10:26:54 -05:00
Calvin Rose
3a47ad5d99 Remove some NSIS cruft to see if we can fix 3.05 2019-12-31 09:49:50 -05:00
Calvin Rose
e3c88295f2 Update to NSIS 3.05
Lock version in appveyor.yml
2019-12-31 09:40:36 -05:00
Calvin Rose
75bb8fbcd1 Amalg script included janet.h before test macros. 2019-12-30 22:08:12 -05:00
Andrew Chambers
0ac5b243c7 Add os/cryptorand. 2019-12-04 14:02:37 +13:00
Andrew Chambers
4acc63e325 Add afl fuzzing helpers. 2019-11-29 16:43:14 +13:00
Calvin Rose
c12eaa926a Make sure $prefix/lib/janet is created
After we removed cook.janet, jpm didn't work well out of the box
with a meson install.
2019-11-08 18:43:53 -06:00
Calvin Rose
46e09e4c71 Fix tools/removecr.janet 2019-10-29 18:56:32 -05:00
Calvin Rose
427b2638e0 Fix startup environment. 2019-10-29 18:47:54 -05:00
Calvin Rose
99ef4c7510 Fix an issue with the removecr script 2019-10-19 19:11:13 -04:00
Calvin Rose
b9e05d06fe Update amalg step. 2019-10-19 18:00:29 -05:00
Calvin Rose
9f48c3e2db Remove :r from amalg.janet 2019-09-12 23:34:14 -05:00
Calvin Rose
e6306ea188 Add script for removing <CR> on windows.
This caused bad stuff to be generated on windows, specifically
the amalg file. We cause totally strip <CR> from files on windows
using this script.
2019-09-12 23:18:52 -05:00
Calvin Rose
0fce440455 See if we can use a different build of NSIS. 2019-08-07 22:19:49 -04:00
Calvin Rose
44e752d737 Add shorthand function literals to janet.
These are similar to the function literals from Clojure
(also Fennel), and should make short functions for maps, filters, etc.
easier to write.
2019-08-04 12:25:52 -05:00
Calvin Rose
8bbe518696 Executables linking to natives working on linux.
This involves a bunch of machinery in cook.janet
and even a little bit in the janet C API.
2019-07-28 13:27:20 -05:00
Calvin Rose
ec32d11b76 Update installer and make things build on windows.
We can now build windows executables with jpm.
2019-07-28 01:05:15 -04:00
Calvin Rose
7e97687c9e Update windows installation and automation. 2019-07-27 21:44:44 -04:00
Calvin Rose
da5a64131f Progress towards making windows work again. 2019-07-27 16:16:28 -04:00
Calvin Rose
b0b1024f8a Try to fix some tests for CI. 2019-07-27 11:05:53 -05:00
Calvin Rose
dfe00fee94 Building standalone binaries on linux working.
Mostly changes to cook and jpm. Also some
code for file associations in the windows installer, and
adding the :linux value from os/which (instead of just :posix).
2019-07-26 22:43:54 -05:00
Barakat
95dbad6ec1
Remove amalg.janet dependency on os/date
When compiling Janet with `JANET_REDUCED_OS`, `os/date` will not be available which breaks the tool amalg.janet. One can check file modification time on the filesystem instead.
2019-07-09 13:49:37 +03:00
Calvin Rose
e8e4d637ef Fix jpm.bat on a normal install
The path to jpm.janet will likely have spaces.
2019-07-08 19:54:14 -04:00
Krystian Rosiński
6099d2a45d Fix typo in jpm.bat 2019-07-05 19:49:55 +02:00
Calvin Rose
1ceaceada4 Fix doc generation. 2019-06-19 09:48:33 -04:00
Calvin Rose
b082c8123e Update tm_language_gen. 2019-06-05 11:07:08 -04:00
Calvin Rose
3d76d988c3 More work on installation and moving files around.
Move all installed libraries into auxlib.
Move all installed executable scripts into auxbin.
2019-06-01 10:38:28 -04:00
Calvin Rose
c8c6419013 Update installer again. 2019-05-29 19:48:31 -04:00
Calvin Rose
e8516c29e0 Update installer and jpm to work better on windows. 2019-05-29 19:01:12 -04:00
Calvin Rose
178d175bcf Update options for jpm and path stuff. 2019-05-29 11:04:38 -04:00
Calvin Rose
6c897b1a37 Add default for bindir. 2019-05-28 22:41:47 -04:00
Calvin Rose
db55277b58 Work on windows installer.
We will probably shift to NSIS as the default
installation method for windows. Shipping around a
single binary just doesn't cut it if we want to be able
to reliably use tools like `jpm` to build things.
2019-05-28 20:45:39 -04:00
Calvin Rose
f12f896020 Change test-install 2019-05-28 12:59:21 -04:00
Calvin Rose
09ab391d13 Add import-rules to cook.
First steps to recursive rules. Just needs normalized paths
relative to the directory of the imported file.
2019-05-28 09:49:10 -04:00
Calvin Rose
7569930b0c More work on cook and jpm. 2019-05-28 08:48:35 -04:00
Calvin Rose
e7189438dd More work on jpm
Switch to rea dependency graph for a rake-like tool.
This model is more powerful for writing build scripts.
2019-05-27 22:14:24 -04:00
Calvin Rose
1696de233c Add jpm tool, based on cook.
Modify cook as well.
2019-05-27 16:50:57 -04:00
Calvin Rose
f35b5765d6 Set module/*headerpath* during bootstrap
Cook also uses module/*headerpath* for finding headers
rather than using module/*syspath*.
2019-05-15 10:49:16 -04:00
Calvin Rose
52ab9fb475 Update cook tool and headers. 2019-05-09 17:37:46 -04:00
Calvin Rose
5a28d8d1fa fix cook error. 2019-05-04 18:55:36 -04:00
Calvin Rose
ea25766374 fix cook. 2019-05-04 17:59:48 -04:00
Calvin Rose
03e3ecb0a1 Update cook tool. 2019-05-02 13:10:14 -04:00
Calvin Rose
2d7df6b78e Many changes for adding dynamic (fiber-level) scope.
- Allow passing a table to fibers, which make fiber level scope easier.
- Add fiber/getenv, fiber/setenv, dyn, and setdyn
- Remove meta, *env*, and *doc-width*
- Some functions changed dignatures, and no longer take an env
2019-04-16 15:41:45 -04:00
Calvin Rose
4ded5e10a2 Update cook tool to export shell function. 2019-04-12 13:48:45 -04:00
Calvin Rose
59c69e6896 Update cook cleaning up directory. 2019-04-05 20:01:03 -04:00
Calvin Rose
cd6c009c03 Reformat and use new os/stat capabilities. 2019-04-01 11:21:45 -04:00
Calvin Rose
b15cf193a0 Update os/stat
os/stat can now take a keyword as the second argument
to avoid creating a table if one only wants on value
from stat.
2019-04-01 11:11:15 -04:00