b41bec792a
configure: strip compiler and linker flags of whitespace
...
Also include cppflags in the script's output
2024-02-27 18:02:33 +13:00
5313601c79
configure: add basic list utilities
...
inlist determines whether an item is in a list
removefrom returns a list with an element removed
trim strips whitespace from a string, using xargs
2024-02-27 17:59:19 +13:00
42f95378ec
configure: use neat comment style to denote different sections
2024-02-27 17:50:48 +13:00
8c5777fb98
tree: add standard copyright phrasing
...
Callisto - standalone scripting platform for Lua 5.4
Copyright (c) 2023-2024 Jeremy Baxter.
2024-02-19 10:16:45 +13:00
280f516a21
csto: remove non-posix ifdefs
2024-02-19 10:12:20 +13:00
71b288efde
callisto.h: remove LUA_USE_POSIX definition
...
It does almost nothing being in this header and is specified in
config.mk anyway.
2024-02-19 10:04:18 +13:00
7bbf39c8c6
external/lua: revise makefile to be more generic
...
part of this is making Lua's makefile use Callisto's config.mk by default.
2024-02-18 19:35:06 +13:00
bbd25fe4a2
configure: include -lm and -DLUA_USE_POSIX in config.mk
2024-02-18 18:14:34 +13:00
331c6acbd2
configure: fix when called from other directory
2024-02-18 18:13:39 +13:00
a0607346e7
external/lua: fix warning in os.hostname
2024-02-18 18:02:54 +13:00
c3a9b5d6d5
makefile: refine
...
o remove libcallisto from LIBS
o use LIBS rather than liblua.a in csto target
o delete csto.o in clean target
o remove clean-all from phonies
o store the path to the Lua source code in LUADIR rather than using
the full path everywhere
o remove warning flags and preprocessor definitions from cjson's
compiler command line; it is just not needed.
2024-02-18 17:23:26 +13:00
d4ec5248fe
configure: include -std=c99 in config.mk
...
So other makefiles can use it, e.g. the one in external/lua
2024-02-18 17:19:15 +13:00
8568ca2fb3
configure: rename error() to throw()
2024-02-18 16:54:34 +13:00
1d15eec7f8
add contributing section to readme
2024-02-12 16:25:09 +13:00
0fbf28a15f
shell.nix: delete
...
Using the flake you can get the same result by running the command:
nix develop
2024-02-12 16:17:16 +13:00
f1d0153bf6
flake: update lockfile
2024-02-12 16:01:02 +13:00
cee6d32b50
flake: improve readability
2024-02-12 16:00:51 +13:00
9d828cce36
flake: fix build with configure script
2024-02-12 15:48:59 +13:00
ba8effbead
flake: fix style
2024-02-12 15:34:26 +13:00
72938f9c77
add result to gitignore
...
Nix names the output of the build 'result'.
2024-02-12 13:53:30 +13:00
33af0317a8
add style document
2024-02-12 13:53:04 +13:00
751fca09e1
switch to modular configure-based buildsystem
2024-01-25 21:12:12 +13:00
b5d61a25cb
rename the statically linked strlcpy to strbcpy
...
stands for "string bounds copy". Some systems like macOS include their
very own version of strlcpy and testing for that would require some
bloat like gnu automake so I'm just gonna rename it to prevent any
future conflicts. I only test on Linux and OpenBSD anyway. ;)
2024-01-25 19:47:57 +13:00
bee1a5f180
fix readme
2024-01-25 19:39:46 +13:00
436e6a5184
fix build on compilers without -Oz
2024-01-17 20:40:10 +13:00
adb4091293
workaround esoteric gcc behaviour on Linux
...
ld would fail to find Lua symbols in liblua.a, the solution is
to put all object files before static libraries on the command line.
2024-01-17 20:29:42 +13:00
a6809fe480
integrate lua-cjson's buildsystem and static library with callisto's
...
and make some more makefile improvements
2023-12-28 13:20:05 +13:00
55b40a17cd
add Lua 5.4.6 patches
2023-12-27 23:16:49 +00:00
787820e82f
revert Lua patches
2023-12-27 23:17:00 +00:00
7fd3b3282f
add config.ld excludes
2023-12-27 23:16:49 +00:00
f187530e0c
add external gitignores
2023-12-27 23:16:49 +00:00
9db822c84f
rename external/luasrc => external/lua
2023-12-27 23:16:49 +00:00
88863a2a3d
add tests
2023-12-27 19:46:54 +13:00
099a9c33e6
fix crash in process.signum, use pgrep over pidof in process.pidof
...
pidof is, as far as I know, only available on Linux. pgrep is much
more portable (even though it is not part of a standard), and can
be found in the base system on most BSDs and included in most
Linux distributions as part of the procps-ng package.
2023-12-27 14:18:07 +13:00
7b8c7632e9
fix up fs
2023-12-26 17:47:07 +13:00
058aa579ba
implement fs.remove, a recursive deletion function
2023-12-24 18:06:58 +13:00
2feddd9abc
improve fs docs and minor blunders
2023-12-24 15:05:52 +13:00
661b141a1f
clean up gitignore
2023-12-24 14:31:14 +13:00
11f6a34ebf
merge fs and path libraries
2023-12-24 14:24:55 +13:00
44f7620a41
fixup doc generation
2023-12-24 14:08:25 +13:00
0081e9d1a6
remove result from config.ld
2023-12-24 09:05:56 +13:00
7c3282181b
remove lua.h from config.ld
...
it's now in external/
2023-12-24 09:04:27 +13:00
2a75eab074
split the contents of fs.isfile and fs.isdirectory into its own function
...
and add more docs
2023-12-24 06:36:06 +13:00
fdcb8f794a
remove errors.h
2023-12-24 06:34:51 +13:00
a2779a1997
drop the shared library
2023-12-24 06:07:26 +13:00
ff5012f2c2
move PREFIX and MANPREFIX into config.mk
2023-12-24 05:53:29 +13:00
790ad50f2b
implement fs.isfile and fs.isdirectory
2023-12-23 20:52:34 +13:00
aa7ae1d9ac
implement fs.copy, a file copying routine and clean up some docs in fs
2023-12-23 20:33:24 +13:00
ea3fb6c292
move lua-5.4 -> external/luasrc
...
we have to use the name "luasrc" rather than just "lua" because lua
is in gitignore
2023-12-23 18:19:51 +13:00
cae9985747
change BSD ifndefs to __OpenBSD__ and remove unnecessary ifdefs
...
I'm not sure if any operating system other than OpenBSD
has strlcpy/strlcat. May need to use a configure script
for this later on.
2023-12-23 16:33:38 +13:00