From abef0bbbc306006018a488e0733932ed752c615d Mon Sep 17 00:00:00 2001 From: Pjotr Prins Date: Tue, 24 Jun 2025 20:36:01 +0200 Subject: Preparing the build shell and enviroment --- doc/code/pangemma.md | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'doc/code') 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). -- cgit v1.2.3