Commit Graph

98 Commits

Author SHA1 Message Date
Jordan Bancino 5d87da31cd j2s generated code is now C99.
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 12s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 17s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 20s Details
It also no longer requires on the now-defunct Int64.h.
2024-01-13 18:55:31 -05:00
Jordan Bancino 461357b526 Move headers from `src/include` to `include/Cytoplasm`.
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 12s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 12s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 18s Details
This makes it easier to build Cytoplasm as a component of another
program (for example, Telodendria), or as a standalone system library.
2024-01-13 18:40:31 -05:00
Jordan Bancino cd7df7bbb4 Enable higher optimization on fancy compilers.
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 18s Details
2024-01-13 18:22:37 -05:00
Jordan Bancino c489eff517 Set -Wextra on fancy compilers.
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 18s Details
2024-01-13 18:11:44 -05:00
Jordan Bancino 039a487bdf Merge branch 'master' of https://git.telodendria.io/Telodendria/Cytoplasm
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 12s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 12s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 16s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 20s Details
2024-01-13 17:57:31 -05:00
Jordan Bancino 31c9bc7f1c Update Cytoplasm license text for 2024. 2024-01-13 17:56:58 -05:00
Jordan Bancino 11e0a34c02 Update README.md
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 19s Details
2024-01-13 17:49:36 -05:00
Jordan Bancino 08166dd3a7 Don't use `install` because it is not POSIX.
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 18s Details
Closes #13.
2024-01-13 17:26:17 -05:00
Jordan Bancino c3429f035c Update CHANGELOG.md
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 19s Details
2024-01-13 17:18:17 -05:00
Jordan Bancino 662696ce12 C99 Compliance (#29)
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Failing after 8s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Failing after 10s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 9s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 13s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 11s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 14s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 17s Details
This pull request brings Cytoplasm up from C89 to C99, which makes it much more portable across platforms. In particular, this pull request solves a number of issues with 32-bit platforms.

Closes #28.
Closes #12.
Closes #20.

Reviewed-on: #29
2024-01-13 17:13:45 -05:00
Jordan Bancino d0969d0dd7 Add a simple CI workflow for compiling Cytoplasm. (#27)
Compile Cytoplasm / Compile Cytoplasm (x86_64, freebsd-v14.0) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86, debian-v12.4) (push) Successful in 19s Details
Compile Cytoplasm / Compile Cytoplasm (x86, alpine-v3.19) (push) Successful in 17s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, debian-v12.4) (push) Successful in 17s Details
Compile Cytoplasm / Compile Cytoplasm (x86, netbsd-v9.3) (push) Successful in 16s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, alpine-v3.19) (push) Successful in 15s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, netbsd-v9.3) (push) Successful in 19s Details
Compile Cytoplasm / Compile Cytoplasm (x86, freebsd-v14.0) (push) Successful in 17s Details
Compile Cytoplasm / Compile Cytoplasm (x86_64, openbsd-v7.4) (push) Successful in 21s Details
This will allow us to pick up compiler warnings from other systems, mainly 32-bit ones. 32-bit systems have different integer sizes that cause all kinds of warnings that we should really address.

Reviewed-on: #27
2024-01-13 11:08:44 -05:00
Jordan Bancino d7da8e0a54 Merge pull request 'Fix potential double-free issue in Cytoplasm' (#22) from lda/Cytoplasm:fix-router-issue into master
Reviewed-on: #22
2024-01-04 19:32:57 -05:00
lda 44b7f45bb7 [FIX] Fix other potential double-free
Was done "à la va-vite" since I can't really work on it directly right now.
2024-01-01 07:57:11 -05:00
lda 3788d044e6
[FIX] Fix potential double-free issue in Cytoplasm 2023-12-14 18:31:20 +01:00
Jordan Bancino 928e9c8223 Update CHANGELOG.md 2023-12-02 10:26:24 -05:00
lda 17f1a41519 `HttpRouter`: Decode path parts before matching. (#19)
Required by Telodendria/Telodendria#44.

Reviewed-on: #19
Co-authored-by: lda <lda@freetards.xyz>
Co-committed-by: lda <lda@freetards.xyz>
2023-12-02 10:25:28 -05:00
Jordan Bancino 29070c8f41 Fix memory leak in code generated by `j2s` code.
Closes #17.
2023-11-20 09:51:08 -05:00
Jordan Bancino bc67393036 Update CHANGELOG.md 2023-11-06 21:28:10 -05:00
Jordan Bancino ba1ac5b42b Add `JsonMerge()`.
Closes #15.
2023-11-06 19:59:46 -05:00
Jordan Bancino 01da37f7d7 Bump version number. 2023-11-06 14:20:42 -05:00
Jordan Bancino 618bcbbac3 `j2s`: Add 'extern' type and ignored fields.
Closes #14.
2023-11-06 14:19:49 -05:00
Jordan Bancino d242597e73 Allow customization of compiler used in configure. 2023-11-04 15:58:23 -04:00
Jordan Bancino 4e73273cbd Add CHANGELOG.md 2023-11-01 12:20:52 -04:00
Jordan Bancino dadc1ac5c7 Provide build instructions and logo.
Closes #8.
2023-11-01 11:26:48 -04:00
Jordan Bancino 8ffade37b1 Add a meta header.
This allows programs to print the name and version of the library that
is currently in use.
2023-11-01 11:26:27 -04:00
Jordan Bancino 6ab1c7919b Explicitly set the `make` compiler to `cc`.
This makes it work out of the box on GNU systems where GNU make defaults
to c99, which doesn't accept -std=c89.
2023-11-01 11:25:32 -04:00
Jordan Bancino 03fe5ca355 Move http man page to Cytoplasm from Telodendria. 2023-11-01 08:33:37 -04:00
Jordan Bancino 75ecb22724 Remove int64 and uint64; add http. 2023-11-01 08:28:35 -04:00
Jordan Bancino cced0ad883 Closes #3 2023-10-30 14:41:58 -04:00
Jordan Bancino 51898d5bac Update README.md 2023-10-30 15:31:49 -04:00
Jordan Bancino 2ea041d99d main() is already included in the library.
The runtime stub doesn't need to be a separate object.
2023-10-30 14:11:22 -04:00
Jordan Bancino 2714a822b0 j2s now generates the proper includes. 2023-10-30 13:43:35 -04:00
Jordan Bancino 7c1173eef8 Install tools to system.
Note that int64 and uint64 should probably be removed.
2023-10-30 12:21:14 -04:00
Jordan Bancino 3a683dbb70 Fix includes in headers.
These are installed to the system and some compilers may not  find the
headers in the current directory if we don't do this, even though
according to the C standard, either should work.
2023-10-30 12:10:41 -04:00
Jordan Bancino e69769d4d2 Update configure 2023-10-30 11:29:15 -04:00
lda c23f8a4be6 [FIX] Fix issue related to TLS (#1)
The Makefile didn't properly set TLS_IMPL, effectively causing no
TLS implementation to be put in.

Co-authored-by: LoaD Accumulator <lda@freetards.xyz>
Reviewed-on: #1
Co-authored-by: LoaD Accumulator <lda@noreply.git.telodendria.io>
Co-committed-by: LoaD Accumulator <lda@noreply.git.telodendria.io>
2023-10-04 15:02:38 -04:00
Jordan Bancino dcbb488f7d Add install and uninstall recipes. 2023-10-02 16:02:51 -04:00
Jordan Bancino 8395a05807 Clean up Makefile generation to make so it isn't so repetitive. 2023-09-28 23:21:31 -04:00
Jordan Bancino f16a9f4c6d Add print-libs for use in other scripts. 2023-09-28 19:53:57 -04:00
Jordan Bancino 983fabcd2a Replace Cytoplasm's make.sh with configure script and Makefile. 2023-09-28 19:27:50 -04:00
Jordan Bancino 7e21b2bfce Format source code and apply license. 2023-09-28 19:16:45 -04:00
Jordan Bancino ffc91b9114 Use int instead of char in EvalExpr.
Closes #5
2023-09-25 15:58:43 -04:00
lda 9c4c3fc899 Fixes issue #33 related to a memory issue, and format some code. (#35)
Fixes #33.

Co-authored-by: LoaD Accumulator <lda@freetards.xyz>
Reviewed-on: Telodendria/telodendria#35
Co-authored-by: LoaD Accumulator <lda@noreply.git.telodendria.io>
Co-committed-by: LoaD Accumulator <lda@noreply.git.telodendria.io>
2023-09-11 10:57:16 -04:00
array-in-a-matrix a19ebea78f replaced .cvsignore with .gitignore 2023-09-06 11:45:44 -04:00
Jordan Bancino d643cc876b Convert Cytoplasm README to markdown. 2023-09-05 22:10:33 -04:00
Jordan Bancino 8e8342528f Apply #72 2023-09-04 13:30:22 +00:00
Jordan Bancino 49acb75498 Fix memory leak in some generated code. 2023-08-17 18:09:53 +00:00
Jordan Bancino 4e58b41049 Update documentation on UtilServerTs(). 2023-08-17 18:09:20 +00:00
Jordan Bancino bcfab52f09 Ignore special case in Int64Str. This is hack but good enough for now. 2023-08-13 12:33:18 +00:00
Jordan Bancino a1da7c7b4a Json now uses Int64 for integers.
This should fix all timestamp errors on 32-bit systems in Cytoplasm and
Telodendria.
2023-08-13 03:11:40 +00:00