pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/security/cyrus-sasl2 There is no way for libtool to ge...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b61de01f0dde
branches:  trunk
changeset: 479148:b61de01f0dde
user:      jlam <jlam%pkgsrc.org@localhost>
date:      Fri Aug 06 06:36:18 2004 +0000

description:
There is no way for libtool to generate a convenience library that
can be used to create shared libraries _and_ be linked into a statically
linked program.  Instead of trying to hack libtool to do this, just
accept the fact and do what you want another way!

Remove the ugly hack in sasldb/Makefile.am that regenerated the static
archive from the non-PIC object files.  While this was fine for linking
into programs, it breaks things when you link this into the sasldb
plugin.  Leaving it the other way, where the static archive from the
PIC object files, is also unacceptable because there are potential
problems on some platforms when linking an archive of of PIC objects
into an executable.  The solution: let the static archive contain PIC
objects and be used to link into the sasldb plugin, but for the programs
in the utils directory, explicitly add the non-PIC object files listed
in $(SASL_DB_BACKEND_STATIC) to the files used to generate the programs.
This is easy because SASL_DB_BACKEND_STATIC is already generated
properly by config/sasldb.m4, so make use if it.

This should fix problems with using Cyrus SASL on non-i386 platforms
noted in PR pkg/26492 by Matt Dainty.  Bump the PKGREVISION.

diffstat:

 security/cyrus-sasl2/Makefile         |   4 +-
 security/cyrus-sasl2/distinfo         |   6 +++-
 security/cyrus-sasl2/patches/patch-ap |  25 +++++++++++++++
 security/cyrus-sasl2/patches/patch-aq |  55 +++++++++++++++++++++++++++++++++++
 security/cyrus-sasl2/patches/patch-ar |  19 ++++++++++++
 security/cyrus-sasl2/patches/patch-as |  39 ++++++++++++++++++++++++
 6 files changed, 145 insertions(+), 3 deletions(-)

diffs (185 lines):

diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/Makefile
--- a/security/cyrus-sasl2/Makefile     Fri Aug 06 03:14:22 2004 +0000
+++ b/security/cyrus-sasl2/Makefile     Fri Aug 06 06:36:18 2004 +0000
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.35 2004/08/05 03:04:34 jlam Exp $
+# $NetBSD: Makefile,v 1.36 2004/08/06 06:36:18 jlam Exp $
 
 .include "Makefile.common"
 
-PKGREVISION=   # empty
+PKGREVISION=   1
 SVR4_PKGNAME=  csasl
 COMMENT=       Simple Authentication and Security Layer
 
diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/distinfo
--- a/security/cyrus-sasl2/distinfo     Fri Aug 06 03:14:22 2004 +0000
+++ b/security/cyrus-sasl2/distinfo     Fri Aug 06 06:36:18 2004 +0000
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.20 2004/08/04 19:41:07 jlam Exp $
+$NetBSD: distinfo,v 1.21 2004/08/06 06:36:18 jlam Exp $
 
 SHA1 (cyrus-sasl-2.1.19.tar.gz) = 9512d70ecea33b9d44e69d185a323a0f7b133705
 Size (cyrus-sasl-2.1.19.tar.gz) = 1537350 bytes
@@ -15,3 +15,7 @@
 SHA1 (patch-am) = f0bd15b4f55e5204936a25c558d4bd2b1d4816d5
 SHA1 (patch-an) = d6ccabc24d16b63a1c1f4b4f2667b60c37aa88ec
 SHA1 (patch-ao) = c4388bd3d467a91539e9adedc287a2a7ba333744
+SHA1 (patch-ap) = 3c1f4e554fd49772d2f8f279af3b571eca3a7076
+SHA1 (patch-aq) = 7e4375f0bc8c5b346d050a269fd2eea87f0aaf7c
+SHA1 (patch-ar) = f03a9bddfeb7aeb8af19c2bde315a630ce03f331
+SHA1 (patch-as) = c8cebac879afda69b282f5c334ffb2c8b5eee6cd
diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/patches/patch-ap
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/security/cyrus-sasl2/patches/patch-ap     Fri Aug 06 06:36:18 2004 +0000
@@ -0,0 +1,25 @@
+$NetBSD: patch-ap,v 1.4 2004/08/06 06:36:18 jlam Exp $
+
+--- sasldb/Makefile.am.orig    Fri Jul  2 15:39:41 2004
++++ sasldb/Makefile.am
+@@ -51,20 +51,8 @@ extra_common_sources = db_none.c db_ndbm
+ EXTRA_DIST = NTMakefile
+ 
+ noinst_LTLIBRARIES = libsasldb.la
+-noinst_LIBRARIES = libsasldb.a
+ 
+ libsasldb_la_SOURCES = allockey.c sasldb.h
+ EXTRA_libsasldb_la_SOURCES = $(extra_common_sources)
+ libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND)
+ libsasldb_la_LIBADD = $(SASL_DB_BACKEND) 
+-
+-LOCAL_SASL_DB_BACKEND_STATIC := $(shell echo $(SASL_DB_BACKEND_STATIC) | sed -e "s%\.\./sasldb/%%g")
+-
+-# Prevent make dist stupidity
+-libsasldb_a_SOURCES =
+-EXTRA_libsasldb_a_SOURCES =
+-
+-libsasldb.a: libsasldb.la $(LOCAL_SASL_DB_BACKEND_STATIC)
+-      $(AR) cru .libs/$@ $(LOCAL_SASL_DB_BACKEND_STATIC)
+-
+-
diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/patches/patch-aq
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/security/cyrus-sasl2/patches/patch-aq     Fri Aug 06 06:36:18 2004 +0000
@@ -0,0 +1,55 @@
+$NetBSD: patch-aq,v 1.1 2004/08/06 06:36:18 jlam Exp $
+
+--- sasldb/Makefile.in.orig    Fri Jul  2 15:40:18 2004
++++ sasldb/Makefile.in
+@@ -235,28 +235,18 @@ extra_common_sources = db_none.c db_ndbm
+ EXTRA_DIST = NTMakefile
+ 
+ noinst_LTLIBRARIES = libsasldb.la
+-noinst_LIBRARIES = libsasldb.a
+ 
+ libsasldb_la_SOURCES = allockey.c sasldb.h
+ EXTRA_libsasldb_la_SOURCES = $(extra_common_sources)
+ libsasldb_la_DEPENDENCIES = $(SASL_DB_BACKEND)
+ libsasldb_la_LIBADD = $(SASL_DB_BACKEND) 
+ 
+-LOCAL_SASL_DB_BACKEND_STATIC := $(shell echo $(SASL_DB_BACKEND_STATIC) | sed -e "s%\.\./sasldb/%%g")
+-
+-# Prevent make dist stupidity
+-libsasldb_a_SOURCES = 
+-EXTRA_libsasldb_a_SOURCES = 
+ subdir = sasldb
+ mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
+ CONFIG_HEADER = $(top_builddir)/config.h
+ CONFIG_CLEAN_FILES =
+ LIBRARIES = $(noinst_LIBRARIES)
+ 
+-libsasldb_a_AR = $(AR) cru
+-libsasldb_a_LIBADD =
+-am_libsasldb_a_OBJECTS =
+-libsasldb_a_OBJECTS = $(am_libsasldb_a_OBJECTS)
+ LTLIBRARIES = $(noinst_LTLIBRARIES)
+ 
+ libsasldb_la_LDFLAGS =
+@@ -276,10 +266,9 @@ LTCOMPILE = $(LIBTOOL) --mode=compile $(
+ CCLD = $(CC)
+ LINK = $(LIBTOOL) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+       $(AM_LDFLAGS) $(LDFLAGS) -o $@
+-DIST_SOURCES = $(libsasldb_a_SOURCES) $(EXTRA_libsasldb_a_SOURCES) \
+-      $(libsasldb_la_SOURCES) $(EXTRA_libsasldb_la_SOURCES)
++DIST_SOURCES = $(libsasldb_la_SOURCES) $(EXTRA_libsasldb_la_SOURCES)
+ DIST_COMMON = Makefile.am Makefile.in
+-SOURCES = $(libsasldb_a_SOURCES) $(EXTRA_libsasldb_a_SOURCES) $(libsasldb_la_SOURCES) $(EXTRA_libsasldb_la_SOURCES)
++SOURCES = $(libsasldb_la_SOURCES) $(EXTRA_libsasldb_la_SOURCES)
+ 
+ all: all-am
+ 
+@@ -540,8 +529,6 @@ uninstall-am: uninstall-info-am
+       tags uninstall uninstall-am uninstall-info-am
+ 
+ 
+-libsasldb.a: libsasldb.la $(LOCAL_SASL_DB_BACKEND_STATIC)
+-      $(AR) cru .libs/$@ $(LOCAL_SASL_DB_BACKEND_STATIC)
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/patches/patch-ar
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/security/cyrus-sasl2/patches/patch-ar     Fri Aug 06 06:36:18 2004 +0000
@@ -0,0 +1,19 @@
+$NetBSD: patch-ar,v 1.1 2004/08/06 06:36:18 jlam Exp $
+
+--- utils/Makefile.am.orig     Thu May 27 15:11:25 2004
++++ utils/Makefile.am
+@@ -56,11 +56,11 @@ else
+ man_MANS = saslpasswd2.8 sasldblistusers2.8
+ endif
+ 
+-saslpasswd2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++saslpasswd2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ saslpasswd2_SOURCES = saslpasswd.c
+-sasldblistusers2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++sasldblistusers2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ sasldblistusers2_SOURCES = sasldblistusers.c
+-dbconverter_2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++dbconverter_2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ 
+ testsuite_LDADD = $(all_sasl_libs) @DMALLOC_LIBS@
+ 
diff -r 7d349592aefc -r b61de01f0dde security/cyrus-sasl2/patches/patch-as
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/security/cyrus-sasl2/patches/patch-as     Fri Aug 06 06:36:18 2004 +0000
@@ -0,0 +1,39 @@
+$NetBSD: patch-as,v 1.4 2004/08/06 06:36:18 jlam Exp $
+
+--- utils/Makefile.in.orig     Fri Jul  2 15:40:14 2004
++++ utils/Makefile.in
+@@ -237,11 +237,11 @@ noinst_PROGRAMS = dbconverter-2
+ 
+ @NO_SASL_DB_MANS_TRUE@man_MANS = 
+ 
+-saslpasswd2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++saslpasswd2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ saslpasswd2_SOURCES = saslpasswd.c
+-sasldblistusers2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++sasldblistusers2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ sasldblistusers2_SOURCES = sasldblistusers.c
+-dbconverter_2_LDADD = ../sasldb/libsasldb.la $(all_sasl_libs)
++dbconverter_2_LDADD = $(SASL_DB_BACKEND_STATIC) $(all_sasl_libs)
+ 
+ testsuite_LDADD = $(all_sasl_libs) @DMALLOC_LIBS@
+ 
+@@ -287,16 +287,16 @@ PROGRAMS = $(noinst_PROGRAMS) $(sbin_PRO
+ 
+ dbconverter_2_SOURCES = dbconverter-2.c
+ dbconverter_2_OBJECTS = dbconverter-2.$(OBJEXT)
+-dbconverter_2_DEPENDENCIES = ../sasldb/libsasldb.la ../lib/libsasl2.la
++dbconverter_2_DEPENDENCIES = $(SASL_DB_BACKEND_STATIC) ../lib/libsasl2.la
+ dbconverter_2_LDFLAGS =
+ am_sasldblistusers2_OBJECTS = sasldblistusers.$(OBJEXT)
+ sasldblistusers2_OBJECTS = $(am_sasldblistusers2_OBJECTS)
+-sasldblistusers2_DEPENDENCIES = ../sasldb/libsasldb.la \
++sasldblistusers2_DEPENDENCIES = $(SASL_DB_BACKEND_STATIC) \
+       ../lib/libsasl2.la
+ sasldblistusers2_LDFLAGS =
+ am_saslpasswd2_OBJECTS = saslpasswd.$(OBJEXT)
+ saslpasswd2_OBJECTS = $(am_saslpasswd2_OBJECTS)
+-saslpasswd2_DEPENDENCIES = ../sasldb/libsasldb.la ../lib/libsasl2.la
++saslpasswd2_DEPENDENCIES = $(SASL_DB_BACKEND_STATIC) ../lib/libsasl2.la
+ saslpasswd2_LDFLAGS =
+ am_smtptest_OBJECTS =
+ smtptest_OBJECTS = $(am_smtptest_OBJECTS)



Home | Main Index | Thread Index | Old Index