Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 6 May 2006 12:01:14 +0200 (CEST)
From:      Joerg Pulz <Joerg.Pulz@frm2.tum.de>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        Maintainer <ahze@FreeBSD.org>
Subject:   ports/96853: graphics/exiv2: install the library with a better/correct name
Message-ID:  <200605061001.k46A1EAj055487@hades.admin.frm2>
Resent-Message-ID: <200605061010.k46AAM1E057995@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         96853
>Category:       ports
>Synopsis:       graphics/exiv2: install the library with a better/correct name
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat May 06 10:10:17 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Joerg Pulz
>Release:        FreeBSD 6.1-PRERELEASE i386
>Organization:
TU-Munich / ZWE FRM-II
>Environment:
System: FreeBSD hades.admin.frm2 6.1-PRERELEASE FreeBSD 6.1-PRERELEASE #11: Wed Feb 22 19:01:44 CET 2006 root@hades.admin.frm2:/usr/obj/usr/src/sys/HADES i386


	
>Description:
	Currently the graphics/exiv2 port installs the libexiv2 library with the
	name libexiv2-0.9.1.so which is IMO really bad, as the library will not
	show up in the "ldconfig -r" output and other ports which depend on the
	graphics/exiv2 library have to set the dependency by using:
	BUILD_DEPENDS=	exiv2:${PORTSDIR}/graphics/exiv2
	RUN_DEPENDS=	${BUILD_DEPENDS}

	The main problem is that the library is created by using libtool in
	mode=link with the -release argument, which leads to this obscure
	library name.
	The patch modifies the libtool call to use -version-number instead of
	-release and the resulting library will get the name libexiv2.so.0.
	With this name, the library will show up in the "ldconfig -r" output
	and other ports can depend on it in the usual way:
	LIB_DEPENDS=	exiv2.0:${PORTSDIR}/graphics/exiv2

	Makefile:
	- bump PORTREVISION for the library name change

	pkg-plist:
	- chase the new library name

	files/patch-src::Makefile (new)
	- adopt the libtool call to generate the library with a better/correct
	  name

	The only port that depends on graphics/exiv2 is graphics/kphotoalbum
	and I've verified that the patch will not break it with a tinderbox run
	on RELENG_6 i386.

	Patch tested on:	RELENG_4	i386 (tinderbox)
				RELENG_5	i386 (tinderbox)
				RELENG_6	i386 amd64 (tinderbox)
				CURRENT		i386 (tinderbox)
>How-To-Repeat:
	
>Fix:

	- apply the patch
	- add files directory to CVS
	- add files/patch-src::Makefile to CVS

--- graphics_exiv2.diff begins here ---
Index: Makefile
===================================================================
RCS file: /home/ncvs/ports/graphics/exiv2/Makefile,v
retrieving revision 1.14
diff -u -r1.14 Makefile
--- Makefile	23 Apr 2006 14:12:23 -0000	1.14
+++ Makefile	5 May 2006 11:00:17 -0000
@@ -7,6 +7,7 @@
 
 PORTNAME=	exiv2
 PORTVERSION=	0.9.1
+PORTREVISION=	1
 CATEGORIES=	graphics
 MASTER_SITES=	http://www.exiv2.org/
 
Index: pkg-plist
===================================================================
RCS file: /home/ncvs/ports/graphics/exiv2/pkg-plist,v
retrieving revision 1.5
diff -u -r1.5 pkg-plist
--- pkg-plist	23 Apr 2006 14:12:23 -0000	1.5
+++ pkg-plist	5 May 2006 11:00:17 -0000
@@ -26,10 +26,10 @@
 include/exiv2/tags.hpp
 include/exiv2/types.hpp
 include/exiv2/value.hpp
-lib/libexiv2-0.9.1.so
 lib/libexiv2.a
 lib/libexiv2.la
 lib/libexiv2.so
+lib/libexiv2.so.0
 %%PORTDOCS%%%%DOCSDIR%%/actions_8hpp.html
 %%PORTDOCS%%%%DOCSDIR%%/actions_8hpp__incl.map
 %%PORTDOCS%%%%DOCSDIR%%/actions_8hpp__incl.md5
Index: files/patch-src::Makefile
===================================================================
RCS file: files/patch-src::Makefile
diff -N files/patch-src::Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ files/patch-src::Makefile	5 May 2006 11:00:17 -0000
@@ -0,0 +1,11 @@
+--- src/Makefile.orig	Fri May  5 11:46:42 2006
++++ src/Makefile	Fri May  5 11:47:15 2006
+@@ -199,7 +199,7 @@
+ bin: lib $(BINARY) $(EXIV2BIN) $(MCBIN) path-test
+ 
+ lib: $(OBJ)
+-	$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) $(LOBJ) -o $(LIBRARY) -rpath $(libdir) -release $(EXIV2_VERSION)
++	$(LIBTOOL) --mode=link $(CXX) $(LDFLAGS) $(LOBJ) -o $(LIBRARY) -rpath $(libdir) -version-number $(subst .,:,$(EXIV2_VERSION))
+ 	@touch lib
+ 
+ path-test: path-test.o utils.o
--- graphics_exiv2.diff ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605061001.k46A1EAj055487>