diff options
author | Pjotr Prins | 2025-06-24 20:36:01 +0200 |
---|---|---|
committer | Pjotr Prins | 2025-06-24 20:36:01 +0200 |
commit | abef0bbbc306006018a488e0733932ed752c615d (patch) | |
tree | e910617a591071f1ce4bfce4276415092b6738f7 /doc/code | |
parent | 422d6305dc528c32f8ba002f4076e2abd4b7be7e (diff) | |
download | pangemma-abef0bbbc306006018a488e0733932ed752c615d.tar.gz |
Preparing the build shell and enviroment
Diffstat (limited to 'doc/code')
-rw-r--r-- | doc/code/pangemma.md | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/code/pangemma.md b/doc/code/pangemma.md index eef522e..b588b7e 100644 --- a/doc/code/pangemma.md +++ b/doc/code/pangemma.md @@ -204,3 +204,11 @@ ZeroMQ provides a minimalistic message passing interface in most languages. It w ## Sharing data in RAM There are several methods for sharing data between threads and processes. First we can first use Linux copy on write for instantiated processes. The Linux kernel als has shared memory support and, more interesting, memory mapping support --- which is also used in lmdb. Lmdb is multi-platform and works on non-POSIX systems. It is very fast, but may need tweaking, for example by disabling read-ahead with MDB_NORDAHEAD. We'll get to that. +## Build system + +The build system for development relies on Guix. See the header of [guix.scm](../guix.scm). +Guix handles depencies well, so it is a great base to work from. + +For the actual build system we'll probably roll our own. +All build tools I know are too messy, including CMake, meson and make itself. So, as a real hacker, we +reinvent the wheel. A starting point is Arun's [g-exp blog](https://systemreboot.net/post/g-expressions-makings-of-a-make-killer). |