Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 584392 - media-sound/audacious-3.7.1 and media-plugins/audacious-plugins-3.7.1 : build fixes for sys-libs/uclibc
Summary: media-sound/audacious-3.7.1 and media-plugins/audacious-plugins-3.7.1 : build...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Tony Vroon (RETIRED)
URL:
Whiteboard:
Keywords:
: 584388 (view as bug list)
Depends on:
Blocks: uclibc-porting
  Show dependency tree
 
Reported: 2016-05-28 10:53 UTC by René Rhéaume
Modified: 2017-12-24 21:52 UTC (History)
2 users (show)

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


Attachments
audacious-3.7.1.ebuild.patch (audacious-3.7.1.ebuild.patch,733 bytes, patch)
2016-05-28 10:54 UTC, René Rhéaume
Details | Diff
audacious-plugins-3.7.1.ebuild.patch (audacious-plugins-3.7.1.ebuild.patch,1.10 KB, patch)
2016-05-28 10:57 UTC, René Rhéaume
Details | Diff
audacious-3.7.1-uclibc.patch (audacious-3.7.1-uclibc.patch,1.18 KB, patch)
2016-05-28 11:05 UTC, René Rhéaume
Details | Diff
audacious-plugins-3.7.1-uclibc.patch (audacious-plugins-3.7.1.ebuild,4.13 KB, patch)
2016-05-28 11:07 UTC, René Rhéaume
Details | Diff
audacious-plugins-3.7.1-uclibc.patch (audacious-plugins-3.7.1-uclibc.patch,704 bytes, patch)
2016-05-28 11:09 UTC, René Rhéaume
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description René Rhéaume 2016-05-28 10:53:29 UTC
Audacious does not compile as is on uclibc. The main issue is a clash between C++ methods named feof and the C library function, which is solved by adding #include <cstdio>

Reproducible: Always

Steps to Reproduce:
1. emerge audacious
2.
3.
Actual Results:  
ERROR: media-sound/audacious-3.7.1::gentoo failed (compile phase):

Expected Results:  
Audacious installed on system
Comment 1 René Rhéaume 2016-05-28 10:54:17 UTC
Created attachment 435610 [details, diff]
audacious-3.7.1.ebuild.patch
Comment 2 René Rhéaume 2016-05-28 10:57:38 UTC
Created attachment 435612 [details, diff]
audacious-plugins-3.7.1.ebuild.patch

I also had to force enable nls on uclibc for audacious-plugins to build, even when that USE flag is masked in the uclibc profile.
Comment 3 René Rhéaume 2016-05-28 11:05:01 UTC
Created attachment 435614 [details, diff]
audacious-3.7.1-uclibc.patch
Comment 4 René Rhéaume 2016-05-28 11:07:56 UTC
Created attachment 435616 [details, diff]
audacious-plugins-3.7.1-uclibc.patch
Comment 5 René Rhéaume 2016-05-28 11:09:07 UTC
Created attachment 435618 [details, diff]
audacious-plugins-3.7.1-uclibc.patch
Comment 6 René Rhéaume 2016-05-28 13:14:50 UTC
*** Bug 584388 has been marked as a duplicate of this bug. ***
Comment 7 Anthony Basile gentoo-dev 2016-05-28 13:55:14 UTC
(In reply to René Rhéaume from comment #2)
> Created attachment 435612 [details, diff] [details, diff]
> audacious-plugins-3.7.1.ebuild.patch
> 
> I also had to force enable nls on uclibc for audacious-plugins to build,
> even when that USE flag is masked in the uclibc profile.

this doesn't look right.  1) elibc_uclibc should not be added to the USE flags, its a hidden use expand, so its automatically available, 2) forcing nls is not the way to fix it, we have to fix whatever's going on in audacious-plugins.
Comment 8 Anthony Basile gentoo-dev 2016-05-28 13:56:58 UTC
(In reply to René Rhéaume from comment #3)
> Created attachment 435614 [details, diff] [details, diff]
> audacious-3.7.1-uclibc.patch

did you try building with CPPLAGS=-D_GNU_SOURCE ???
Comment 9 Anthony Basile gentoo-dev 2016-05-28 13:57:39 UTC
(In reply to René Rhéaume from comment #5)
> Created attachment 435618 [details, diff] [details, diff]
> audacious-plugins-3.7.1-uclibc.patch

these added headers are safe.
Comment 10 René Rhéaume 2016-05-29 01:26:25 UTC
(In reply to Anthony Basile from comment #8)
> (In reply to René Rhéaume from comment #3)
> > Created attachment 435614 [details, diff] [details, diff] [details, diff]
> > audacious-3.7.1-uclibc.patch
> 
> did you try building with CPPLAGS=-D_GNU_SOURCE ???

I just tried as a substitution for my patch and that does not fix the build at all. Why would it be wrong to #include <cstdio> in audacious and correct to do the same in audacious-plugins?
Comment 11 René Rhéaume 2016-05-29 01:42:30 UTC
(In reply to Anthony Basile from comment #7)
> (In reply to René Rhéaume from comment #2)
> > Created attachment 435612 [details, diff] [details, diff] [details, diff]
> > audacious-plugins-3.7.1.ebuild.patch
> > 
> > I also had to force enable nls on uclibc for audacious-plugins to build,
> > even when that USE flag is masked in the uclibc profile.
> 
> this doesn't look right.  1) elibc_uclibc should not be added to the USE
> flags, its a hidden use expand, so its automatically available, 2) forcing
> nls is not the way to fix it, we have to fix whatever's going on in
> audacious-plugins.

There is something wrong with NLS support not only in audacious-plugins, but in audacious too. libaudcore is linked against libintl, as reported by lddtree

$ lddtree /usr/lib/libaudcore.so
libaudcore.so => /usr/lib/libaudcore.so (interpreter => none)
    libpthread.so.0 => /lib/libpthread.so.0
        ld64-uClibc.so.0 => /lib/ld64-uClibc.so.0
        libdl.so.0 => /lib/libdl.so.0
    libiconv.so.2 => /lib/libiconv.so.2
    libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0
    libintl.so.8 => /usr/lib/libintl.so.8
    libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0
    libstdc++.so.6 => /usr/lib/gcc/x86_64-gentoo-linux-uclibc/4.8.4/libstdc++.so.6
    libm.so.0 => /lib/libm.so.0
    libgcc_s.so.1 => /usr/lib/gcc/x86_64-gentoo-linux-uclibc/4.8.4/libgcc_s.so.1
    libc.so.0 => /lib/libc.so.0

...even when nls USE flag is masked
$ emerge -1pv audacious audacious-plugins

These are the packages that would be merged, in order:

Calculating dependencies  ... done!
[ebuild   R    ] media-sound/audacious-3.7.1::repzilon  USE="chardet gtk -gtk3 (-nls) -qt5" 0 KiB
[ebuild   R    ] media-plugins/audacious-plugins-3.7.1::repzilon  USE="aac -adplug alsa -bs2b -cdda -cue ffmpeg flac -fluidsynth -gnome gtk -gtk3 -http -jack -lame libnotify libsamplerate libsoxr -lirc -mms mp3 (-nls) -pulseaudio -qt5 -scrobbler sdl (-sid) sndfile vorbis -wavpack" 0 KiB

Total: 2 packages (2 reinstalls), Size of downloads: 0 KiB
Comment 12 René Rhéaume 2016-05-29 01:47:48 UTC
(In reply to René Rhéaume from comment #11)
> (In reply to Anthony Basile from comment #7)
> > (In reply to René Rhéaume from comment #2)
> > > Created attachment 435612 [details, diff] [details, diff] [details, diff] [details, diff]
> > > audacious-plugins-3.7.1.ebuild.patch
> > > 
> > > I also had to force enable nls on uclibc for audacious-plugins to build,
> > > even when that USE flag is masked in the uclibc profile.
> > 
> > this doesn't look right.  1) elibc_uclibc should not be added to the USE
> > flags, its a hidden use expand, so its automatically available, 2) forcing
> > nls is not the way to fix it, we have to fix whatever's going on in
> > audacious-plugins.
> 
> There is something wrong with NLS support not only in audacious-plugins, but
> in audacious too. libaudcore is linked against libintl, as reported by
> lddtree

I got fooled by lddtree. libintl is pulled by GLib. By the way, both Audacious and its plugins are translated in French on my system :-P
Comment 13 David Seifert gentoo-dev 2017-11-06 06:04:25 UTC
Please try 3.9 and if it fails again, update the patches and I will include (and try to upstream them).
Comment 14 Larry the Git Cow gentoo-dev 2017-12-24 21:52:29 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bf878c27023b60b95dc0ed7fbece859ea3b385e7

commit bf878c27023b60b95dc0ed7fbece859ea3b385e7
Author:     David Seifert <soap@gentoo.org>
AuthorDate: 2017-12-24 21:43:10 +0000
Commit:     David Seifert <soap@gentoo.org>
CommitDate: 2017-12-24 21:52:03 +0000

    media-plugins/audacious-plugins: Remove old
    
    Closes: https://bugs.gentoo.org/558228
    Closes: https://bugs.gentoo.org/562094
    Closes: https://bugs.gentoo.org/564498
    Closes: https://bugs.gentoo.org/584392
    Package-Manager: Portage-2.3.19, Repoman-2.3.6

 media-plugins/audacious-plugins/Manifest           |   6 -
 .../audacious-plugins-3.6.2-r1.ebuild              | 133 ----------------
 .../audacious-plugins-3.7.1-r1.ebuild              | 173 --------------------
 .../audacious-plugins-3.7.1.ebuild                 | 152 ------------------
 .../audacious-plugins-3.8.2.ebuild                 | 175 ---------------------
 .../files/audacious-plugins-3.7.1-gl-jack.patch    |  24 ---
 profiles/package.mask                              |   1 -
 7 files changed, 664 deletions(-)

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21583681656bc8cbd1a4a7f0c6939966a765b54c

commit 21583681656bc8cbd1a4a7f0c6939966a765b54c
Author:     David Seifert <soap@gentoo.org>
AuthorDate: 2017-12-24 21:41:10 +0000
Commit:     David Seifert <soap@gentoo.org>
CommitDate: 2017-12-24 21:51:58 +0000

    media-sound/audacious: Remove old
    
    Closes: https://bugs.gentoo.org/564498
    Closes: https://bugs.gentoo.org/584392
    Closes: https://bugs.gentoo.org/596834
    Closes: https://bugs.gentoo.org/605042
    Closes: https://bugs.gentoo.org/611272
    Package-Manager: Portage-2.3.19, Repoman-2.3.6

 media-sound/audacious/Manifest                     |  6 --
 media-sound/audacious/audacious-3.6.2.ebuild       | 69 ------------------
 media-sound/audacious/audacious-3.7.1-r1.ebuild    | 84 ----------------------
 media-sound/audacious/audacious-3.7.1.ebuild       | 80 ---------------------
 media-sound/audacious/audacious-3.8.2.ebuild       | 78 --------------------
 .../audacious-3.7.1-c++11-throw-in-dtors.patch     | 39 ----------
 media-sound/audacious/metadata.xml                 |  1 -
 profiles/package.mask                              |  1 -
 8 files changed, 358 deletions(-)