On Mon, Feb 06, 2012 at 07:40:37PM +0100, Jakub Hrozek wrote:
> Sudo links against the library in libsss_sudo-devel, does not dlopen it.
> Therefore, the library must be in the default linker path.

Stephen nacked this on IRC and requested that the path to the sudo
library should be configurable. A new patch is attached.

From 21b69a296962106f9991181deabb3ab9975871e9 Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <[email protected]>
Date: Mon, 6 Feb 2012 19:24:17 +0100
Subject: [PATCH] Make sudo installation path configurable, install into
 libdir by default

---
 Makefile.am                           |    2 +-
 configure.ac                          |    1 +
 contrib/sssd.spec.in                  |    4 ++--
 src/conf_macros.m4                    |   14 ++++++++++++++
 src/sss_client/sudo/libsss_sudo.pc.in |    2 +-
 5 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 
c0b4c700040b7b4573bb81ecf9dca708e85ae31f..893e709463380b9a70b6ac19ed55c5571d1149ab
 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -42,7 +42,7 @@ logpath = @logpath@
 pubconfpath = @pubconfpath@
 pkgconfigdir = $(libdir)/pkgconfig
 krb5rcachedir = @krb5rcachedir@
-sudolibdir = @appmodpath@
+sudolibdir = @sudolibpath@
 
 UNICODE_LIBS=@UNICODE_LIBS@
 
diff --git a/configure.ac b/configure.ac
index 
c465c56c1f3c3df4f62089f0a622de46827b2b4d..edc71b7b9be9d1fc3f992d2a3c4451b6164d9b83
 100644
--- a/configure.ac
+++ b/configure.ac
@@ -95,6 +95,7 @@ WITH_LIBNL
 WITH_NOLOGIN_SHELL
 WITH_APP_LIBS
 WITH_SUDO
+WITH_SUDO_LIB_PATH
 WITH_AUTOFS
 
 m4_include([src/external/pkg.m4])
diff --git a/contrib/sssd.spec.in b/contrib/sssd.spec.in
index 
bd94f8bb1ce1a31192c31f6a1faca5b51b730e3b..2fbb44385695663b976623b9ddf8bf9625b8b3a9
 100644
--- a/contrib/sssd.spec.in
+++ b/contrib/sssd.spec.in
@@ -374,7 +374,7 @@ A utility library to allow communication between Autofs and 
SSSD
 %files -n libsss_sudo
 %defattr(-,root,root,-)
 %doc src/sss_client/COPYING src/sss_client/COPYING.LESSER
-%{_libdir}/sssd/modules/libsss_sudo.so.*
+%{_libdir}/libsss_sudo.so.*
 
 %files -n libsss_sudo-devel
 %if 0%{?fedora}
@@ -384,7 +384,7 @@ A utility library to allow communication between Autofs and 
SSSD
 %doc hbac_doc/html
 %endif
 %{_includedir}/sss_sudo.h
-%{_libdir}/sssd/modules/libsss_sudo.so
+%{_libdir}/libsss_sudo.so
 %{_libdir}/pkgconfig/libsss_sudo.pc
 
 %files -n libsss_autofs
diff --git a/src/conf_macros.m4 b/src/conf_macros.m4
index 
05500b27f9576252b588a4d901170b25cd02744d..b513c263071889245d480b2414ffc2d30787f453
 100644
--- a/src/conf_macros.m4
+++ b/src/conf_macros.m4
@@ -424,6 +424,20 @@ AC_DEFUN([WITH_SUDO],
     AM_CONDITIONAL([BUILD_SUDO], [test x"$with_sudo" = xyes])
   ])
 
+AC_DEFUN([WITH_SUDO_LIB_PATH],
+  [ AC_ARG_WITH([sudo-lib-path],
+                [AC_HELP_STRING([--with-sudo-lib-path=<path>],
+                                [Path to the sudo library [/usr/lib/]]
+                               )
+                ]
+               )
+    sudolibpath="${libdir}"
+    if test x"$with_sudo_lib_path" != x; then
+        sudolibpath=$with_sudo_lib_path
+    fi
+    AC_SUBST(sudolibpath)
+  ])
+
 AC_DEFUN([WITH_AUTOFS],
   [ AC_ARG_WITH([autofs],
                 [AC_HELP_STRING([--with-autofs],
diff --git a/src/sss_client/sudo/libsss_sudo.pc.in 
b/src/sss_client/sudo/libsss_sudo.pc.in
index 
ba67fa987c90e45b7ff30beaa6b874609118f0a3..a739dc42ab101fc9af7334fda0f00094524a2cae
 100644
--- a/src/sss_client/sudo/libsss_sudo.pc.in
+++ b/src/sss_client/sudo/libsss_sudo.pc.in
@@ -6,7 +6,7 @@ includedir=@includedir@
 Name: sss_sudo
 Description: A library to allow communication between SUDO and SSSD
 Version: @VERSION@
-Libs: -L@appmodpath@ -lsss_sudo
+Libs: -L@sudolibpath@ -lsss_sudo
 Cflags:
 URL: http://fedorahosted.org/sssd/
 
-- 
1.7.7.6

_______________________________________________
sssd-devel mailing list
[email protected]
https://fedorahosted.org/mailman/listinfo/sssd-devel

Reply via email to