Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 473852 - multilib-build.eclass: please provide a multilib_is_best_abi function
Summary: multilib-build.eclass: please provide a multilib_is_best_abi function
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Michał Górny
URL: http://thread.gmane.org/gmane.linux.g...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-06-19 17:08 UTC by Alexis Ballier
Modified: 2013-08-02 08:30 UTC (History)
3 users (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 Alexis Ballier gentoo-dev 2013-06-19 17:08:11 UTC
code template:

multilib_is_best_abi() {
    local all_abis=( $(multilib_get_enabled_abis) )
    local best_abi="${all_abis[$(( ${#all_abis[@]} - 1 ))]}"
    [ "${ABI}" = "${best_abi}" ]
}


this is to be used in src_* phase functions and determine if we're building for the native abi or not.
I need this for media-sound/lame to make it build only libmp3lame for multilib abis and add the frontend and other binaries for the native abi

thanks!
Comment 1 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-06-19 18:28:11 UTC
We're rather using [[ ${ABI} == ${DEFAULT_ABI} ]] for that.
Comment 2 Alexis Ballier gentoo-dev 2013-06-19 18:36:31 UTC
(In reply to Michał Górny from comment #1)
> We're rather using [[ ${ABI} == ${DEFAULT_ABI} ]] for that.

yes but is it guaranted to be always set ? (ie even on non-multilib profiles)
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-06-19 18:38:57 UTC
(In reply to Alexis Ballier from comment #2)
> (In reply to Michał Górny from comment #1)
> > We're rather using [[ ${ABI} == ${DEFAULT_ABI} ]] for that.
> 
> yes but is it guaranted to be always set ? (ie even on non-multilib profiles)

Yes. So far, any inconsistencies have been fixed due to ebuilds being broken :).
Comment 4 Alexis Ballier gentoo-dev 2013-06-19 18:50:36 UTC
(In reply to Michał Górny from comment #3)
> Yes. So far, any inconsistencies have been fixed due to ebuilds being broken
> :).

well, could you please review media-sound/lame-3.99.5-r1 ebuild then ?
Comment 5 Alexis Ballier gentoo-dev 2013-06-19 18:56:17 UTC
(In reply to Alexis Ballier from comment #4)
> (In reply to Michał Górny from comment #3)
> > Yes. So far, any inconsistencies have been fixed due to ebuilds being broken
> > :).
> 
> well, could you please review media-sound/lame-3.99.5-r1 ebuild then ?

and btw if [[ ${ABI} == ${DEFAULT_ABI} ]] works you can scrap this bug and close as wontfix since there's no point in adding a function for this
Comment 6 Alexis Ballier gentoo-dev 2013-06-25 23:01:45 UTC
.
Comment 7 Jeroen Roovers (RETIRED) gentoo-dev 2013-06-26 10:55:35 UTC
*** Bug 474838 has been marked as a duplicate of this bug. ***
Comment 8 tman 2013-06-26 14:14:54 UTC
 emerge -utDNqav --with-bdeps=y --keep-going world
[nomerge      ] media-sound/audacity-2.0.3  USE="alsa flac jack libsoxr mp3 vorbis (-ffmpeg) -id3tag -ladspa -libsamplerate -midi -sbsms -soundtouch -twolame -vamp" 
[ebuild     U ]  media-sound/lame-3.99.5-r1 [3.99.5] USE="-debug (-mmx) -mp3rtp -sndfile -static-libs" ABI_X86="32%* (64%*) (-x32)" 
[blocks B     ] <=app-emulation/emul-linux-x86-medialibs-20130224 ("<=app-emulation/emul-linux-x86-medialibs-20130224" is blocking media-sound/lame-3.99.5-r1)

 * Error: The above package list contains packages which cannot be
 * installed at the same time on the same system.

  (media-sound/lame-3.99.5-r1::gentoo, ebuild scheduled for merge) pulled in by
    >=media-sound/lame-3.98.3 required by (media-video/ffmpeg-1.0.7::gentoo, installed)
    media-sound/lame required by (media-libs/libquicktime-1.2.4::gentoo, installed)
    media-sound/lame required by (media-sound/skype-call-recorder-0.8::gentoo, installed)
    >=media-sound/lame-3.98.4 required by (media-sound/sox-14.4.1::gentoo, installed)
    >=media-sound/lame-3.70 required by (media-sound/audacity-2.0.3::gentoo, installed)
    >=media-sound/lame-3.95 required by (media-plugins/gst-plugins-lame-1.0.6::gentoo, installed)
    media-sound/lame required by (media-video/transcode-1.1.7-r2::gentoo, installed)
    >=media-sound/lame-3.95 required by (media-plugins/gst-plugins-lame-0.10.19::gentoo, installed)
    media-sound/lame required by (media-sound/grip-3.3.1-r3::gentoo, installed)

  (app-emulation/emul-linux-x86-medialibs-20130224::gentoo, installed) pulled in by
    ~app-emulation/emul-linux-x86-medialibs-20130224 required by (app-emulation/emul-linux-x86-sdl-20130224::gentoo, installed)
    ~app-emulation/emul-linux-x86-medialibs-20130224 required by (app-emulation/emul-linux-x86-soundlibs-20130224::gentoo, installed)
    ~app-emulation/emul-linux-x86-medialibs-20130224 required by (app-emulation/emul-linux-x86-gstplugins-20130224::gentoo, installed)
    app-emulation/emul-linux-x86-medialibs[development] required by (app-emulation/wine-1.6_rc3::gentoo, installed)
    ~app-emulation/emul-linux-x86-medialibs-20130224 required by (app-emulation/emul-linux-x86-qtlibs-20130224::gentoo, installed)
Comment 9 Nikos Chantziaras 2013-06-27 10:00:13 UTC
Guys, what's the upgrade path here? I get blockers:

[ebuild     U  ] app-emulation/emul-linux-x86-medialibs-20130224-r1 [20130224] ABI_X86="32%*" 
[blocks b      ] app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]" is blocking media-libs/xvid-1.3.2-r1, media-sound/lame-3.99.5-r1)
[blocks b      ] app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)]" is blocking media-libs/libvpx-1.2.0_pre20130625)

[ebuild     U  ] app-emulation/emul-linux-x86-soundlibs-20130224-r2 [20130224] ABI_X86="32%*" 
[blocks b      ] <=app-emulation/emul-linux-x86-soundlibs-20130224-r1 ("<=app-emulation/emul-linux-x86-soundlibs-20130224-r1" is blocking media-libs/audiofile-0.3.6-r1, media-libs/flac-1.2.1-r5, media-libs/webrtc-audio-processing-0.1-r1, media-libs/alsa-lib-1.0.27.1)
[blocks b      ] app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)] ("app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)]" is blocking media-sound/gsm-1.0.13-r1, media-libs/libogg-1.3.1, media-libs/libvorbis-1.3.3-r1, media-libs/audiofile-0.3.6-r1, media-libs/flac-1.2.1-r5, media-libs/libmodplug-0.8.8.4-r1, media-libs/webrtc-audio-processing-0.1-r1, media-libs/alsa-lib-1.0.27.1)
Comment 10 Nikos Chantziaras 2013-06-27 10:10:15 UTC
Brain fart. Please ignore. I had a stray package.mask that caused this (libvorbis).
Comment 11 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-06-29 08:07:11 UTC
Let's implement this. It will make maintenance and bugfixing easier.
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2013-08-02 08:30:03 UTC
Committed as multilib_is_native_abi().