Date: Sun, 3 Aug 2008 14:07:30 +0200 (CEST) From: Daniel Roethlisberger <daniel@roe.ch> To: FreeBSD-gnats-submit@FreeBSD.org Cc: andrew+ports@fubar.geek.nz, araujo@FreeBSD.org, alepulver@FreeBSD.org, daniel@roe.ch Subject: ports/126207: Mk/bsd.lua.mk lang/lua - liblua 5.1 lib dependency missing Message-ID: <200808031207.m73C7UuY026472@marvin.ustcor.roe.ch> Resent-Message-ID: <200808031210.m73CA1ED021147@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 126207 >Category: ports >Synopsis: Mk/bsd.lua.mk lang/lua - liblua 5.1 lib dependency missing >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sun Aug 03 12:10:01 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Daniel Roethlisberger >Release: FreeBSD 7.0-RELEASE-p2 i386 >Organization: >Environment: System: FreeBSD marvin.ustcor.roe.ch 7.0-RELEASE-p2 FreeBSD 7.0-RELEASE-p2 #0: Wed Jun 18 07:33:20 UTC 2008 root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC i386 >Description: Since the commit to lang/lua on 2008-07-04 (port version 5.1.3_2), lang/lua installs a shared library as ${PREFIX}/lib/lua51/liblua.so.1 along the liblua.a. This causes some ports previously linking to liblua statically, to now link dynamically (example: security/nmap). However, the component "lua" is still marked as "build" dependency for lua 5.1 in bsd.lua.mk, resulting in a missing run-time dependency on lang/lua. The following is only a 5 minute analysis, and I am not too familiar with the inner workings of the lua ports. That is also the reason why I don't submit a patch -- fixing this in the wrong way might break a lot of ports. Since lang/lua (lua 5.1) installs the shared object using different naming and versioning conventions than lang/lua50 and earlier, the logic implemented in bsd.lua.mk breaks if I attempt to use dependency type "lib" with lua 5.1. As far as I can see, it attempts to find lua 5.1.1 and a shared library named liblua-5.1.so.1. There are different possible ways to fix this. Either add special casing to bsd.lua.mk to handle the different installation conventions of lua 5.1, or fix lang/lua 5.1 to install the shared object in the same way as the other lua ports do (AFAICS liblua-5.1.so.3 instead of liblua.so.1). Since PR 121834 concerning lang/lua timed out on the current maintainer, I am CC'ing to two committers which I think might/should be interested in this PR: . araujo - committed lang/lua 5.1.3_2 which installs the .so . alepulver - "maintainer" of bsd.lua.mk >How-To-Repeat: cd /usr/ports cd security/nmap && make install clean && cd - ldd `which nmap` # note the liblua pkg_delete lua-5.1.3_2 # does not know about the dependency from nmap ldd `which nmap` # note the missing liblua >Fix: Unsure, see analysis above. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808031207.m73C7UuY026472>