123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- Submitted By: Armin K. <krejzi at email dot com>
- Date: 2012-04-06
- Initial Package Version: 2.4.30
- Upstream Status: Unknown
- Origin: Debian
- Description: This patch enables symbol versioning in ldap libraries. Without this
- patch some applications might generate a warning about missing symbol
- versions.
- --- openldap.orig/build/openldap.m4 2012-02-29 18:37:09.000000000 +0100
- +++ openldap/build/openldap.m4 2012-04-01 17:29:50.973881411 +0200
- @@ -1136,3 +1136,54 @@
- #endif
- ], [ol_cv_ssl_crl_compat=yes], [ol_cv_ssl_crl_compat=no])])
- ])
- +
- +dnl ====================================================================
- +dnl check for symbol versioning support
- +AC_DEFUN([OL_SYMBOL_VERSIONING],
- +[AC_CACHE_CHECK([for .symver assembler directive],
- + [ol_cv_asm_symver_directive],[
- +cat > conftest.s <<EOF
- +${libc_cv_dot_text}
- +_sym:
- +.symver _sym,sym@VERS
- +EOF
- +if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
- + ol_cv_asm_symver_directive=yes
- +else
- + ol_cv_asm_symver_directive=no
- +fi
- +rm -f conftest*])
- +AC_CACHE_CHECK([for ld --version-script],
- + [ol_cv_ld_version_script_option],[
- +if test $ol_cv_asm_symver_directive = yes; then
- + cat > conftest.s <<EOF
- +${libc_cv_dot_text}
- +_sym:
- +.symver _sym,sym@VERS
- +EOF
- + cat > conftest.map <<EOF
- +VERS_1 {
- + global: sym;
- +};
- +
- +VERS_2 {
- + global: sym;
- +} VERS_1;
- +EOF
- + if ${CC-cc} -c $ASFLAGS conftest.s 1>&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then
- + if AC_TRY_COMMAND([${CC-cc} $CFLAGS $LDFLAGS -shared
- + -o conftest.so conftest.o
- + -Wl,--version-script,conftest.map
- + 1>&AS_MESSAGE_LOG_FD]);
- + then
- + ol_cv_ld_version_script_option=yes
- + else
- + ol_cv_ld_version_script_option=no
- + fi
- + else
- + ol_cv_ld_version_script_option=no
- + fi
- +else
- + ol_cv_ld_version_script_option=no
- +fi
- +rm -f conftest*])])
- --- openldap.orig/build/top.mk 2012-02-29 18:37:09.000000000 +0100
- +++ openldap/build/top.mk 2012-04-01 17:29:50.972881390 +0200
- @@ -104,6 +104,9 @@
- # LINK_LIBS referenced in library and module link commands.
- LINK_LIBS = $(MOD_LIBS) $(@PLAT@_LINK_LIBS)
-
- +# option to pass to $(CC) to support library symbol versioning, if any
- +VERSION_OPTION = @VERSION_OPTION@
- +
- LTSTATIC = @LTSTATIC@
-
- LTLINK = $(LIBTOOL) --mode=link \
- @@ -113,7 +116,7 @@
- $(CC) $(LT_CFLAGS) $(LT_CPPFLAGS) $(LIB_DEFS) -c
-
- LTLINK_LIB = $(LIBTOOL) $(LTONLY_LIB) --mode=link \
- - $(CC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS_LIB)
- + $(CC) $(LT_CFLAGS) $(LDFLAGS) $(LTFLAGS_LIB) $(VERSION_FLAGS)
-
- LTCOMPILE_MOD = $(LIBTOOL) $(LTONLY_MOD) --mode=compile \
- $(CC) $(LT_CFLAGS) $(LT_CPPFLAGS) $(MOD_DEFS) -c
- --- openldap.orig/configure.in 2012-02-29 18:37:09.000000000 +0100
- +++ openldap/configure.in 2012-04-01 17:29:50.981881580 +0200
- @@ -1907,6 +1907,13 @@
- fi
- AC_SUBST(LTSTATIC)dnl
-
- +VERSION_OPTION=""
- +OL_SYMBOL_VERSIONING
- +if test $ol_cv_ld_version_script_option = yes ; then
- + VERSION_OPTION="-Wl,--version-script="
- +fi
- +AC_SUBST(VERSION_OPTION)
- +
- dnl ----------------------------------------------------------------
- if test $ol_enable_wrappers != no ; then
- AC_CHECK_HEADERS(tcpd.h,[
- --- openldap.orig/libraries/liblber/liblber.map 1970-01-01 01:00:00.000000000 +0100
- +++ openldap/libraries/liblber/liblber.map 2012-04-01 17:29:50.983881622 +0200
- @@ -0,0 +1,8 @@
- +OPENLDAP_2.4_2 {
- + global:
- + ber_*;
- + der_alloc;
- + lutil_*;
- + local:
- + *;
- +};
- --- openldap.orig/libraries/liblber/Makefile.in 2012-04-01 17:27:12.042526978 +0200
- +++ openldap/libraries/liblber/Makefile.in 2012-04-01 17:29:50.982881601 +0200
- @@ -38,6 +38,9 @@
- XXLIBS =
- NT_LINK_LIBS = $(AC_LIBS)
- UNIX_LINK_LIBS = $(AC_LIBS)
- +ifneq (,$(VERSION_OPTION))
- + VERSION_FLAGS = "$(VERSION_OPTION)$(srcdir)/liblber.map"
- +endif
-
- dtest: $(XLIBS) dtest.o
- $(LTLINK) -o $@ dtest.o $(LIBS)
- --- openldap.orig/libraries/libldap/libldap.map 1970-01-01 01:00:00.000000000 +0100
- +++ openldap/libraries/libldap/libldap.map 2012-04-01 17:29:50.981881580 +0200
- @@ -0,0 +1,7 @@
- +OPENLDAP_2.4_2 {
- + global:
- + ldap_*;
- + ldif_*;
- + local:
- + *;
- +};
- --- openldap.orig/libraries/libldap/Makefile.in 2012-04-01 17:27:12.043527000 +0200
- +++ openldap/libraries/libldap/Makefile.in 2012-04-01 17:29:50.982881601 +0200
- @@ -52,6 +52,9 @@
- XXLIBS = $(SECURITY_LIBS) $(LUTIL_LIBS)
- NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
- UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
- +ifneq (,$(VERSION_OPTION))
- + VERSION_FLAGS = $(VERSION_OPTION)$(srcdir)/libldap.map
- +endif
-
- apitest: $(XLIBS) apitest.o
- $(LTLINK) -o $@ apitest.o $(LIBS)
- --- openldap.orig/libraries/libldap_r/Makefile.in 2012-04-01 17:27:12.043527000 +0200
- +++ openldap/libraries/libldap_r/Makefile.in 2012-04-01 17:29:50.971881369 +0200
- @@ -61,6 +61,9 @@
- XXXLIBS = $(LTHREAD_LIBS)
- NT_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS)
- UNIX_LINK_LIBS = $(LDAP_LIBLBER_LA) $(AC_LIBS) $(SECURITY_LIBS) $(LTHREAD_LIBS)
- +ifneq (,$(VERSION_OPTION))
- + VERSION_FLAGS = "$(VERSION_OPTION)$(XXDIR)/libldap.map"
- +endif
-
- .links : Makefile
- @for i in $(XXSRCS); do \
|