Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Mar 2014 16:58:44 -0700 (PDT)
From:      Don Lewis <truckman@FreeBSD.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/187685: removal of libfl.so may break other ports
Message-ID:  <201403172358.s2HNwiZ8041020@mousie.catspoiler.org>
Resent-Message-ID: <201403180000.s2I002Jq052608@freefall.freebsd.org>

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

>Number:         187685
>Category:       ports
>Synopsis:       removal of libfl.so may break other ports
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          doc-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 18 00:00:02 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     Don Lewis
>Release:        FreeBSD 11.0-CURRENT i386
>Organization:
FreeBSD Project
>Environment:
System: FreeBSD scratch.catspoiler.org 11.0-CURRENT FreeBSD 11.0-CURRENT #72 r262892M: Fri Mar  7 14:21:49 PST 2014     dl@scratch.catspoiler.org:/usr/obj/usr/src/sys/GENERICSMB  i386

flex-2.5.38_2

textproc/flex/Makefile r345345

This problem only affects ports build manually, with portupgrade, or with
portmaster.  Officially built ports or ports built locally with poudriere
will not be affected because of their sanitary build environment.

>Description:

Revision r345345 of textproc/flex/Makefile gets rid of the shared
library libfl.so.2 because of the problems it was causing (as noted
by PR: ports/186790.  This may break other ports that are linked to this
shared library (or they may access an old copy of the library under
/usr/local/lib/compat).

On my machine the following ports were affected:

  'binutils-2.24' (devel/binutils)
  'teTeX-base-3.0_25' (print/teTeX-base)
  'plotutils-2.6_3,1' (graphics/plotutils)

Interestingly, non of these list flex as a dependency.  It is likely that
their configure scripts were finding the ports version of flex and
adding -lfl to the linker command line.  That should probably be fixed ...

>How-To-Repeat:

Install a version of textproc/flex older than r345345.
Build and install devel/binutils.
Update textproc/flex to a newer version.
Run ldd on /usr/local/bin/ar.

>Fix:

Add a note to ports/UPDATING that suggests running "pkg check -B" after
upgrading textproc/flex to find any other ports that might be referencing
the removed shared library.  If a copy of the shared library was stashed
in compat, then it has to be deleted or moved out of the way before
"pkg check" will detect the problem.  Then rebuild any ports that still
reference the shared library.
>Release-Note:
>Audit-Trail:
>Unformatted:



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