2
0
mirror of https://github.com/sudo-project/sudo.git synced 2025-08-22 01:49:11 +00:00

Only use --with-sssd-lib on Debian/Ubuntu w/ multipackage.

Use dpkg-query to determine the name of the audit package
for proper dependencies.
This commit is contained in:
Todd C. Miller 2015-07-08 18:13:39 -06:00
parent c3b4e4ce3e
commit 2d0699a070
2 changed files with 16 additions and 6 deletions

12
mkpkg
View File

@ -190,13 +190,18 @@ case "$osversion" in
configure_opts="${configure_opts}${configure_opts+$tab}--enable-admin-flag${tab}--without-lecture"
;;
esac
# Newer Debian uses arch-specific lib dirs
MULTIARCH=$(dpkg-architecture -qDEB_HOST_MULTIARCH 2>/dev/null)
# Note, must indent with tabs, not spaces due to IFS trickery
if test "$flavor" = "ldap"; then
configure_opts="${configure_opts}${configure_opts+$tab}--with-ldap
--with-ldap-conf-file=/etc/sudo-ldap.conf"
else
configure_opts="${configure_opts}${configure_opts+$tab}--with-sssd
--with-sssd-lib=/usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)"
configure_opts="${configure_opts}${configure_opts+$tab}--with-sssd"
if test -n "$MULTIARCH"; then
# SSSD backend needs to know where to find the sssd lib
configure_opts="${configure_opts}${configure_opts+$tab}--with-sssd-lib=/usr/lib/$MULTIARCH"
fi
fi
configure_opts="--prefix=/usr
--with-all-insults
@ -217,6 +222,9 @@ case "$osversion" in
--with-selinux
--with-linux-audit
$configure_opts"
# Use correct libaudit dependency
linux_audit=`dpkg-query -S /lib/$MULTIARCH/libaudit.so.[0-9]* | sed -e 's/:.*//' -e q`
PPVARS="${PPVARS}${PPVARS+$space}linux_audit=$linux_audit"
;;
macos*)
case "$osversion" in

10
sudo.pp
View File

@ -246,10 +246,11 @@ still allow people to get their work done."
fi
%depend [deb]
libc6, libpam0g, libpam-modules, zlib1g, libselinux1, libaudit1
libc6, libpam0g, libpam-modules, zlib1g, libselinux1
%fixup [deb]
# Add Conflicts, Replaces headers and add libldap depedency as needed.
DEPENDS="${linux_audit}"
if test -z "%{flavor}"; then
echo "Conflicts: sudo-ldap" >> %{pp_wrkdir}/%{name}/DEBIAN/control
echo "Replaces: sudo-ldap" >> %{pp_wrkdir}/%{name}/DEBIAN/control
@ -257,10 +258,11 @@ still allow people to get their work done."
echo "Conflicts: sudo" >> %{pp_wrkdir}/%{name}/DEBIAN/control
echo "Replaces: sudo" >> %{pp_wrkdir}/%{name}/DEBIAN/control
echo "Provides: sudo" >> %{pp_wrkdir}/%{name}/DEBIAN/control
cp -p %{pp_wrkdir}/%{name}/DEBIAN/control %{pp_wrkdir}/%{name}/DEBIAN/control.$$
sed 's/^\(Depends:.*\) *$/\1, libldap-2.4-2/' %{pp_wrkdir}/%{name}/DEBIAN/control.$$ > %{pp_wrkdir}/%{name}/DEBIAN/control
rm -f %{pp_wrkdir}/%{name}/DEBIAN/control.$$
DEPENDS="${DEPENDS}, libldap-2.4-2"
fi
cp -p %{pp_wrkdir}/%{name}/DEBIAN/control %{pp_wrkdir}/%{name}/DEBIAN/control.$$
sed "s/^\(Depends:.*\) *$/\1, ${DEPENDS}/" %{pp_wrkdir}/%{name}/DEBIAN/control.$$ > %{pp_wrkdir}/%{name}/DEBIAN/control
rm -f %{pp_wrkdir}/%{name}/DEBIAN/control.$$
echo "Homepage: http://www.sudo.ws/sudo/" >> %{pp_wrkdir}/%{name}/DEBIAN/control
echo "Bugs: http://www.sudo.ws/bugs/" >> %{pp_wrkdir}/%{name}/DEBIAN/control