aboutsummaryrefslogtreecommitdiff
path: root/doc/manual
diff options
context:
space:
mode:
authorjade <lix@jade.fyi>2024-06-07 03:53:31 +0000
committerGerrit Code Review <gerrit@lix-systems>2024-06-07 03:53:31 +0000
commit4f94531209510c7d580e525a017ea01f18894ded (patch)
treec5b8e06f73a5fd27ed6afa53a22b9fca145c4638 /doc/manual
parentec768df0046659e75974919f5923661a29ff52c9 (diff)
parent611b1de441a54d3ed7781ca0a26b51b6cb9c45cc (diff)
Merge changes from topic "releng" into main
* changes: Add meson release note Move version to a JSON file so we can have release names Remove rl-next-dev
Diffstat (limited to 'doc/manual')
-rw-r--r--doc/manual/rl-next/build-timing-analysis.md (renamed from doc/manual/rl-next-dev/build-timing-analysis.md)9
-rw-r--r--doc/manual/rl-next/meson.md15
2 files changed, 23 insertions, 1 deletions
diff --git a/doc/manual/rl-next-dev/build-timing-analysis.md b/doc/manual/rl-next/build-timing-analysis.md
index e59f3ca02..1bf803dab 100644
--- a/doc/manual/rl-next-dev/build-timing-analysis.md
+++ b/doc/manual/rl-next/build-timing-analysis.md
@@ -1,11 +1,13 @@
---
synopsis: Clang build timing analysis
cls: 587
+category: Development
---
We now have Clang build profiling available, which generates Chrome
tracing files for each compilation unit. To enable it, run `meson configure
-build -Dprofile-build=enabled` then rerun the compilation.
+build -Dprofile-build=enabled` in a Clang stdenv (`nix develop
+.#native-clangStdenvPackages`) then rerun the compilation.
If you want to make the build go faster, do a clang build with meson, then run
`maintainers/buildtime_report.sh build`, then contemplate how to improve the
@@ -13,3 +15,8 @@ build time.
You can also look at individual object files' traces in
<https://ui.perfetto.dev>.
+
+See [the wiki page][improving-build-times-wiki] for more details on how to do
+this.
+
+[improving-build-times-wiki]: https://wiki.lix.systems/link/8#bkmrk-page-title
diff --git a/doc/manual/rl-next/meson.md b/doc/manual/rl-next/meson.md
new file mode 100644
index 000000000..f836d192f
--- /dev/null
+++ b/doc/manual/rl-next/meson.md
@@ -0,0 +1,15 @@
+---
+synopsis: Lix is built with meson
+# and many more
+cls: [580, 627, 628, 707, 711, 712, 719]
+credits: [Qyriad, horrors, jade, 9999years, winter]
+category: Packaging
+---
+
+Lix is built exclusively with the meson build system thanks to a huge team-wide
+effort, and the legacy `make`/`autoconf` based build system has been removed
+altogether. This improves maintainability of Lix, enables things like saving
+20% of compile times with precompiled headers, and generally makes the build
+less able to produce obscure incremental compilation bugs.
+
+Non-Nix-based downstream packaging needs rewriting accordingly.