Skip to content

build and install with cmake: system wide & into source tree#40

Open
Fuddl1 wants to merge 10 commits intoteddych:masterfrom
Fuddl1:pr-system-or-srctree-install
Open

build and install with cmake: system wide & into source tree#40
Fuddl1 wants to merge 10 commits intoteddych:masterfrom
Fuddl1:pr-system-or-srctree-install

Conversation

@Fuddl1
Copy link
Copy Markdown
Contributor

@Fuddl1 Fuddl1 commented Mar 28, 2026

Enable via cmake the installation either into a GNU directory structure or optionally into the working copy, like a "developer mode".

The GNU Makefile is updated to keep backwards compatibility, as this turns the path to HTML files into a compile-time variable.

To install into the working copy, I re-used Edwourd's idea to overwrite respective internal variables of cmake conditionally when built with

cmake -B build -DINSTALL_IN_PLACE=1
cmake --build build
cmake --install build

COMPILING*.md describes compiling with cmake and the optional installation into the working copy.

ekohl and others added 10 commits February 15, 2026 19:42
This makes it clearer how items are related.

This is an edit of Edwoud's work, but leaves the "chunked HTML" as is.
pandoc is not that straight-forward to handle when it works in 'chunked
HTML mode'.
Instead of using a custom command, this uses the built in functionality.
Replaces white space indention by tabs.
Install according to paths defined in cmake's GNUInstallDir module.

Add option INSTALL_IN_PLACE=1 for cmake builds that makes
cmake --install install right into the source tree. Off by default.

To make that work, make the server read its HTML files from a
compile-time defined directory. In cmake builds, that is adjusted
automatically for system-wide and source tree installations.
Hard-wire it unconditionally to ./html because there is no support for
system wide installation, anyway.
Extended English and German translations.

Mention optional installation into the working copy, as a "developer
mode".

TODO: Spanish translation
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants