Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 577154 - app-emulation/wine[oss] needs verbose warning for linux users
Summary: app-emulation/wine[oss] needs verbose warning for linux users
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Wine Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-03-12 14:42 UTC by Linubie
Modified: 2016-08-04 19:03 UTC (History)
4 users (show)

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


Attachments
build.log (build.log,28.11 KB, text/x-log)
2016-03-12 14:42 UTC, Linubie
Details
config.log (config.log,426.98 KB, text/x-log)
2016-03-12 14:43 UTC, Linubie
Details
emerge --info (emerge_info.txt,6.44 KB, text/plain)
2016-03-12 14:44 UTC, Linubie
Details
kernel .config (.config,117.77 KB, text/plain)
2016-03-12 18:02 UTC, Linubie
Details
wine-1.9.5-abi_x86_32.x86-config.log.gz (wine-1.9.5-abi_x86_32.x86-config.log.gz,24.13 KB, application/gzipped-tar)
2016-03-13 02:09 UTC, Fabio Rossi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Linubie 2016-03-12 14:42:54 UTC
Created attachment 428036 [details]
build.log

Failed to emerge app-emulation/wine-9999, Log file:

>>>  '/var/tmp/portage/app-emulation/wine-9999/temp/build.log'

 * Messages for package app-emulation/wine-9999:

 * ERROR: app-emulation/wine-9999::gentoo failed (configure phase):
 *   econf failed
 * 
 * Call stack:
 *               ebuild.sh, line  133:  Called src_configure
 *             environment, line 5038:  Called multilib-minimal_src_configure
 *             environment, line 4066:  Called multilib_foreach_abi 'multilib-minimal_abi_src_configure'
 *             environment, line 4280:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'
 *             environment, line 3996:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_configure'
 *             environment, line 3994:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_configure'
 *             environment, line 1082:  Called multilib-minimal_abi_src_configure
 *             environment, line 4060:  Called multilib_src_configure
 *             environment, line 4503:  Called econf '--sysconfdir=/etc/wine' '--with-alsa' '--without-capi' '--with-cms' '--with-cups' '--with-curses' '--with-dbus' '--with-fontconfig' '--with-gnutls' '--enable-mshtml' '--with-gphoto' '--without-gsm' '--without-gstreamer' '--without-hal' '--with-jpeg' '--without-ldap' '--enable-mscoree' '--with-mpg123' '--without-netapi' '--with-gettext' '--with-openal' '--without-opencl' '--with-opengl' '--without-osmesa' '--with-oss' '--without-pcap' '--with-png' '--without-pulse' '--with-pthread' '--with-sane' '--disable-tests' '--with-freetype' '--with-v4l' '--with-x' '--with-xcomposite' '--with-xinerama' '--with-xml' '--with-xslt' '--disable-win64'
 *        phase-helpers.sh, line  662:  Called __helpers_die 'econf failed'
 *   isolated-functions.sh, line  117:  Called die
 * The specific snippet of code:
 *              die "$@"
 * 
 * If you need support, post the output of `emerge --info '=app-emulation/wine-9999::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=app-emulation/wine-9999::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/app-emulation/wine-9999/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-emulation/wine-9999/temp/environment'.
 * Working directory: '/var/tmp/portage/app-emulation/wine-9999/work/wine-9999-abi_x86_32.x86'
 * S: '/var/tmp/portage/app-emulation/wine-9999/work/wine-9999'
Comment 1 Linubie 2016-03-12 14:43:31 UTC
Created attachment 428038 [details]
config.log
Comment 2 Linubie 2016-03-12 14:44:46 UTC
Created attachment 428040 [details]
emerge --info
Comment 3 Adam Feldman gentoo-dev 2016-03-12 17:14:24 UTC
Can you also post your kernel config?
Comment 4 Linubie 2016-03-12 18:02:34 UTC
Created attachment 428046 [details]
kernel .config
Comment 5 Adam Feldman gentoo-dev 2016-03-12 18:20:44 UTC
(In reply to Linubie from comment #4)
> Created attachment 428046 [details]
> kernel .config

and emerge --info media-sound/oss please
Comment 6 Linubie 2016-03-12 18:27:31 UTC
emerge --info media-sound/oss

emerge: there are no ebuilds to satisfy "media-sound/oss".

emerge: searching for similar names...
emerge: Maybe you meant any of these: media-sound/sox, media-sound/snd, media-sound/sfc?
Comment 7 Adam Feldman gentoo-dev 2016-03-12 20:18:03 UTC
Can you confirm if you can reproduce this with 1.9.4?  And what was the last version that you know that oss worked?  I think I have found the commit that causes the regression?
Comment 8 Linubie 2016-03-12 21:03:22 UTC
This is the last version of wine I compiled successfully:

wine --version
wine-1.9.4-148-g1510b8b

ls -l /usr/bin/wine
-rwxr-xr-x 1 root root 9584 26. Feb 18:25 /usr/bin/wine

I am not using oss only alsa and pulseaudio is running on this machine.

ps aux | grep oss
root      5993  0.0  0.0  12764  2144 pts/0    S+   21:58   0:00 grep --colour=auto oss
Comment 9 Adam Feldman gentoo-dev 2016-03-12 21:21:25 UTC
(In reply to Linubie from comment #8)
> This is the last version of wine I compiled successfully:
> 
> wine --version
> wine-1.9.4-148-g1510b8b
> 
> ls -l /usr/bin/wine
> -rwxr-xr-x 1 root root 9584 26. Feb 18:25 /usr/bin/wine
> 
> I am not using oss only alsa and pulseaudio is running on this machine.
> 
> ps aux | grep oss
> root      5993  0.0  0.0  12764  2144 pts/0    S+   21:58   0:00 grep
> --colour=auto oss

You aren't using oss, but you emerged wine with oss?
Comment 10 Linubie 2016-03-12 22:16:57 UTC
Yes you are right, wine is compiled with oss. To be honest I don't know when it was set, because I have never used it. I have now unset it and it is right now re-compiling the packages that were compiled with that useflag.

I try compiling wine later on.
Comment 11 Linubie 2016-03-12 22:58:17 UTC
I guess you already know, that wine compiles now with "oss" useflag turned off. I am sorry that I made a mess.
Comment 12 Adam Feldman gentoo-dev 2016-03-13 00:19:00 UTC
(In reply to Linubie from comment #11)
> I guess you already know, that wine compiles now with "oss" useflag turned
> off. I am sorry that I made a mess.

No need to apologize.  I believe there is actually a bug where it used to compile with OSS and now doesn't, by sheer coincidence XD
Comment 13 Fabio Rossi 2016-03-13 02:09:33 UTC
Created attachment 428092 [details]
wine-1.9.5-abi_x86_32.x86-config.log.gz

same build error, I think the relevant part is 

error: OSS sound system found but too old (OSSv4 needed)
Comment 14 Adam Feldman gentoo-dev 2016-03-13 03:59:11 UTC
(In reply to Fabio Rossi from comment #13)
> Created attachment 428092 [details]
> wine-1.9.5-abi_x86_32.x86-config.log.gz
> 
> same build error, I think the relevant part is 
> 
> error: OSS sound system found but too old (OSSv4 needed)

What do you have installed for your OSS support?
Comment 15 Adam Feldman gentoo-dev 2016-03-13 08:53:13 UTC
(In reply to Fabio Rossi from comment #13)
> Created attachment 428092 [details]
> wine-1.9.5-abi_x86_32.x86-config.log.gz
> 
> same build error, I think the relevant part is 
> 
> error: OSS sound system found but too old (OSSv4 needed)

And if you can confirm what the last version of wine that you successfully built with OSS was.   I suspect there was a patch between 1.9.4 and 1.9.5 which broke it, so if you can confirm what versions last worked, that'd be great.
Comment 16 Linubie 2016-03-13 09:39:11 UTC
From yesterday night on going I am using latest git again.
The version that was the last I compiled succesfully with "oss" useflag was:

wine --version
wine-1.9.4-148-g1510b8b
Comment 17 Fabio Rossi 2016-03-13 10:24:00 UTC
I confirm that the building works with version 1.9.4 but OSS was still not supported. At the end of the configuration indeed I get:

configure: OSS sound system found but too old (OSSv4 needed), OSS won't be supported.

but the error is not blocking with 1.9.4. 

With version 1.9.5 they changed the behaviour with git commit 850df9d5a5bedbcd50f7dbbcb2c36fdec6b65a13 and now the checks lead to a failure of the compilation.
Comment 18 Adam Feldman gentoo-dev 2016-03-13 11:58:18 UTC
(In reply to Fabio Rossi from comment #17)
> I confirm that the building works with version 1.9.4 but OSS was still not
> supported. At the end of the configuration indeed I get:
> 
> configure: OSS sound system found but too old (OSSv4 needed), OSS won't be
> supported.
> 
> but the error is not blocking with 1.9.4. 
> 
> With version 1.9.5 they changed the behaviour with git commit
> 850df9d5a5bedbcd50f7dbbcb2c36fdec6b65a13 and now the checks lead to a
> failure of the compilation.

Right, my investigation found that as well.   What's the last wine version that you had OSS working in?
Comment 19 Fabio Rossi 2016-03-13 12:06:32 UTC
(In reply to NP-Hardass from comment #18)

> Right, my investigation found that as well.   What's the last wine version
> that you had OSS working in?

Actually I don't use OSS but pulseaudio but the OSS was enabled
Comment 20 Adam Feldman gentoo-dev 2016-03-13 14:29:44 UTC
(In reply to Fabio Rossi from comment #19)
> (In reply to NP-Hardass from comment #18)
> 
> > Right, my investigation found that as well.   What's the last wine version
> > that you had OSS working in?
> 
> Actually I don't use OSS but pulseaudio but the OSS was enabled

I'm not following... What enabled the OSS USE flag?
Comment 21 Fabio Rossi 2016-03-14 14:52:03 UTC
(In reply to NP-Hardass from comment #20)
> (In reply to Fabio Rossi from comment #19)
> > (In reply to NP-Hardass from comment #18)
> > 
> > > Right, my investigation found that as well.   What's the last wine version
> > > that you had OSS working in?
> > 
> > Actually I don't use OSS but pulseaudio but the OSS was enabled
> 
> I'm not following... What enabled the OSS USE flag?

I meant to say that I had enabled OSS in make.conf but I'm using pulseaudio as sound server. So I don't know which is the latest version of wine working with OSS :-(
Comment 22 Adam Feldman gentoo-dev 2016-03-14 17:37:31 UTC
(In reply to Fabio Rossi from comment #21)
> (In reply to NP-Hardass from comment #20)
> > (In reply to Fabio Rossi from comment #19)
> > > (In reply to NP-Hardass from comment #18)
> > > 
> > > > Right, my investigation found that as well.   What's the last wine version
> > > > that you had OSS working in?
> > > 
> > > Actually I don't use OSS but pulseaudio but the OSS was enabled
> > 
> > I'm not following... What enabled the OSS USE flag?
> 
> I meant to say that I had enabled OSS in make.conf but I'm using pulseaudio
> as sound server. So I don't know which is the latest version of wine working
> with OSS :-(

Ah.  So, pulseaudio doesn't implement OSS, it just hooks it for playback.  You don't have OSSv4 installed, hence the compilation failure.
Comment 23 Fabio Rossi 2016-03-14 20:51:04 UTC
(In reply to NP-Hardass from comment #22)
> (In reply to Fabio Rossi from comment #21)
> > (In reply to NP-Hardass from comment #20)
> > > (In reply to Fabio Rossi from comment #19)
> > > > (In reply to NP-Hardass from comment #18)
> > > > 
> > > > > Right, my investigation found that as well.   What's the last wine version
> > > > > that you had OSS working in?
> > > > 
> > > > Actually I don't use OSS but pulseaudio but the OSS was enabled
> > > 
> > > I'm not following... What enabled the OSS USE flag?
> > 
> > I meant to say that I had enabled OSS in make.conf but I'm using pulseaudio
> > as sound server. So I don't know which is the latest version of wine working
> > with OSS :-(
> 
> Ah.  So, pulseaudio doesn't implement OSS, it just hooks it for playback. 
> You don't have OSSv4 installed, hence the compilation failure.

Thinking better in the kernel I have compiled OSS compatibility layer for ALSA but no user-space software (if exists) for OSS. The sys-kernel/linux-headers-4.3 package exposes an OSS API, /usr/include/linux/soundcard.h reports version 3.8.2 which is less than v4 required by wine-1.9.4. I don't have any experience with OSS but looking at other ebuilds there is no specific package activated by the oss useflag. What then you mean with "OSSv4 installed"?
Comment 24 Adam Feldman gentoo-dev 2016-03-15 13:23:06 UTC
(In reply to Fabio Rossi from comment #23)
> Thinking better in the kernel I have compiled OSS compatibility layer for
> ALSA but no user-space software (if exists) for OSS. The
> sys-kernel/linux-headers-4.3 package exposes an OSS API,
> /usr/include/linux/soundcard.h reports version 3.8.2 which is less than v4
> required by wine-1.9.4. I don't have any experience with OSS but looking at
> other ebuilds there is no specific package activated by the oss useflag.
> What then you mean with "OSSv4 installed"?

https://wiki.gentoo.org/wiki/OSS
The package for linux, media-sound/oss only exists in an overlay, and OSS is provided in BSD (which we support), hence the lack of dependency. Can't add a dependency on something that doesn't exist in the main repo, unfortunately as it would never be satisfiable for 99% of users.
Comment 25 Pavel Goran 2016-04-02 04:53:36 UTC
I just had build failure with wine-1.9.5 due to this problem.

(In reply to NP-Hardass from comment #24)
> https://wiki.gentoo.org/wiki/OSS
> The package for linux, media-sound/oss only exists in an overlay, and OSS is
> provided in BSD (which we support), hence the lack of dependency. Can't add
> a dependency on something that doesn't exist in the main repo, unfortunately
> as it would never be satisfiable for 99% of users.

I think having portage complain about a missing/unsatisfiable dependency (if USE=oss) is better than having the build just fail. (Maybe add some message with explanations, as well.) This way, users will know what USE flag to disable.

Although the correct solution would probably be masking this USE flag for the package in linux profiles. (Not sure if this is possible.)
Comment 26 Maciej S. Szmigiero 2016-04-30 13:50:27 UTC
I've also hit this bug with wine-1.9.8.

Since this breaks emerges I think (as Pavel has suggested) that this package "oss" USE flag should be masked in profiles where OSSv4 package is not available.

A note at the top of https://wiki.gentoo.org/wiki//etc/portage/profile/package.use.mask
suggests this should be possible.
Comment 27 Adam Feldman gentoo-dev 2016-06-01 17:16:44 UTC
OSS support is provided natively in Gentoo/FreeBSD or in linux via >=media-sound/oss-4, which is not in the main repo.  Will be adding a check to pkg_pretend to warn linux users without media-sound/oss installed
Comment 28 Adam Feldman gentoo-dev 2016-07-10 05:35:41 UTC
Resolved in b64196973d3c0b1094647c7b331ddc12af364539
Comment 29 hash 2016-08-02 20:08:28 UTC
All good and nice but where kernel_FreeBSD crawl out of?
I used OSSv4 as soon as oss-overlay came in to existence, and used oss-devel since then with no problem and never needed kernel_FreeBSD USE flag, what is that even needed for in Wine?!
Comment 30 Adam Feldman gentoo-dev 2016-08-02 21:18:46 UTC
(In reply to hash from comment #29)
> All good and nice but where kernel_FreeBSD crawl out of?
> I used OSSv4 as soon as oss-overlay came in to existence, and used oss-devel
> since then with no problem and never needed kernel_FreeBSD USE flag, what is
> that even needed for in Wine?!

I am not sure I understand what you mean....  

    if use oss && ! use kernel_FreeBSD; then
        local oss_vers=$(best_version media-sound/oss)
        if [[ -z ${oss_vers} ]] || ! version_is_at_least "4" ${oss_vers}; then
            eerror "You cannot build wine with USE=oss without having support from a"
            eerror "FreeBSD kernel or >=media-sound/oss-4 (only available through external repos)"
            eerror
            die
        fi
    fi


if the user has selected oss, and they are not using FreeBSD (because the ebuild supports gentoo-freebsd users), then check what version of oss they are using and die if they don't have oss-4 installed.  The linux user has nothing to do with kernel_FreeBSD and the logic checks that the user has the package installed if they aren't using FreeBSD.
Comment 31 hash 2016-08-03 11:34:36 UTC
You see, in old oss-overlay there was, and I use that now, two OSSv4 ebuilds, one: media-sound/oss and media-sound/oss-devel
Only media-sound/oss-devel have 9999 version.
And that's one I have installed (=media-sound/oss-devel-9999), although I can of cause rename it...
Comment 32 Adam Feldman gentoo-dev 2016-08-03 17:26:14 UTC
(In reply to hash from comment #31)
> You see, in old oss-overlay there was, and I use that now, two OSSv4
> ebuilds, one: media-sound/oss and media-sound/oss-devel
> Only media-sound/oss-devel have 9999 version.
> And that's one I have installed (=media-sound/oss-devel-9999), although I
> can of cause rename it...

What does that have to do with FreeBSD? :P

Yes, you should rename your live package to media-sound/oss-9999.  There likely is no good reason to have it separate and I don't really have much intention of editing all the ebuilds to account for random, nonstandard package namings from users. (note that eix -R lists oss, but no oss-devel, so it's not even common).
Comment 33 hash 2016-08-04 19:03:12 UTC
Well, I did renamed ebuild to "media-sound/oss" but now "media-sound/oss-9999" do not satisfy ">=media-sound/oss-4" condition.