summaryrefslogtreecommitdiff
path: root/Makefile.am
diff options
context:
space:
mode:
authorSimon McVittie <smcv@collabora.com>2021-05-05 12:16:20 +0100
committerSimon McVittie <smcv@collabora.com>2022-02-18 10:42:55 +0000
commit19279812409265b2bb86edf465d47c529ed9226d (patch)
tree18c076e6f65c553e5aafe15c138de545124da0e9 /Makefile.am
parent43c2d32d7f03ce502c248ff6575c1ce5e205ecd5 (diff)
downloadbubblewrap-19279812409265b2bb86edf465d47c529ed9226d.tar.gz
Add a Meson build system
This allows bwrap to be built as a subproject in larger Meson projects. When built as a subproject, we install into the --libexecdir and require a program prefix to be specified: for example, Flatpak would use program_prefix=flatpak- to get /usr/libexec/flatpak-bwrap. Verified to be backwards-compatible as far as Meson 0.49.0 (Debian 9 backports). Loosely based on previous work by Jussi Pakkanen (see #133). Differences between the Autotools and Meson builds: The Meson build requires a version of libcap that has pkg-config metadata (introduced in libcap 2.23, in 2013). The Meson build has no equivalent of --with-priv-mode=setuid. On distributions like Debian <= 10 and RHEL <= 7 that require a setuid bwrap executable, the sysadmin or distribution packaging will need to set the correct permissions on the bwrap executable; Debian already did this via packaging rather than the upstream build system. The Meson build supports being used as a subproject, and there is CI for this. It automatically disables shell completions and man pages, moves the bubblewrap executable to ${libexecdir}, and renames the bubblewrap executable according to a program_prefix option that the caller must specify (for example, Flatpak would use -Dprogram_prefix=flatpak- to get /usr/libexec/flatpak-bwrap). See the tests/use-as-subproject/ directory for an example. Signed-off-by: Simon McVittie <smcv@collabora.com>
Diffstat (limited to 'Makefile.am')
-rw-r--r--Makefile.am10
1 files changed, 10 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index 9c8145e..94ef77f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -5,11 +5,21 @@ EXTRA_DIST = \
.editorconfig \
README.md \
autogen.sh \
+ completions/bash/meson.build \
+ completions/meson.build \
+ completions/zsh/meson.build \
demos/bubblewrap-shell.sh \
demos/flatpak-run.sh \
demos/flatpak.bpf \
demos/userns-block-fd.py \
+ meson.build \
+ meson_options.txt \
packaging/bubblewrap.spec \
+ tests/meson.build \
+ tests/use-as-subproject/README \
+ tests/use-as-subproject/config.h \
+ tests/use-as-subproject/dummy-config.h.in \
+ tests/use-as-subproject/meson.build \
uncrustify.cfg \
uncrustify.sh \
$(NULL)