ports/96853: graphics/exiv2: install the library with a better/correct name
Joerg Pulz
Joerg.Pulz at frm2.tum.de
Sat May 6 10:10:45 UTC 2006
>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 at 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:
More information about the freebsd-ports-bugs
mailing list