configure: add --enable-pam

parent 7ac43d3d
...@@ -607,34 +607,42 @@ else ...@@ -607,34 +607,42 @@ else
fi fi
AM_CONDITIONAL([IS_BIONIC], [test "x$is_bionic" = "xyes"]) AM_CONDITIONAL([IS_BIONIC], [test "x$is_bionic" = "xyes"])
AC_ARG_WITH( # Configuration examples
[pamdir], AC_ARG_ENABLE([pam],
[AS_HELP_STRING([--with-pamdir=PATH],[Specify the directory where PAM modules are stored, [AC_HELP_STRING([--enable-pam], [enable pam module [default=no]])],
or "none" if PAM modules are not to be built])], [], [enable_pam=no])
[pamdir="${withval}"], AM_CONDITIONAL([ENABLE_PAM], [test "x$enable_pam" = "xyes"])
[
if test "${prefix}" = "/usr"; then AM_COND_IF([ENABLE_PAM],
pamdir="/lib${libdir##*/lib}/security" [AC_ARG_WITH(
else [pamdir],
pamdir="\$(libdir)/security" [AS_HELP_STRING([--with-pamdir=PATH],[Specify the directory where PAM modules are stored,
fi or "none" if PAM modules are not to be built])],
] [pamdir="${withval}"],
) [
if test "${prefix}" = "/usr"; then
pamdir="/lib${libdir##*/lib}/security"
else
pamdir="\$(libdir)/security"
fi
]
)])
AM_CONDITIONAL([HAVE_PAM], [test x"$pamdir" != "xnone"]) AM_CONDITIONAL([HAVE_PAM], [test x"$pamdir" != "xnone"])
if test "z$pamdir" != "znone"; then AM_COND_IF([ENABLE_PAM],
AC_ARG_VAR([PAM_CFLAGS], [C compiler flags for pam]) [if test "z$pamdir" != "znone"; then
AC_ARG_VAR([PAM_LIBS], [linker flags for pam]) AC_ARG_VAR([PAM_CFLAGS], [C compiler flags for pam])
AC_CHECK_LIB( AC_ARG_VAR([PAM_LIBS], [linker flags for pam])
[pam], AC_CHECK_LIB(
[pam_authenticate], [pam],
[PAM_LIBS="-lpam"], [pam_authenticate],
[AC_MSG_ERROR([*** libpam not found.]) [PAM_LIBS="-lpam"],
]) [AC_MSG_ERROR([*** libpam not found.])
])
AC_SUBST(PAM_LIBS)
AC_SUBST([pamdir]) AC_SUBST(PAM_LIBS)
fi AC_SUBST([pamdir])
fi])
# Some systems lack PR_CAPBSET_DROP definition => HAVE_DECL_PR_CAPBSET_DROP # Some systems lack PR_CAPBSET_DROP definition => HAVE_DECL_PR_CAPBSET_DROP
AC_CHECK_DECLS([PR_CAPBSET_DROP], [], [], [#include <sys/prctl.h>]) AC_CHECK_DECLS([PR_CAPBSET_DROP], [], [], [#include <sys/prctl.h>])
...@@ -956,6 +964,7 @@ Security features: ...@@ -956,6 +964,7 @@ Security features:
- SELinux: $enable_selinux - SELinux: $enable_selinux
PAM: PAM:
- PAM module: $enable_pam
- cgroup PAM module: $pamdir - cgroup PAM module: $pamdir
Bindings: Bindings:
......
...@@ -305,6 +305,7 @@ init_lxc_static_LDADD = @CAP_LIBS@ ...@@ -305,6 +305,7 @@ init_lxc_static_LDADD = @CAP_LIBS@
init_lxc_static_CFLAGS = $(AM_CFLAGS) -DNO_LXC_CONF init_lxc_static_CFLAGS = $(AM_CFLAGS) -DNO_LXC_CONF
endif endif
if ENABLE_PAM
if HAVE_PAM if HAVE_PAM
pam_LTLIBRARIES = pam_cgfs.la pam_LTLIBRARIES = pam_cgfs.la
pam_cgfs_la_SOURCES = pam/pam_cgfs.c macro.h pam_cgfs_la_SOURCES = pam/pam_cgfs.c macro.h
...@@ -312,6 +313,7 @@ pam_cgfs_la_CFLAGS = $(AM_CFLAGS) ...@@ -312,6 +313,7 @@ pam_cgfs_la_CFLAGS = $(AM_CFLAGS)
pam_cgfs_la_LIBADD = $(AM_LIBS) $(PAM_LIBS) -L$(top_srcdir) pam_cgfs_la_LIBADD = $(AM_LIBS) $(PAM_LIBS) -L$(top_srcdir)
pam_cgfs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version -shared pam_cgfs_la_LDFLAGS = $(AM_LDFLAGS) -module -avoid-version -shared
endif endif
endif
install-exec-local: install-libLTLIBRARIES install-exec-local: install-libLTLIBRARIES
mkdir -p $(DESTDIR)$(datadir)/lxc mkdir -p $(DESTDIR)$(datadir)/lxc
...@@ -327,6 +329,7 @@ install-exec-hook: ...@@ -327,6 +329,7 @@ install-exec-hook:
uninstall-local: uninstall-local:
$(RM) $(DESTDIR)$(libdir)/liblxc.so* $(RM) $(DESTDIR)$(libdir)/liblxc.so*
if ENABLE_PAM
if HAVE_PAM if HAVE_PAM
$(RM) $(DESTDIR)$(pamdir)/pam_cgfs.so* $(RM) $(DESTDIR)$(pamdir)/pam_cgfs.so*
...@@ -334,3 +337,4 @@ install-data-hook: install-pamLTLIBRARIES ...@@ -334,3 +337,4 @@ install-data-hook: install-pamLTLIBRARIES
$(RM) "$(DESTDIR)$(pamdir)/pam_cgfs.la" $(RM) "$(DESTDIR)$(pamdir)/pam_cgfs.la"
$(RM) "$(DESTDIR)$(pamdir)/pam_cgfs.a" $(RM) "$(DESTDIR)$(pamdir)/pam_cgfs.a"
endif endif
endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment