Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 504710

Summary: dev-lang/moarvm bundles dev-libs/libuv and links it statically
Product: Gentoo Linux Reporter: Julian Ospald <hasufell>
Component: Current packagesAssignee: Patrick Lauer <patrick>
Status: RESOLVED FIXED    
Severity: normal CC: esigra, jouni.kosonen, perl, tomboy64
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 580732    
Bug Blocks: 251464    
Attachments: moarvm-2014.02:20140315-144112.log

Description Julian Ospald 2014-03-15 15:11:28 UTC
Created attachment 372744 [details]
moarvm-2014.02:20140315-144112.log

# ldd /usr/bin/moar
	linux-vdso.so.1 (0x00007ffff1bff000)
	libmoar.so => /usr/lib64/libmoar.so (0x00007f860afcd000)
	libc.so.6 => /lib64/libc.so.6 (0x00007f860ac20000)
	libm.so.6 => /lib64/libm.so.6 (0x00007f860a92d000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f860a711000)
	librt.so.1 => /lib64/librt.so.1 (0x00007f860a509000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007f860a305000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f860b4bc000)
# ldd /usr/lib/libmoar.so
	linux-vdso.so.1 (0x00007fff1a8fd000)
	libm.so.6 => /lib64/libm.so.6 (0x00007fa4a70c9000)
	libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fa4a6ead000)
	librt.so.1 => /lib64/librt.so.1 (0x00007fa4a6ca4000)
	libdl.so.2 => /lib64/libdl.so.2 (0x00007fa4a6aa0000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fa4a66f3000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fa4a78e8000)
Comment 1 Patrick Lauer gentoo-dev 2014-03-17 03:11:56 UTC
Yeah, no.

It's a fork of libuv that doesn't exist as an upstream package, so it can't be unbundled.
Comment 2 Julian Ospald 2014-03-17 10:42:53 UTC
then libuv should be removed from the dependency list
Comment 3 Julian Ospald 2014-03-17 10:54:34 UTC
Nope, I double checked. It is not a fork.

See https://github.com/MoarVM/MoarVM/tree/master/3rdparty

It's a plain submodule. The version in the 2014.02 tarball is libuv-0.11.19.
Comment 4 Jouni Kosonen 2015-12-18 04:28:43 UTC
(In reply to Julian Ospald (hasufell) from comment #3)
> It's a plain submodule. The version in the 2014.02 tarball is libuv-0.11.19.

The 2015 tarballs bundle version 1.0.0, and any 1.x.y version should work.

Since 5 Sep 2014 there's even a --has-libuv switch in the Configure.pl to use the system library instead of the bundled one.

So, maybe something like this for the next version bump?

--- a/dev-lang/moarvm/moarvm-2015.07.ebuild
+++ b/dev-lang/moarvm/moarvm-2015.11.ebuild
@@ -14,16 +14,16 @@ SRC_URI="http://moarvm.org/releases/${MY_PN}-${PV}.tar.gz"
 LICENSE="Artistic-2"
 SLOT="0"
 KEYWORDS="~amd64 ~x86"
-IUSE="doc"
+IUSE="doc +libuv"
 
-RDEPEND="dev-libs/libuv"
+RDEPEND="libuv? ( dev-libs/libuv:= )"
 DEPEND="${RDEPEND}
        dev-lang/perl"
 
 S="${WORKDIR}/MoarVM-${PV}"
 
 src_configure() {
-       perl Configure.pl --prefix="${D}/usr"|| die
+       perl Configure.pl --prefix="${D}/usr" $(usex libuv --has-libuv "")|| die
 }
 
 src_install() {
Comment 5 M. B. 2016-05-09 16:58:38 UTC
Fixed with 2016.04-r1.