diff options
author | Koen Kooi <koen@openembedded.org> | 2005-06-30 08:19:37 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-06-30 08:19:37 +0000 |
commit | c8e5702127e507e82e6f68a4b8c546803accea9d (patch) | |
tree | 00583491f40ecc640f2b28452af995e3a63a09d7 /packages/pam | |
parent | 87ec8ca4d2e2eb4d1c1e1e1a6b46a395d56805b9 (diff) |
import clean BK tree at cset 1.3670
Diffstat (limited to 'packages/pam')
-rw-r--r-- | packages/pam/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/pam/files/.mtn2git_empty | 0 | ||||
-rw-r--r-- | packages/pam/files/libpam-config.patch | 261 | ||||
-rw-r--r-- | packages/pam/files/libpam-make.patch | 10 | ||||
-rw-r--r-- | packages/pam/libpam_0.79.bb | 64 |
5 files changed, 335 insertions, 0 deletions
diff --git a/packages/pam/.mtn2git_empty b/packages/pam/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/pam/.mtn2git_empty diff --git a/packages/pam/files/.mtn2git_empty b/packages/pam/files/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/packages/pam/files/.mtn2git_empty diff --git a/packages/pam/files/libpam-config.patch b/packages/pam/files/libpam-config.patch index e69de29bb2..c1b7aef5e9 100644 --- a/packages/pam/files/libpam-config.patch +++ b/packages/pam/files/libpam-config.patch @@ -0,0 +1,261 @@ +--- Linux-PAM-0.79/.pc/ac-define.patch/configure.in 2005-03-30 06:32:52.000000000 -0800 ++++ Linux-PAM-0.79/configure.in 2005-04-15 00:14:58.514541928 -0700 +@@ -13,8 +13,8 @@ + + AC_SUBST(LIBPAM_VERSION_MAJOR) + AC_SUBST(LIBPAM_VERSION_MINOR) +-AC_DEFINE(LIBPAM_VERSION_MAJOR) +-AC_DEFINE(LIBPAM_VERSION_MINOR) ++AC_DEFINE_UNQUOTED(LIBPAM_VERSION_MAJOR, $LIBPAM_VERSION_MAJOR, [libpam major version number]) ++AC_DEFINE_UNQUOTED(LIBPAM_VERSION_MINOR, $LIBPAM_VERSION_MINOR, [libpam minor version number]) + + dnl + dnl By default, everything under PAM is installed under the root fs. +@@ -28,8 +28,6 @@ + dnl + LOCALSRCDIR=`/bin/pwd` ; AC_SUBST(LOCALSRCDIR) + LOCALOBJDIR=`/bin/pwd` ; AC_SUBST(LOCALOBJDIR) +-OS=`uname|sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` +-AC_SUBST(OS) + + dnl + dnl Rules needed for the following (hardcoded Linux defaults for now) +@@ -45,7 +43,16 @@ + USESONAME=yes ; AC_SUBST(USESONAME) + SOSWITCH="-Wl,-soname -Wl," ; AC_SUBST(SOSWITCH) + NEEDSONAME=yes ; AC_SUBST(NEEDSONAME) +-LDCONFIG=/sbin/ldconfig ; AC_SUBST(LDCONFIG) ++ ++dnl Cross compiling requires no ldconfig, as the library will not be used here. ++if test "$cross_compiling" = yes ; then ++ LDCONFIG=: ++else ++ LDCONFIG=/sbin/ldconfig ++fi ++AC_SUBST(LDCONFIG) ++MV=mv ++AC_SUBST(MV) + + dnl Checks for programs. + AC_PROG_CC +@@ -63,24 +70,24 @@ + dnl lots of debugging information goes to /tmp/pam-debug.log + AC_ARG_ENABLE(debug, + [ --enable-debug specify you are building with debugging on], +- WITH_DEBUG=yes ; AC_DEFINE(DEBUG) , WITH_DEBUG=no) ++ WITH_DEBUG=yes ; AC_DEFINE(DEBUG, 1, [lots of stuff gets written to /tmp/pam-debug.log]) , WITH_DEBUG=no) + AC_SUBST(WITH_DEBUG) + + AC_ARG_ENABLE(memory-debug, + [ --enable-memory-debug specify you want every malloc etc. call tracked], +- WITH_MEMORY_DEBUG=yes ; AC_DEFINE(MEMORY_DEBUG) , WITH_MEMORY_DEBUG=no) ++ WITH_MEMORY_DEBUG=yes ; AC_DEFINE(MEMORY_DEBUG, 1, [track all memory allocations and liberations]) , WITH_MEMORY_DEBUG=no) + AC_SUBST(WITH_MEMORY_DEBUG) + + dnl build specially named libraries (for debugging purposes) + AC_ARG_ENABLE(libdebug, + [ --enable-libdebug specify you are building debugging libraries], +- WITH_LIBDEBUG=yes ; AC_DEFINE(WITH_LIBDEBUG) , WITH_LIBDEBUG=no) ++ WITH_LIBDEBUG=yes ; AC_DEFINE(WITH_LIBDEBUG, 1, [build libraries with different names (suffixed with 'd')]) , WITH_LIBDEBUG=no) + AC_SUBST(WITH_LIBDEBUG) + + dnl have prelude support + AC_ARG_ENABLE(prelude, + [ --enable-prelude build prelude ids support], +- WITH_PRELUDE=yes ; AC_DEFINE(WITH_PRELUDE), WITH_PRELUDE=no) ++ WITH_PRELUDE=yes ; AC_DEFINE(WITH_PRELUDE, 1, [build prelude ids support]), WITH_PRELUDE=no) + AC_SUBST(WITH_PRELUDE) + + dnl packaging convenience +@@ -128,16 +135,16 @@ + + AC_ARG_ENABLE(pamlocking, + [ --enable-pamlocking configure libpam to observe a global authentication lock], +- WITH_PAMLOCKING=yes ; AC_DEFINE(PAM_LOCKING) , WITH_PAMLOCKING=no) ++ WITH_PAMLOCKING=yes ; AC_DEFINE(PAM_LOCKING, 1, [provide a global locking facility within libpam]) , WITH_PAMLOCKING=no) + AC_SUBST(WITH_PAMLOCKING) + + AC_ARG_ENABLE(uglyhack, + [ --enable-uglyhack configure libpam to try to honor old pam_strerror syntax], +- AC_DEFINE(UGLY_HACK_FOR_PRIOR_BEHAVIOR_SUPPORT)) ++ AC_DEFINE(UGLY_HACK_FOR_PRIOR_BEHAVIOR_SUPPORT, 1, [ugly hack to partially support old pam_strerror syntax])) + + AC_ARG_ENABLE(read-both-confs, + [ --enable-read-both-confs read both /etc/pam.d and /etc/pam.conf files], +- AC_DEFINE(PAM_READ_BOTH_CONFS)) ++ AC_DEFINE(PAM_READ_BOTH_CONFS, 1, [read both confs - read /etc/pam.d and /etc/pam.conf in serial])) + AC_SUBST(PAM_READ_BOTH_CONFS) + + AC_ARG_ENABLE(static-libpam, [ --enable-static-libpam build a libpam.a library], +@@ -182,7 +189,7 @@ + pam_mail_spool="\"/var/spool/mail\"", + pam_mail_spool="\"/var/spool/mail\"") + fi +-AC_DEFINE_UNQUOTED(PAM_PATH_MAILDIR, $pam_mail_spool) ++AC_DEFINE_UNQUOTED(PAM_PATH_MAILDIR, $pam_mail_spool, [location of the mail spool directory]) + + dnl Checks for libraries. + AC_CHECK_LIB(c, __libc_sched_setscheduler, PAM_NEEDS_LIBC=, PAM_NEEDS_LIBC=-lc) +@@ -200,47 +207,50 @@ + dnl At least on Solaris, the existing libcrack must be dynamic. + dnl Ought to introduce a check for this. + dnl +-AC_CHECK_LIB(crack, FascistCheck, HAVE_LIBCRACK=yes ; AC_DEFINE(HAVE_LIBCRACK), ++AC_CHECK_LIB(crack, FascistCheck, HAVE_LIBCRACK=yes ; AC_DEFINE(HAVE_LIBCRACK, 1, [we have libcrack available]), + HAVE_LIBCRACK=no) + AC_SUBST(HAVE_LIBCRACK) + +-AC_CHECK_LIB(crypt, crypt, HAVE_LIBCRYPT=yes ; AC_DEFINE(HAVE_LIBCRYPT), ++AC_CHECK_LIB(crypt, crypt, HAVE_LIBCRYPT=yes ; AC_DEFINE(HAVE_LIBCRYPT, 1, [we have libcrypt - its not part of libc (do we need both definitions?)]), + HAVE_LIBCRYPT=no) + AC_SUBST(HAVE_LIBCRYPT) +-AC_CHECK_LIB(util, logwtmp, HAVE_LIBUTIL=yes ; AC_DEFINE(HAVE_LIBUTIL), ++AC_CHECK_LIB(util, logwtmp, HAVE_LIBUTIL=yes ; AC_DEFINE(HAVE_LIBUTIL, 1, [we have libutil]), + HAVE_LIBUTIL=no) + AC_SUBST(HAVE_LIBUTIL) +-AC_CHECK_LIB(ndbm, dbm_store, HAVE_LIBNDBM=yes ; AC_DEFINE(HAVE_LIBNDBM), ++AC_CHECK_LIB(ndbm, dbm_store, HAVE_LIBNDBM=yes ; AC_DEFINE(HAVE_LIBNDBM, 1, [we have libndbm]), + HAVE_LIBNDBM=no) + AC_SUBST(HAVE_LIBNDBM) +-AC_CHECK_LIB(db, dbm_store, HAVE_LIBDB=yes ; AC_DEFINE(HAVE_LIBDB), ++AC_CHECK_LIB(db, dbm_store, HAVE_LIBDB=yes ; AC_DEFINE(HAVE_LIBDB, 1, [we have libdb]), + HAVE_LIBDB=no) + if test x$HAVE_LIBDB != xyes ; then + AC_CHECK_LIB(db, db_create, HAVE_LIBDB=yes ; AC_DEFINE(HAVE_LIBDB), + HAVE_LIBDB=no) + fi + AC_SUBST(HAVE_LIBDB) +-AC_CHECK_LIB(fl, yylex, yyterminate, HAVE_LIBFL=yes ; AC_DEFINE(HAVE_LIBFL), ++AC_CHECK_LIB(fl, yylex, yyterminate, HAVE_LIBFL=yes ; AC_DEFINE(HAVE_LIBFL, 1, [have libfl (Flex)]), + HAVE_LIBFL=no) + AC_SUBST(HAVE_LIBFL) +-AC_CHECK_LIB(nsl, yp_maplist, HAVE_LIBNSL=yes ; AC_DEFINE(HAVE_LIBNSL), ++AC_CHECK_LIB(nsl, yp_maplist, HAVE_LIBNSL=yes ; AC_DEFINE(HAVE_LIBNSL, 1, [have libnsl - instead of libc support]), + HAVE_LIBNSL=no) + AC_SUBST(HAVE_LIBNSL) + + if test $HAVE_LIBNSL = yes ; then + pwdblibs="$pwdblibs -lnsl" + fi +-AC_CHECK_LIB(pwdb, pwdb_db_name, HAVE_LIBPWDB=yes ; AC_DEFINE(HAVE_LIBPWDB), ++AC_CHECK_LIB(pwdb, pwdb_db_name, HAVE_LIBPWDB=yes ; AC_DEFINE(HAVE_LIBPWDB, 1, [have libpwdb - don't expect this to be important for much longer]), + HAVE_LIBPWDB=no,$pwdblibs) + AC_SUBST(HAVE_LIBPWDB) + unset pwdblibs + +-AC_CHECK_LIB(fl, yywrap, HAVE_LIBFLEX=yes ; AC_DEFINE(HAVE_LIBFLEX), ++AC_CHECK_LIB(fl, yywrap, HAVE_LIBFLEX=yes ; AC_DEFINE(HAVE_LIBFLEX, 1, [have libflex]), + HAVE_LIBFLEX=no) + AC_SUBST(HAVE_LIBFLEX) +-AC_CHECK_LIB(l, yywrap, HAVE_LIBLEX=yes ; AC_DEFINE(HAVE_LIBLEX), ++AC_CHECK_LIB(l, yywrap, HAVE_LIBLEX=yes ; AC_DEFINE(HAVE_LIBLEX, 1, [have liblex]), + HAVE_LIBLEX=no) + AC_SUBST(HAVE_LIBLEX) ++AC_CHECK_LIB(cap, capget, HAVE_LIBCAP=yes ; AC_DEFINE(HAVE_LIBCAP, 1, [have libcap (POSIX 1003.e capabilities)]), ++ HAVE_LIBCAP=no) ++AC_SUBST(HAVE_LIBCAP) + + dnl Checks for header files. + AC_HEADER_DIRENT +@@ -308,44 +318,38 @@ + -Wnested-externs -Winline -Wshadow" + + if test "$GCC" = yes; then +- CC=gcc ; AC_SUBST(CC) + ### May need per-OS attention + ### Example: -D_POSIX_SOURCE: needed on Linux but harms Solaris. +- case $OS in +- linux) ++ case "$target_alias" in ++ *linux) ++ OS="linux" + OS_CFLAGS= + LD_D="$CC -shared $LDFLAGS" + WARNINGS="$GCC_WARNINGS" + PIC="-fPIC" + DYNTYPE=so +- LD=gcc + LD_L="$CC -shared $LDFLAGS" +- RANLIB=: +- STRIP=strip + CC_STATIC="-Xlinker -export-dynamic" + ;; +- sunos) ++ *sunos) ++ OS="sunos" + OS_CFLAGS="-ansi -pedantic" + LD_D="gcc -shared -Xlinker -x" + WARNINGS="$GCC_WARNINGS" + PIC="-fPIC" + DYNTYPE=so +- LD=ld + LD_L="$LD -x -shared" +- RANLIB=ranlib +- STRIP=strip + CC_STATIC="-Xlinker -export-dynamic" + ;; +- aix) ++ *aix) ++ OS="aix" + OS_CFLAGS="" + DYNTYPE=lo +- LD=ld + LD_L=ld -bexpall -bM:SRE -bnoentry + LD_D="$LD_L" +- RANLIB=ranlib +- STRIP=strip + ;; + *) ++ OS=`uname|sed -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` + OS_CFLAGS="" + ;; + esac +@@ -354,34 +358,31 @@ + ### Non-gcc needs attention on per-OS basis + ### + case "$OS" in +- darwin) ++ *darwin) ++ OS="darwin" + # add some stuff here (see sourceforge bug 534205) + # DOCDIR=/System/Documentation/Administration/Libraries/PAM + # MANDIR=/usr/share/man + ;; +- solaris) ++ *solaris) + ### Support for Solaris-C ++ OS="solaris" + OS_CFLAGS="" + WARNINGS="" + PIC="-K pic" +- LD=ld + LD_D="cc -z text -G -R." + LD_L="$LD_D" +- RANLIB=ranlib +- STRIP=strip + CC_STATIC= + ;; +- irix*) ++ *irix*) ++ OS="irix" + OSRELEASE=`uname -r` + if test "$OSRELEASE" = 6.5; then + OS_CFLAGS="" + WARNINGS="-fullwarn" + PIC= #PIC code is default for IRIX +- LD="cc -shared" # modules friendly approach + LD_D="cc -shared" + LD_L="ld -G -z redlocsym" +- RANLIB=echo +- STRIP=strip + CC_STATIC= + else + echo "IRIX prior to 6.5 not allowed for" +@@ -394,6 +395,7 @@ + esac + fi + ++AC_SUBST(OS) + AC_SUBST(DYNTYPE) + AC_SUBST(OS_CFLAGS) + AC_SUBST(WARNINGS) diff --git a/packages/pam/files/libpam-make.patch b/packages/pam/files/libpam-make.patch index e69de29bb2..4991231aa5 100644 --- a/packages/pam/files/libpam-make.patch +++ b/packages/pam/files/libpam-make.patch @@ -0,0 +1,10 @@ +--- Linux-PAM-0.79/Make.Rules.in.orig 2005-04-15 01:28:45.695508120 -0700 ++++ Linux-PAM-0.79/Make.Rules.in 2005-04-15 01:28:10.274892872 -0700 +@@ -122,3 +122,7 @@ + ifdef DYNAMIC + CFLAGS += $(PIC) + endif ++ ++ifdef DESTDIR ++FAKEROOT = $(DESTDIR) ++endif diff --git a/packages/pam/libpam_0.79.bb b/packages/pam/libpam_0.79.bb index e69de29bb2..8907d9762a 100644 --- a/packages/pam/libpam_0.79.bb +++ b/packages/pam/libpam_0.79.bb @@ -0,0 +1,64 @@ +# PAM authentication library for Linux - Linux-PAM +# +# NOTE: this is a library with plug-in modules, at present all +# the modules are built and installed into the main libpam +# ipkg. This causes lots of problems (e.g. it is not possible +# to build on uClibC) so *do not* rely on this behaviour - +# assume the modules will be moved to individual ipks (like +# the kernel modules.) +# +DESCRIPTION = "\ +PAM authentication library for Linux. \ +Linux-PAM (Pluggable Authentication Modules for Linux) is a \ +library that enables the local system administrator to choose \ +how individual applications authenticate users. For an \ +overview of the Linux-PAM library see the Linux-PAM System \ +Administrators' Guide." +HOMEPAGE = "http://www.kernel.org/pub/linux/libs/pam" +MAINTAINER = "John Bowler <jbowler@acm.org>" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPL-2" + +# The project is actually called Linux-PAM but that gives +# a bad OE package name because of the upper case characters +pn = "Linux-PAM" +p = "${pn}-${PV}" +S = "${WORKDIR}/${p}" + +SRC_URI = "ftp://ftp.kernel.org/pub/linux/libs/pam/pre/library/${p}.tar.bz2" + +# the patches are necessary to get the autoreconf and cross build +# to work correctly +SRC_URI += " file://libpam-config.patch;patch=1" +# The Makefile uses 'FAKEROOT' not DESTDIR. +SRC_URI += " file://libpam-make.patch;patch=1" + +inherit autotools + +# EXTRA_OECONF += " --enable-static-libpam" + +LEAD_SONAME = "libpam.so.*" + +# This is crude - the modules maybe should each have independent ipks +FILES_${PN} += "/usr/lib/security/pam_*.so /usr/lib/security/pam_filter/*" + +do_stage() { + autotools_stage_includes + for lib in libpam libpamc libpam_misc + do + oe_libinstall -so -C "$lib" "$lib" ${STAGING_LIBDIR} + done +} + +# An attempt to build on uclibc will fail, causing annoyance, +# so force the package to be skipped here (this will cause a +# 'nothing provides' error) +#NOTE: this can be fixed, but it means hacking the modules so +# that those which use YP don't get built on uClibC, this looks +# like a big patch... +python () { + os = bb.data.getVar("TARGET_OS", d, 1) + if os == "linux-uclibc": + raise bb.parse.SkipPackage("Some PAM modules require rpcsvc/yp.h, uClibC does not provide this") +} |