Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 489586 - sys-devel/llvm - use multilib_build_binaries() function for conditional building/installing of binaries
Summary: sys-devel/llvm - use multilib_build_binaries() function for conditional build...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Bernard Cafarelli
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-10-27 16:06 UTC by Thomas Sachau
Modified: 2013-12-28 14:09 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Sachau gentoo-dev 2013-10-27 16:06:12 UTC
In this case, the ebuild always moves llvm-config to $ED/tmp, but only moves it back for the default ABI, so it currently installs the llvm-config files for none-default ABIs inside /tmp, which is a pretty useless location.

Simple workaround: use build_binaries() function instead of multilib_is_native_abi() for the check in multilib_src_install

This also fixes the issue, that every none-default ABI gets their binaries removed in multilib_src_install.
Comment 1 Thomas Sachau gentoo-dev 2013-10-27 16:24:38 UTC
should be multilib_build_binaries instead of build_binaries
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-10-31 16:22:11 UTC
Applied to -9999. Please test.
Comment 3 Thomas Sachau gentoo-dev 2013-11-02 15:37:44 UTC
(In reply to Michał Górny from comment #2)
> Applied to -9999. Please test.

the doman and dohtml calls in multilib_src_install_all needs to be conditional on multilib_is_native_abi too, since they are not built for other ABIs.

This will mean, that anyone just building for none-default ABIs will not get any manpages or docs, but that is a different thing.

So with the following change i can build live llvm for amd64 and for x86 (both on amd64 and both seperatly) and do get the binaries for both of them, so it seems to work fine.

--- /usr/portage/sys-devel/llvm/llvm-9999.ebuild	2013-11-01 07:32:58.000000000 +0100
+++ llvm-9999.ebuild	2013-11-02 15:24:19.000000000 +0100
@@ -333,8 +333,10 @@
 }
 
 multilib_src_install_all() {
-	doman docs/_build/man/*.1
-	use doc && dohtml -r docs/_build/html/
+	if multilib_is_native_abi; then
+		doman docs/_build/man/*.1
+		use doc && dohtml -r docs/_build/html/
+	fi
 
 	insinto /usr/share/vim/vimfiles/syntax
 	doins utils/vim/*.vim
Comment 4 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-12-28 14:09:32 UTC
*llvm-3.3-r2 (28 Dec 2013)

  28 Dec 2013; Michał Górny <mgorny@gentoo.org>
  +files/llvm-3.3-r2-gentoo-install.patch, +llvm-3.3-r2.ebuild:
  Backport all the fixes and install design changes from -9999 to -3.3. Fixes
  bugs #425844 (install CMake modules), #462554 (install bfd-plugins symlink),
  #489586 (multilib portage compat.), #488216, #492554 (RPATH issues).