ports/162879: some problems in net/wireshark/Makefile
Alfred Bartsch
bartsch at dssgmbh.de
Fri Nov 25 17:20:06 UTC 2011
>Number: 162879
>Category: ports
>Synopsis: some problems in net/wireshark/Makefile
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Nov 25 17:20:05 UTC 2011
>Closed-Date:
>Last-Modified:
>Originator: Alfred Bartsch
>Release: FreeBSD 8.2-stable
>Organization:
Data-Service GmbH
>Environment:
FreeBSD ds832pkg.incore 8.2-STABLE FreeBSD 8.2-STABLE #1: Thu Oct 6 08:55:49 CEST 2011 root at dsscons2.incore:/usr/obj/usr/src/sys/SERVER i386
>Description:
After setting WITHOUT_GNUTLS=yes in /etc/make.conf, "make index" and "portmaster -gH net/wireshark" seem to work as expected (no dependency to gnutls left neither in INDEX-8 nor in /var/db/pkg/wireshark-1.6.2/+CONTENTS).
I built a package on my build server and installed it into a test machine.
running tshark ends in:
/libexec/ld-elf.so.1: Shared object "libgnutls.so.47" not found, required by "libwireshark.so.1"
CONFIGURE_ARGS setting "--with-gnutls=yes/no" depending on "WITHOUT_GNUTLS" is missing in Makefile, as expected by configure to work properly.
Another weakness: --with-libgnutls-prefix seems to by a typo, should read ...libgcrypt... instead, if I'm not completely wrong.
IMHO, pure existence of a single file should not make any difference concerning dependencies, at least in a build environment, so I opt for removing the ".if exists" part of these conditional statements.
The attached fix addresses all these weaknesses.
>How-To-Repeat:
set "WITHOUT_GNUTLS=yes" in /etc/make.conf
build a package on a server with gnutls already installed
install this package on a server without gnutls installed
run wireshark or tshark
>Fix:
patching the wireshark Makefile solves this for me:
--- Makefile.1st 2011-09-29 12:50:19.000000000 +0200
+++ Makefile 2011-11-25 17:00:19.000000000 +0100
@@ -146,13 +146,16 @@
CONFIGURE_ARGS+= --with-geoip=no
.endif
-.if exists(${LOCALBASE}/lib/libgnutls.so) || !defined(WITHOUT_GNUTLS)
+.if !defined(WITHOUT_GNUTLS)
LIB_DEPENDS+= gnutls.47:${PORTSDIR}/security/gnutls \
gcrypt.18:${PORTSDIR}/security/libgcrypt
-CONFIGURE_ARGS+=--with-libgnutls-prefix=${LOCALBASE}
+CONFIGURE_ARGS+= --with-libgcrypt-prefix=${LOCALBASE}
+CONFIGURE_ARGS+= --with-gnutls=yes
+.else
+CONFIGURE_ARGS+= --with-gnutls=no
.endif
-.if exists(${LOCALBASE}/lib/libgcrypt.so) || !defined(WITHOUT_LIBGCRYPT)
+.if !defined(WITHOUT_LIBGCRYPT)
LIB_DEPENDS+= gcrypt.18:${PORTSDIR}/security/libgcrypt
CONFIGURE_ARGS+=--with-libgcrypt-prefix=${LOCALBASE}
.endif
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list