diff options
-rw-r--r-- | Makefile.am | 15 | ||||
-rw-r--r-- | configure.ac | 14 |
2 files changed, 23 insertions, 6 deletions
diff --git a/Makefile.am b/Makefile.am index 8fc2ae9..8e62ae4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -5,12 +5,15 @@ bin_PROGRAMS = bwrap bwrap_srcpath := $(srcdir) include Makefile-bwrap.am -test-setuid: bwrap - sudo chown root bwrap - sudo sudo chmod u+s bwrap - -test-setcaps: bwrap - sudo setcap "cap_sys_admin+ep cap_sys_chroot+ep" bwrap +install-exec-hook: +if PRIV_MODE_SETUID + $(SUDO_BIN) chown root $(DESTDIR)$(bindir)/bwrap + $(SUDO_BIN) chmod u+s $(DESTDIR)$(bindir)/bwrap +else +if PRIV_MODE_FILECAPS + $(SUDO_BIN) setcap cap_sys_admin,cap_sys_chroot+ep $(DESTDIR)$(bindir)/bwrap +endif +endif include Makefile-docs.am diff --git a/configure.ac b/configure.ac index 10c7789..874015e 100644 --- a/configure.ac +++ b/configure.ac @@ -57,6 +57,20 @@ fi changequote([,])dnl AC_SUBST(WARN_CFLAGS) +AC_ARG_WITH(priv-mode, + AS_HELP_STRING([--with-priv-mode=setuid/caps/none], + [How to set privilege-raising during make install)]), + [], + [with_priv_mode="none"]) + +AM_CONDITIONAL(PRIV_MODE_FILECAPS, test "x$with_priv_mode" = "xcaps") +AM_CONDITIONAL(PRIV_MODE_SETUID, test "x$with_priv_mode" = "xsetuid") + +AC_ARG_ENABLE(sudo, + AS_HELP_STRING([--enable-sudo],[Use sudo to set privileged mode on binaries during install (only needed if --with-priv-mode used)]), + [SUDO_BIN="sudo"], [SUDO_BIN=""]) +AC_SUBST([SUDO_BIN]) + AC_CONFIG_FILES([ Makefile ]) |