|
|
| version 1.1.1.3, 2012/10/09 09:29:52 | version 1.1.1.6, 2014/06/15 16:12:53 |
|---|---|
| Line 1 | Line 1 |
| #!/bin/sh | #!/bin/sh |
| # | # |
| # Copyright (c) 2010-2013 Todd C. Miller <Todd.Miller@courtesan.com> | |
| # | |
| # Permission to use, copy, modify, and distribute this software for any | |
| # purpose with or without fee is hereby granted, provided that the above | |
| # copyright notice and this permission notice appear in all copies. | |
| # | |
| # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
| # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
| # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
| # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
| # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
| # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
| # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
| # | |
| # Build a binary package using polypkg | # Build a binary package using polypkg |
| # Usage: mkpkg [--debug] [--flavor flavor] [--platform platform] [--osversion ver] | # Usage: mkpkg [--debug] [--flavor flavor] [--platform platform] [--osversion ver] |
| # | # |
| Line 117 case "$osversion" in | Line 131 case "$osversion" in |
| configure_opts="${configure_opts}${configure_opts+$tab}--with-pam-login" | configure_opts="${configure_opts}${configure_opts+$tab}--with-pam-login" |
| PPVARS="${PPVARS}${PPVARS+$space}linux_audit=1.4.0" | PPVARS="${PPVARS}${PPVARS+$space}linux_audit=1.4.0" |
| fi | fi |
| if [ $osrelease -ge 60 ]; then | |
| # RHEL 6 and above builds sudo with SSSD support | |
| configure_opts="${configure_opts}${configure_opts+$tab}--with-sssd" | |
| fi | |
| # Note, must indent with tabs, not spaces due to IFS trickery | # Note, must indent with tabs, not spaces due to IFS trickery |
| configure_opts="--prefix=/usr | configure_opts="--prefix=/usr |
| --with-logging=syslog | --with-logging=syslog |
| Line 129 case "$osversion" in | Line 147 case "$osversion" in |
| --with-tty-tickets | --with-tty-tickets |
| --with-ldap | --with-ldap |
| --with-passprompt=[sudo] password for %p: | --with-passprompt=[sudo] password for %p: |
| --with-sendmail=/usr/sbin/sendmail | |
| $configure_opts" | $configure_opts" |
| ;; | ;; |
| sles*) | sles*) |
| Line 147 case "$osversion" in | Line 166 case "$osversion" in |
| # Note, must indent with tabs, not spaces due to IFS trickery | # Note, must indent with tabs, not spaces due to IFS trickery |
| # XXX - SuSE uses secure path but only for env_reset | # XXX - SuSE uses secure path but only for env_reset |
| configure_opts="--prefix=/usr | configure_opts="--prefix=/usr |
| --libexecdir=/usr/$libexec/sudo | --libexecdir=/usr/$libexec |
| --with-logging=syslog | --with-logging=syslog |
| --with-logfac=auth | --with-logfac=auth |
| --with-all-insults | --with-all-insults |
| Line 160 case "$osversion" in | Line 179 case "$osversion" in |
| --with-ldap | --with-ldap |
| --with-env-editor | --with-env-editor |
| --with-passprompt=%p\'s password: | --with-passprompt=%p\'s password: |
| --with-sendmail=/usr/sbin/sendmail | |
| $configure_opts" | $configure_opts" |
| make_opts='docdir=$(datarootdir)/doc/packages/$(PACKAGE_TARNAME)' | make_opts='docdir=$(datarootdir)/doc/packages/$(PACKAGE_TARNAME)' |
| Line 192 case "$osversion" in | Line 212 case "$osversion" in |
| --with-timeout=15 | --with-timeout=15 |
| --with-password-timeout=0 | --with-password-timeout=0 |
| --with-passprompt=[sudo] password for %p: | --with-passprompt=[sudo] password for %p: |
| --with-timedir=/var/lib/sudo | |
| --disable-root-mailer | --disable-root-mailer |
| --disable-setresuid | |
| --with-sendmail=/usr/sbin/sendmail | --with-sendmail=/usr/sbin/sendmail |
| --mandir=/usr/share/man | --mandir=/usr/share/man |
| --libexecdir=/usr/lib/sudo | --libexecdir=/usr/lib |
| --with-secure-path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin | --with-secure-path=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin |
| $configure_opts" | $configure_opts" |
| ;; | ;; |
| Line 210 case "$osversion" in | Line 228 case "$osversion" in |
| esac | esac |
| if test "${osversion}" != "`$top_srcdir/pp --probe`"; then | if test "${osversion}" != "`$top_srcdir/pp --probe`"; then |
| sdkvers=`echo "${osversion}" | sed 's/^macos\([0-9][0-9]\)\([0-9]*\)-.*$/\1.\2/'` | sdkvers=`echo "${osversion}" | sed 's/^macos\([0-9][0-9]\)\([0-9]*\)-.*$/\1.\2/'` |
| SDK_FLAGS="-isysroot /Developer/SDKs/MacOSX${sdkvers}.sdk -mmacosx-version-min=${sdkvers}" | # Newer Xcode puts /Developer under the app Contents dir. |
| SDK_DIR="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs" | |
| if test -d "${SDK_DIR}/MacOSX${sdkvers}.sdk"; then | |
| SDK_DIR="${SDK_DIR}/MacOSX${sdkvers}.sdk" | |
| elif test -d "/Developer/SDKs/MacOSX${sdkvers}.sdk"; then | |
| SDK_DIR="/Developer/SDKs/MacOSX${sdkvers}.sdk" | |
| fi | |
| SDK_FLAGS="-isysroot ${SDK_DIR} -mmacosx-version-min=${sdkvers}" | |
| fi | fi |
| export CFLAGS="-O2 -g $ARCH_FLAGS $SDK_FLAGS" | export CFLAGS="-O2 -g $ARCH_FLAGS $SDK_FLAGS" |
| export LDFLAGS="$ARCH_FLAGS $SDK_FLAGS" | export LDFLAGS="$ARCH_FLAGS $SDK_FLAGS" |
| # Note, must indent with tabs, not spaces due to IFS trickery | # Note, must indent with tabs, not spaces due to IFS trickery |
| configure_opts="--with-pam | configure_opts="--with-pam |
| --with-bsm-audit | |
| --without-tty-tickets | --without-tty-tickets |
| --enable-zlib=system | --enable-zlib=system |
| --with-ldap | --with-ldap |
| Line 227 case "$osversion" in | Line 253 case "$osversion" in |
| $configure_opts" | $configure_opts" |
| ;; | ;; |
| aix*) | aix*) |
| # Use -gxcoff with gcc instead of -g for dbx-style debugging symbols. | |
| if test -z "$CC" && gcc -v >/dev/null 2>&1; then | |
| CFLAGS=-gxcoff; export CFLAGS | |
| fi | |
| # Note, must indent with tabs, not spaces due to IFS trickery | # Note, must indent with tabs, not spaces due to IFS trickery |
| # Note: we include our own zlib instead of relying on the | # Note: we include our own zlib instead of relying on the |
| # AIX freeware version being installed. | # AIX freeware version being installed. |
| Line 240 case "$osversion" in | Line 270 case "$osversion" in |
| --with-env-editor | --with-env-editor |
| --enable-zlib=builtin | --enable-zlib=builtin |
| --disable-nls | --disable-nls |
| --with-sendmail=/usr/sbin/sendmail | |
| $configure_opts" | $configure_opts" |
| PPVARS="${PPVARS}${PPVARS+$space}aix_freeware=true" | PPVARS="${PPVARS}${PPVARS+$space}aix_freeware=true" |
| ;; | ;; |
| Line 247 case "$osversion" in | Line 278 case "$osversion" in |
| # For Solaris, add project support and use let configure choose zlib. | # For Solaris, add project support and use let configure choose zlib. |
| # For all others, use the builtin zlib and disable NLS support. | # For all others, use the builtin zlib and disable NLS support. |
| case "$osversion" in | case "$osversion" in |
| sol*) configure_opts="${configure_opts}${configure_opts+$tab}--with-project";; | sol*) |
| *) configure_opts="${configure_opts}${configure_opts+$tab}--enable-zlib=builtin${tab}--disable-nls";; | configure_opts="${configure_opts}${configure_opts+$tab}--with-project" |
| if [ $osrelease -ge 11 ]; then | |
| configure_opts="${configure_opts}${configure_opts+$tab}--with-bsm-audit" | |
| fi | |
| ;; | |
| *) | |
| configure_opts="${configure_opts}${configure_opts+$tab}--enable-zlib=builtin${tab}--disable-nls" | |
| ;; | |
| esac | esac |
| if test "$flavor" = "ldap"; then | if test "$flavor" = "ldap"; then |
| configure_opts="${configure_opts}${configure_opts+$tab}--with-ldap" | configure_opts="${configure_opts}${configure_opts+$tab}--with-ldap" |