while working on an update for multimedia/mjpegtools, and adding
USE_LIBTOOL=Yes, I would get libraries where lib/libfoo.so.4.0 would
be a symlink to lib/libfoo-1.8.so.4.0, the real library.

this comes from libtool, specifically library_names_spec is set
to '${libname}${release}${shared_ext}$versuffix 
${libname}${shared_ext}$versuffix'

if library_names_spec is set only to '${libname}${shared_ext}$versuffix',
then only lib/libfoo.so.4.0, a real library, is created.

the code in the libtool script that uses this is at line 5966.

the following patch for the libtool port changes library_names_spec
to just '${libname}${shared_ext}$versuffix'.  I patched libtool, then
uninstalled glib2 and all it's dependencies, then built on an amd64
machine graphics/gimp and all its dependencies, a lot of which now
USE_LIBTOOL (thanks marcm!).  I also built infrastructure/plist/i386
from scratch on an i386 machine.  only one port needed to be changed,
databases/openldap.  patch for PFRAG.shared, along with a little
other libtool cleanup for that port is below the libtool patch. I
am also currently running a full package build with this patch.

comments?

-- 
<[EMAIL PROTECTED]>

Index: devel/libtool/Makefile
===================================================================
RCS file: /cvs/ports/devel/libtool/Makefile,v
retrieving revision 1.44
diff -u -r1.44 Makefile
--- devel/libtool/Makefile      2 Nov 2005 02:47:09 -0000       1.44
+++ devel/libtool/Makefile      14 Nov 2005 06:42:07 -0000
@@ -6,15 +6,14 @@
 
 VERSION=       1.5.20
 DISTNAME=      libtool-${VERSION}
-PKGNAME=       ${DISTNAME}p1
-PKGNAME-ltdl=  libltdl-${VERSION}p1
+PKGNAME=       ${DISTNAME}p2
+PKGNAME-ltdl=  libltdl-${VERSION}p2
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_GNU:=libtool/}
 
 HOMEPAGE=      http://www.gnu.org/software/libtool/
 
 AUTOCONF_VERSION= 2.59
-BUILD_DEPENDS+=        ${MODGNU_AUTOCONF_DEPENDS}
 
 MAINTAINER=    Brad Smith <[EMAIL PROTECTED]>
 
@@ -24,7 +23,7 @@
 PERMIT_DISTFILES_CDROM=        Yes
 PERMIT_DISTFILES_FTP=  Yes
 
-CONFIGURE_STYLE= gnu
+CONFIGURE_STYLE= autoconf no-autoheader
 CONFIGURE_ARGS+= ${CONFIGURE_SHARED}
 
 MULTI_PACKAGES=        -ltdl
@@ -35,6 +34,9 @@
 RUN_DEPENDS+=  ::devel/libtool,-ltdl
 . endif
 .endif
+
+post-patch:
+       @cp ${WRKSRC}/libtool.m4 ${WRKSRC}/acinclude.m4
 
 do-regress:
        cd ${WRKDIR}/bin && ln -sf ${LOCALBASE}/bin/autoconf-2.59 autoconf
Index: devel/libtool/patches/patch-libtool_m4
===================================================================
RCS file: devel/libtool/patches/patch-libtool_m4
diff -N devel/libtool/patches/patch-libtool_m4
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ devel/libtool/patches/patch-libtool_m4      14 Nov 2005 06:42:07 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- libtool.m4.orig    Sun Nov 13 14:18:51 2005
++++ libtool.m4 Sun Nov 13 14:19:12 2005
+@@ -1586,7 +1586,7 @@ openbsd*)
+     openbsd3.3 | openbsd3.3.*) need_version=yes ;;
+     *)                         need_version=no  ;;
+   esac
+-  library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${shared_ext}$versuffix'
++  library_names_spec='${libname}${shared_ext}$versuffix'
+   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
+   shlibpath_var=LD_LIBRARY_PATH
+   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test 
"$host_os-$host_cpu" = "openbsd2.8-powerpc"; then



Index: databases/openldap/Makefile
===================================================================
RCS file: /cvs/ports/databases/openldap/Makefile,v
retrieving revision 1.59
diff -u -r1.59 Makefile
--- databases/openldap/Makefile 12 Nov 2005 18:12:06 -0000      1.59
+++ databases/openldap/Makefile 14 Nov 2005 07:22:20 -0000
@@ -4,8 +4,8 @@
 COMMENT-server=        "Open source LDAP software (server)"
 
 DISTNAME=      openldap-2.3.11
-FULLPKGNAME=   ${DISTNAME:S/-/-client-/}p2
-PKGNAME-server=        ${DISTNAME:S/-/-server-/}p2
+FULLPKGNAME=   ${DISTNAME:S/-/-client-/}p3
+PKGNAME-server=        ${DISTNAME:S/-/-server-/}p3
 CATEGORIES=    databases net
 
 HOMEPAGE=      http://www.openldap.org/
Index: databases/openldap/patches/patch-configure
===================================================================
RCS file: /cvs/ports/databases/openldap/patches/patch-configure,v
retrieving revision 1.2
diff -u -r1.2 patch-configure
--- databases/openldap/patches/patch-configure  7 Nov 2005 15:59:08 -0000       
1.2
+++ databases/openldap/patches/patch-configure  14 Nov 2005 07:22:20 -0000
@@ -1,15 +1,7 @@
 $OpenBSD: patch-configure,v 1.2 2005/11/07 15:59:08 mbalmer Exp $
 --- configure.orig     Wed Oct  5 20:41:09 2005
 +++ configure  Tue Oct 18 14:30:27 2005
-@@ -9443,7 +9443,6 @@ openbsd*)
-     *)                         need_version=no  ;;
-   esac
-   library_names_spec='${libname}${release}${shared_ext}$versuffix 
${libname}${shared_ext}$versuffix'
--  finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
-   shlibpath_var=LD_LIBRARY_PATH
-   if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test 
"$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
-     case $host_os in
-@@ -34518,6 +34517,7 @@ cat confdefs.h >>conftest.$ac_ext
+@@ -34518,6 +34518,7 @@ cat confdefs.h >>conftest.$ac_ext
  cat >>conftest.$ac_ext <<_ACEOF
  /* end confdefs.h.  */
  
Index: databases/openldap/pkg/PFRAG.shared
===================================================================
RCS file: /cvs/ports/databases/openldap/pkg/PFRAG.shared,v
retrieving revision 1.29
diff -u -r1.29 PFRAG.shared
--- databases/openldap/pkg/PFRAG.shared 7 Nov 2005 15:59:08 -0000       1.29
+++ databases/openldap/pkg/PFRAG.shared 14 Nov 2005 07:22:20 -0000
@@ -1,7 +1,4 @@
 @comment $OpenBSD: PFRAG.shared,v 1.29 2005/11/07 15:59:08 mbalmer Exp $
[EMAIL PROTECTED] lib/liblber-2.3.so.8.1
 @lib lib/liblber.so.8.1
[EMAIL PROTECTED] lib/libldap-2.3.so.8.1
 @lib lib/libldap.so.8.1
[EMAIL PROTECTED] lib/libldap_r-2.3.so.8.1
 @lib lib/libldap_r.so.8.1

Reply via email to