mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-05-09 17:59:26 +00:00
cyrus-sasl: several fixes
1. Fix hardcoded libdir
2. configure cyrus-sasl based on PACKAGECONFIG
3. create user by inherit useradd
4. add -fPIC to CFLAG to fix the below building failure:
ld: ../sasldb/.libs/libsasldb.a(db_berkeley.o): relocation R_X86_64_32S against
`.rodata' can not be used when making a shared object; recompile with -fPIC
../sasldb/.libs/libsasldb.a(db_berkeley.o): could not read symbols: Bad value
The cause is that libsasldb.a is built twice since {.c.o: and .c.lo} co-exist, one
with -fPIC, other without -fPIC. if no -fPIC library follows behind, this error
will appear. so we enable -fPIC no matter whatever objects are built.
5. The version of db in oe-core is 5.0
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Joe MacDonald <joe.macdonald@windriver.com>
This commit is contained in:
@@ -5,21 +5,39 @@ LICENSE = "BSD"
|
|||||||
LIC_FILES_CHKSUM = "file://COPYING;md5=3f55e0974e3d6db00ca6f57f2d206396"
|
LIC_FILES_CHKSUM = "file://COPYING;md5=3f55e0974e3d6db00ca6f57f2d206396"
|
||||||
|
|
||||||
SRC_URI = "ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${PV}.tar.gz \
|
SRC_URI = "ftp://ftp.cyrusimap.org/cyrus-sasl/cyrus-sasl-${PV}.tar.gz \
|
||||||
file://avoid-to-call-AC_TRY_RUN.patch"
|
file://avoid-to-call-AC_TRY_RUN.patch \
|
||||||
|
file://Fix-hardcoded-libdir.patch"
|
||||||
|
|
||||||
inherit autotools pkgconfig
|
inherit autotools pkgconfig useradd
|
||||||
|
|
||||||
EXTRA_OECONF += "--with-dblib=berkeley \
|
EXTRA_OECONF += "--with-dblib=berkeley \
|
||||||
--with-bdb-libdir=${STAGING_LIBDIR} \
|
--with-bdb-libdir=${STAGING_LIBDIR} \
|
||||||
--with-bdb-incdir=${STAGING_INCDIR} \
|
--with-bdb-incdir=${STAGING_INCDIR} \
|
||||||
--without-pam --without-opie --without-des \
|
--with-bdb=db-5.3 \
|
||||||
|
--with-plugindir="${libdir}/sasl2/" \
|
||||||
andrew_cv_runpath_switch=none"
|
andrew_cv_runpath_switch=none"
|
||||||
|
|
||||||
PACKAGECONFIG ??= ""
|
PACKAGECONFIG ??= "ntlm \
|
||||||
|
${@base_contains('DISTRO_FEATURES', 'ldap', 'ldap', '', d)} \
|
||||||
|
${@base_contains('DISTRO_FEATURES', 'pam', 'pam', '', d)} \
|
||||||
|
"
|
||||||
PACKAGECONFIG[gssapi] = "--enable-gssapi=yes,--enable-gssapi=no,krb5,"
|
PACKAGECONFIG[gssapi] = "--enable-gssapi=yes,--enable-gssapi=no,krb5,"
|
||||||
|
PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,"
|
||||||
|
PACKAGECONFIG[opie] = "--with-opie,--without-opie,opie,"
|
||||||
|
PACKAGECONFIG[des] = "--with-des,--without-des,,"
|
||||||
|
PACKAGECONFIG[ldap] = "--with-ldap=${STAGING_LIBDIR} --enable-ldapdb,--without-ldap --disable-ldapdb,openldap,"
|
||||||
|
PACKAGECONFIG[ntlm] = "--with-ntlm,--without-ntlm,,"
|
||||||
|
|
||||||
|
CFLAGS += "-fPIC"
|
||||||
|
|
||||||
do_configure_prepend () {
|
do_configure_prepend () {
|
||||||
rm -f acinclude.m4 config/libtool.m4
|
rm -f acinclude.m4 config/libtool.m4
|
||||||
|
|
||||||
|
# make it be able to work with db 5.0 version
|
||||||
|
local sed_files="sasldb/db_berkeley.c utils/dbconverter-2.c"
|
||||||
|
for sed_file in $sed_files; do
|
||||||
|
sed -i 's#DB_VERSION_MAJOR == 4.*#(&) || DB_VERSION_MAJOR == 5#' $sed_file
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
do_compile_prepend () {
|
do_compile_prepend () {
|
||||||
@@ -29,8 +47,11 @@ do_compile_prepend () {
|
|||||||
cd ..
|
cd ..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
USERADD_PACKAGES = "${PN}-bin"
|
||||||
|
GROUPADD_PARAM_${PN}-bin = "--system mail"
|
||||||
|
USERADD_PARAM_${PN}-bin = "--system --home=/var/spool/mail -g mail cyrus"
|
||||||
|
|
||||||
pkg_postinst_${PN}-bin () {
|
pkg_postinst_${PN}-bin () {
|
||||||
grep cyrus /etc/passwd || adduser --disabled-password --home=/var/spool/mail --ingroup mail -g "Cyrus sasl" cyrus
|
|
||||||
echo "cyrus" | saslpasswd2 -p -c cyrus
|
echo "cyrus" | saslpasswd2 -p -c cyrus
|
||||||
chgrp mail /etc/sasldb2
|
chgrp mail /etc/sasldb2
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,25 @@
|
|||||||
|
Fix hardcoded libdir.
|
||||||
|
|
||||||
|
Upstream-Status: Pending
|
||||||
|
|
||||||
|
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
|
||||||
|
---
|
||||||
|
plugins/Makefile.am | 2 +-
|
||||||
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
|
||||||
|
index b00915f..25262a1 100644
|
||||||
|
--- a/plugins/Makefile.am
|
||||||
|
+++ b/plugins/Makefile.am
|
||||||
|
@@ -62,7 +62,7 @@ plugindir = @plugindir@
|
||||||
|
|
||||||
|
common_sources = plugin_common.c plugin_common.h
|
||||||
|
|
||||||
|
-sasldir = $(prefix)/lib/sasl2
|
||||||
|
+sasldir = $(libdir)/sasl2
|
||||||
|
sasl_LTLIBRARIES = @SASL_MECHS@
|
||||||
|
EXTRA_LTLIBRARIES = libplain.la libanonymous.la libkerberos4.la libcrammd5.la \
|
||||||
|
libgs2.la libgssapiv2.la libdigestmd5.la liblogin.la libsrp.la libotp.la \
|
||||||
|
--
|
||||||
|
1.7.4.1
|
||||||
|
|
||||||
Reference in New Issue
Block a user