]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
meson: src/security: install apparmor profile files
authorPavel Hrdina <phrdina@redhat.com>
Mon, 27 Jul 2020 07:09:07 +0000 (09:09 +0200)
committerPavel Hrdina <phrdina@redhat.com>
Mon, 3 Aug 2020 07:27:05 +0000 (09:27 +0200)
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Neal Gompa <ngompa13@gmail.com>
src/Makefile.am
src/security/Makefile.inc.am [deleted file]
src/security/apparmor/meson.build [new file with mode: 0644]
src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local [new file with mode: 0644]
src/security/meson.build

index b42d13628980d8c1b479a9a3c9373f7e96720c98..20e89cff1a84c17973ca7b389daca4d06fcf5342 100644 (file)
@@ -23,8 +23,6 @@
 BUILT_SOURCES =
 DRIVER_SOURCE_FILES =
 STATEFUL_DRIVER_SOURCE_FILES =
-INSTALL_DATA_LOCAL =
-UNINSTALL_LOCAL =
 SYM_FILES =
 USED_SYM_FILES =
 augeas_DATA =
@@ -34,7 +32,6 @@ tapset_DATA =
 endif WITH_DTRACE_PROBES
 RPC_PROBE_FILES =
 
-include security/Makefile.inc.am
 include locking/Makefile.inc.am
 include admin/Makefile.inc.am
 include vbox/Makefile.inc.am
@@ -198,7 +195,3 @@ libvirt_functions.stp: $(RPC_PROBE_FILES) $(top_srcdir)/scripts/gensystemtap.py
          $(RPC_PROBE_FILES) > $@
 
 endif WITH_DTRACE_PROBES
-
-install-data-local: $(INSTALL_DATA_LOCAL)
-
-uninstall-local: $(UNINSTALL_LOCAL)
diff --git a/src/security/Makefile.inc.am b/src/security/Makefile.inc.am
deleted file mode 100644 (file)
index 728131e..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-# vim: filetype=automake
-
-SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES_IN = \
-       security/apparmor/usr.lib.libvirt.virt-aa-helper.in \
-       security/apparmor/usr.sbin.libvirtd.in \
-       $(NULL)
-
-SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES = \
-       $(SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES_IN:%.in=%)
-       $(NULL)
-
-security/apparmor/%: $(srcdir)/security/apparmor/%.in
-       $(AM_V_GEN)$(MKDIR_P) `dirname $@` && \
-       $(SED) \
-               -e 's|[@]sysconfdir[@]|@sysconfdir@|' \
-               -e 's|[@]sbindir[@]|@sbindir@|' \
-               -e 's|[@]runstatedir[@]|@runstatedir@|' \
-               -e 's|[@]libexecdir[@]|@libexecdir@|' \
-               $< > $@
-
-BUILT_SOURCES += $(SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES)
-
-if WITH_APPARMOR_PROFILES
-apparmordir = $(sysconfdir)/apparmor.d/
-apparmor_DATA = \
-       $(SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES)
-       $(NULL)
-
-abstractionsdir = $(apparmordir)/abstractions
-abstractions_DATA = \
-       security/apparmor/libvirt-qemu \
-       security/apparmor/libvirt-lxc \
-       $(NULL)
-
-templatesdir = $(apparmordir)/libvirt
-templates_DATA = \
-       security/apparmor/TEMPLATE.qemu \
-       security/apparmor/TEMPLATE.lxc \
-       $(NULL)
-
-APPARMOR_LOCAL_DIR = "$(DESTDIR)$(apparmordir)/local"
-install-apparmor-local: $(SECURITY_DRIVER_APPARMOR_GENERATED_PROFILES)
-       $(MKDIR_P) "$(APPARMOR_LOCAL_DIR)"
-       echo "# Site-specific additions and overrides for \
-               'usr.lib.libvirt.virt-aa-helper'" \
-               >"$(APPARMOR_LOCAL_DIR)/usr.lib.libvirt.virt-aa-helper"
-
-uninstall-apparmor-local:
-       rm -f "$(APPARMOR_LOCAL_DIR)/usr.lib.libvirt.virt-aa-helper"
-       rmdir "$(APPARMOR_LOCAL_DIR)" || :
-
-INSTALL_DATA_LOCAL += install-apparmor-local
-UNINSTALL_LOCAL += uninstall-apparmor-local
-endif WITH_APPARMOR_PROFILES
diff --git a/src/security/apparmor/meson.build b/src/security/apparmor/meson.build
new file mode 100644 (file)
index 0000000..af43780
--- /dev/null
@@ -0,0 +1,38 @@
+apparmor_gen_profiles = [
+  'usr.lib.libvirt.virt-aa-helper',
+  'usr.sbin.libvirtd',
+]
+
+apparmor_gen_profiles_conf = configuration_data()
+apparmor_gen_profiles_conf.set('sysconfdir', sysconfdir)
+apparmor_gen_profiles_conf.set('sbindir', sbindir)
+apparmor_gen_profiles_conf.set('runstatedir', runstatedir)
+apparmor_gen_profiles_conf.set('libexecdir', libexecdir)
+
+apparmor_dir = sysconfdir / 'apparmor.d'
+
+foreach name : apparmor_gen_profiles
+  configure_file(
+    input: '@0@.in'.format(name),
+    output: name,
+    configuration: apparmor_gen_profiles_conf,
+    install: true,
+    install_dir: apparmor_dir,
+  )
+endforeach
+
+install_data(
+  [ 'libvirt-qemu', 'libvirt-lxc' ],
+  install_dir: apparmor_dir / 'abstractions',
+)
+
+install_data(
+  [ 'TEMPLATE.qemu', 'TEMPLATE.lxc' ],
+  install_dir: apparmor_dir / 'libvirt',
+)
+
+install_data(
+  'usr.lib.libvirt.virt-aa-helper.local',
+  install_dir: apparmor_dir / 'local',
+  rename: 'usr.lib.libvirt.virt-aa-helper',
+)
diff --git a/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local b/src/security/apparmor/usr.lib.libvirt.virt-aa-helper.local
new file mode 100644 (file)
index 0000000..c0990e5
--- /dev/null
@@ -0,0 +1 @@
+# Site-specific additions and overrides for 'usr.lib.libvirt.virt-aa-helper'
index 4014ddccc451cdd7b3c7fe77a874a121b39b4652..4f876c03c2d46ec2148999c0e9eaa05601661d2e 100644 (file)
@@ -51,3 +51,7 @@ if conf.has('WITH_LIBVIRTD') and conf.has('WITH_APPARMOR')
     ],
   }
 endif
+
+if conf.has('WITH_APPARMOR_PROFILES')
+  subdir('apparmor')
+endif