]> granicus.if.org Git - sudo/commitdiff
Simplify rpm linux distro settings
authorTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 14 Jul 2010 19:54:09 +0000 (15:54 -0400)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 14 Jul 2010 19:54:09 +0000 (15:54 -0400)
mkpkg
sudo.pp

diff --git a/mkpkg b/mkpkg
index d48dc77cb80e536e00b98cff6a734c3453eab789..c36ee94029fd7b5167adeb6ea139517da17dab60 100755 (executable)
--- a/mkpkg
+++ b/mkpkg
@@ -27,27 +27,19 @@ esac
 # Choose configure options by platform.
 # We use the same configure options as vendor packages when possible.
 case "$platform" in
-    centos4.*|rhel4.*)
-       # Note, must indent with tabs, not spaces due to IFS trickery
+    centos*|rhel*)
        prefix=/usr
-       configure_opts="
-               --prefix=$prefix
-               --with-logging=syslog
-               --with-logfac=authpriv
-               --with-pam
-               --with-pam-login
-               --with-editor=/bin/vi
-               --with-env-editor
-               --with-ignore-dot
-               --with-tty-tickets
-               --with-ldap
-               --with-selinux
-               --with-passprompt=[sudo] password for %p: "
-       ;;
-    centos5.*|rhel5.*)
+       case "$platform" in
+           centos[0-4].*|rhel[0-4].*)
+               ;;
+           *)
+               # RHEL 5 and up build pies and have audit support
+               export CFLAGS="$F_PIE" LDFLAGS="-pie"
+               configure_opts="--with-linux-audit"
+               ;;
+       esac
        # Note, must indent with tabs, not spaces due to IFS trickery
-       prefix=/usr
-       configure_opts="
+       configure_opts="$configure_opts
                --prefix=$prefix
                --with-logging=syslog
                --with-logfac=authpriv
@@ -59,64 +51,23 @@ case "$platform" in
                --with-tty-tickets
                --with-ldap
                --with-selinux
-               --with-linux-audit
                --with-passprompt=[sudo] password for %p: "
-       export CFLAGS="$F_PIE" LDFLAGS="-pie"
-       ;;
-    sles9.*)
-       prefix=/usr
-       # SuSE doesn't have /usr/libexec
-       case "$platform" in
-           *64*)       libexec=lib64;;
-           *)          libexec=lib;;
-       esac
-       # Note, must indent with tabs, not spaces due to IFS trickery
-       configure_opts="
-               --prefix=$prefix
-               --libexecdir=$prefix/$libexec/sudo
-               --with-logging=syslog
-               --with-logfac=auth
-               --with-all-insults
-               --with-ignore-dot
-               --with-tty-tickets
-               --enable-shell-sets-home
-               --with-sudoers-mode=0440
-               --with-pam
-               --with-ldap
-               --with-env-editor
-               --with-passprompt=%p\'s password: "
-
-       make_opts='docdir=$(datarootdir)/doc/packages/$(PACKAGE_TARNAME)'
        ;;
-    sles10.*)
+    sles*)
        prefix=/usr
-       # SuSE doesn't have /usr/libexec
        case "$platform" in
-           *64*)       libexec=lib64;;
-           *)          libexec=lib;;
+           sles[0-9].*)
+               ;;
+           sles10.*)
+               # SLES 10 and higher build pies
+               export CFLAGS="$F_PIE" LDFLAGS="-pie"
+               ;;
+           *)
+               # SLES 11 and higher has SELinux too
+               export CFLAGS="$F_PIE" LDFLAGS="-pie"
+               configure_opts="--with-selinux"
+               ;;
        esac
-       # Note, must indent with tabs, not spaces due to IFS trickery
-       # XXX - SuSE uses secure path but only for env_reset
-       configure_opts="
-               --prefix=$prefix
-               --libexecdir=$prefix/$libexec/sudo
-               --with-logging=syslog
-               --with-logfac=auth
-               --with-all-insults
-               --with-ignore-dot
-               --with-tty-tickets
-               --enable-shell-sets-home
-               --with-sudoers-mode=0440
-               --with-pam
-               --with-ldap
-               --with-env-editor
-               --with-passprompt=%p\'s password: "
-
-       make_opts='docdir=$(datarootdir)/doc/packages/$(PACKAGE_TARNAME)'
-       export CFLAGS="$F_PIE" LDFLAGS="-pie"
-       ;;
-    sles11.*)
-       prefix=/usr
        # SuSE doesn't have /usr/libexec
        case "$platform" in
            *64*)       libexec=lib64;;
@@ -124,10 +75,9 @@ case "$platform" in
        esac
        # Note, must indent with tabs, not spaces due to IFS trickery
        # XXX - SuSE uses secure path but only for env_reset
-       configure_opts="
+       configure_opts="$configure_opts
                --prefix=$prefix
                --libexecdir=$prefix/$libexec/sudo
-               --with-selinux
                --with-logging=syslog
                --with-logfac=auth
                --with-all-insults
@@ -141,11 +91,8 @@ case "$platform" in
                --with-passprompt=%p\'s password: "
 
        make_opts='docdir=$(datarootdir)/doc/packages/$(PACKAGE_TARNAME)'
-       export CFLAGS="$F_PIE" LDFLAGS="-pie"
        ;;
-    deb[456].*)
-       # XXX - create sudo group like debian does
-       #       debian now has a %sudo entry in its sample sudoers
+    deb.*)
        # Note, must indent with tabs, not spaces due to IFS trickery
        if test "${SUDO_FLAVOR:-vanilla}" == "ldap"; then
            configure_opts="--with-ldap
diff --git a/sudo.pp b/sudo.pp
index 14de2f2b0109d4c728f47e388ae6220d9032fca0..16489939108308248e24fac20db1c12587e80de7 100644 (file)
--- a/sudo.pp
+++ b/sudo.pp
@@ -47,7 +47,7 @@ still allow people to get their work done."
 
   # Choose the correct PAM file by distro
   case "$pp_rpm_distro" in
-    centos4.*|rhel4.*)
+    centos[0-4].*|rhel[0-4].*)
         mkdir -p ${pp_destdir}/etc/pam.d
        cat > ${pp_destdir}/etc/pam.d/sudo <<-EOF
        #%PAM-1.0
@@ -57,7 +57,7 @@ still allow people to get their work done."
        session    required     pam_limits.so
        EOF
        ;;
-    centos5.*|rhel5.*)
+    centos*|rhel*)
         mkdir -p ${pp_destdir}/etc/pam.d
        cat > ${pp_destdir}/etc/pam.d/sudo <<-EOF
        #%PAM-1.0
@@ -84,7 +84,7 @@ still allow people to get their work done."
        session  required       pam_limits.so
        EOF
        ;;
-    sles10.*|sles11.*)
+    sles*)
         mkdir -p ${pp_destdir}/etc/pam.d
        cat > ${pp_destdir}/etc/pam.d/sudo <<-EOF
        #%PAM-1.0
@@ -100,7 +100,7 @@ still allow people to get their work done."
 %set [deb]
   # Choose the correct PAM file by distro
   case "$pp_deb_distro" in
-    deb[456].*)
+    deb*)
         mkdir -p ${pp_destdir}/etc/pam.d
        cat > ${pp_destdir}/etc/pam.d/sudo <<-EOF
        #%PAM-1.0