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

Bug 308141

Summary: app-emulation/wine-1.1.40 fails to build with USE=pulseaudio
Product: Gentoo Linux Reporter: Maciej Grela (inactive account) <thermal>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Maciej Grela (inactive account) 2010-03-07 00:56:43 UTC
Hi,

I've been trying to build a new wine with pulseaudio supported via the winepulse patches. Unfortunately, the build fails with the following error:

../../tools/makedep  -C. -S../.. -T../.. -I/usr/include/freetype2  afm.c bitblt.c bitmap.c brush.c builtin.c clipping.c color.c data/AvantGarde_Book.c data/AvantGarde_BookOblique.c data/AvantGarde_Demi.c data/AvantGarde_DemiOblique.c data/Bookman_Demi.c data/Bookman_DemiItalic.c data/Bookman_Light.c data/Bookman_LightItalic.c data/Courier.c data/Courier_Bold.c data/Courier_BoldOblique.c data/Courier_Oblique.c data/Helvetica.c data/Helvetica_Bold.c data/Helvetica_BoldOblique.c data/Helvetica_Narrow.c data/Helvetica_Narrow_Bold.c data/Helvetica_Narrow_BoldOblique.c data/Helvetica_Narrow_Oblique.c data/Helvetica_Oblique.c data/NewCenturySchlbk_Bold.c data/NewCenturySchlbk_BoldItalic.c data/NewCenturySchlbk_Italic.c data/NewCenturySchlbk_Roman.c data/Palatino_Bold.c data/Palatino_BoldItalic.c data/Palatino_Italic.c data/Palatino_Roman.c data/Symbol.c data/Times_Bold.c data/Times_BoldItalic.c data/Times_Italic.c data/Times_Roman.c data/ZapfChancery_MediumItalic.c data/ZapfDingbats.c data/agl.c download.c driver.c encode.c escape.c font.c glyphlist.c graphics.c init.c pen.c ppd.c ps.c text.c truetype.c type1.c type1afm.c type42.c wps_Bg.rc wps_Cs.rc wps_Da.rc wps_De.rc wps_En.rc wps_Es.rc wps_Fr.rc wps_Hu.rc wps_It.rc wps_Ja.rc wps_Ko.rc wps_Lt.rc wps_Nl.rc wps_No.rc wps_Pl.rc wps_Pt.rc wps_Ro.rc wps_Ru.rc wps_Si.rc wps_Sk.rc wps_Sv.rc wps_Tr.rc wps_Zh.rc               
make[1]: Leaving directory `/var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/dlls/wineps.drv'
config.status: creating dlls/wineps16.drv16/Makefile
make[1]: Entering directory `/var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/dlls/wineps16.drv16'
../../tools/makedep  -C. -S../.. -T../..  driver.c                
make[1]: Leaving directory `/var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/dlls/wineps16.drv16'
make: *** No rule to make target `dlls/winepulse.drv/Makefile.in', needed by `dlls/winepulse.drv/__depend__'.  Stop.
/usr/libexec/paludis/utils/emake: emake returned error 2

!!! ERROR in app-emulation/wine-1.1.40::gentoo:
!!! In src_configure at line 4585
!!! depend

!!! Call stack:
!!!    * src_configure (/var/tmp/paludis/app-emulation-wine-1.1.40/temp/loadsaveenv:4585)
!!!    * ebuild_f_configure (/usr/libexec/paludis/2/src_configure.bash:54)
!!!    * ebuild_main (/usr/libexec/paludis/ebuild.bash:616)
!!!    * main (/usr/libexec/paludis/ebuild.bash:644)

diefunc: making ebuild PID 3859 exit with error
die trap: exiting with error.

Install error:
  * In program paludis -1 -i wine:
  * When performing install action from command line:
  * When executing install task:
  * When installing 'app-emulation/wine-1.1.40:0::gentoo' replacing { 'app-emulation/wine-1.1.38:0::installed' }:
  * When running an ebuild command on 'app-emulation/wine-1.1.40:0::gentoo':
  * Install failed for 'app-emulation/wine-1.1.40:0::gentoo'


*** Messages log: /var/log/paludis/1267922143-install-app-emulation_wine-1.1.40:0::gentoo.messages
*** Output log: /var/log/paludis/1267922143-install-app-emulation_wine-1.1.40:0::gentoo.out

Summary of failures:

* app-emulation/wine-1.1.40:0::gentoo: failure

Total: 1 package, 0 successes, 0 skipped, 1 failure, 0 unreached

Resume command: paludis --log-level qa --preserve-world --install --serialised 0.37 'package;=app-emulation/wine-1.1.40:0::gentoo;installed;has_all_deps;P'

 * You have 1 unread news items (use 'eselect news' to read)

 * Searching for configuration files requiring action...
 * No configuration file updates required

8< --------------------------

During my investigation I found, that the reason for this is that the winepulse patches are incorrectly applied causing the dlls/winepulse.drv directory to be missing. This is because they are git patches and after applying them using -p0 (which epatch does first) the winepulse.drv directory ends up in a spurious b/ dir in work. See below:

4pll00555 ~ # ls -l /var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/
razem 3012
-rw-r--r--   1 root root   13485 03-05 19:35 aclocal.m4
-rw-r--r--   1 root root   29294 03-05 19:35 ANNOUNCE
-rw-r--r--   1 root root   17542 03-05 19:35 AUTHORS
drwxr-xr-x   2 root root    4096 03-07 01:35 autom4te.cache
drwxr-xr-x   3 root root    4096 03-07 01:35 b
-rw-r--r--   1 root root 1309658 03-07 01:37 config.log
-rwxr-xr-x   1 root root  425674 03-07 01:36 config.status
-rwxr-xr-x   1 root root  702576 03-07 01:35 configure
-rw-r--r--   1 root root   99418 03-07 01:35 configure.ac
-rw-r--r--   1 root root   26434 03-05 19:35 COPYING.LIB
drwxr-xr-x 364 root root   12288 03-07 01:36 dlls
drwxr-xr-x   2 root root    4096 03-05 19:35 documentation
drwxr-xr-x   2 root root    4096 03-05 19:35 fonts
drwxr-xr-x   5 root root   20480 03-07 01:36 include
drwxr-xr-x   5 root root    4096 03-05 19:35 libs
-rw-r--r--   1 root root     824 03-05 19:35 LICENSE
-rw-r--r--   1 root root    1324 03-05 19:35 LICENSE.OLD
drwxr-xr-x   2 root root    4096 03-05 19:35 loader
-rw-r--r--   1 root root  288751 03-07 01:36 Makefile
-rw-r--r--   1 root root    7478 03-05 19:35 Makefile.in
-rw-r--r--   1 root root    8067 03-07 01:36 Make.rules
-rw-r--r--   1 root root    7860 03-05 19:35 Make.rules.in
-rw-r--r--   1 root root    9592 03-07 01:36 Maketest.rules
-rw-r--r--   1 root root    1541 03-05 19:35 Maketest.rules.in
drwxr-xr-x  56 root root    4096 03-07 01:36 programs
-rw-r--r--   1 root root    6384 03-05 19:35 README
drwxr-xr-x   2 root root    4096 03-05 19:35 server
drwxr-xr-x   9 root root    4096 03-07 01:36 tools
-rw-r--r--   1 root root      20 03-05 19:35 VERSION
lrwxrwxrwx   1 root root      17 03-07 01:36 wine -> tools/winewrapper
4pll00555 ~ # ls -l /var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/b
razem 4
drwxr-xr-x 3 root root 4096 03-07 01:35 dlls
4pll00555 ~ # ls -l /var/tmp/paludis/app-emulation-wine-1.1.40/work/wine-1.1.40/b/dlls/
razem 4
drwxr-xr-x 2 root root 4096 03-07 01:35 winepulse.drv

Do you have any ideas how can this be fixed ? Can epatch be told not to try -p0 somehow but instead go straight to -p1 ? I haven`t found any options to patch which could be added to EPATCH_OPTIONS forbidding it from creating the b/ directory either.




Reproducible: Always

Steps to Reproduce:
1. paludis -i =app-emulation/wine-1.1.40
2.
3.




4pll00555 ~ # paludis --info
paludis 0.44.1
Paludis build information:
    Compiler:
        CXX:                   x86_64-pc-linux-gnu-g++ 4.4.2
        CXXFLAGS:               -O2 -pipe -march=nocona
        LDFLAGS:               -Wl,--as-needed
        DATE:                  2010-01-20T04:22:59+0100

    Libraries:
        C++ Library:           GNU libstdc++ 20091015

    Paths:
        DATADIR:               /usr/share
        LIBDIR:                /usr/lib64
        LIBEXECDIR:            /usr/libexec
        SYSCONFDIR:            /etc
        PYTHONINSTALLDIR:      
        RUBYINSTALLDIR:        /usr/lib64/ruby/site_ruby/1.8/x86_64-linux

System:
    Linux 4pll00555 2.6.33-rc8-t61 #3 SMP PREEMPT Fri Feb 19 12:09:01 CET 2010 x86_64 Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz GenuineIntel GNU/Linux

Reduced Privs:
    reduced_uid:               101
    reduced_uid->name:         paludisbuild
    reduced_uid->dir:          /var/tmp/paludis
    reduced_gid:               407
    reduced_gid->name:         paludisbuild

Environment:
    Format:                    paludis
    Config dir:                /etc/paludis
    World file:                /var/db/pkg/world

Repository layman:
    format:                    unavailable
    location:                  /var/paludis/repositories/layman
    sync:                      tar+http://git.exherbo.org/layman_repositories.tar.bz2
    sync_options:              

Repository installed-virtuals:
    format:                    installed_virtuals
    root:                      /

Repository virtuals:
    format:                    virtuals

Repository gentoo:
    format:                    ebuild
    location:                  /usr/portage
    append_repository_name_to_write_cache: true
    binary_destination:        false
    binary_keywords:           
    binary_uri_prefix:         
    builddir:                  /var/tmp/paludis
    cache:                     /usr/portage/metadata/cache
    distdir:                   /usr/portage/distfiles
    eapi_when_unknown:         0
    eapi_when_unspecified:     0
    eclassdirs:                /usr/portage/eclass
    ignore_deprecated_profiles: false
    layout:                    traditional
    names_cache:               /var/cache/paludis/names
    newsdir:                   /usr/portage/metadata/news
    profile_eapi_when_unspecified: 0
    profile_layout:            traditional
    profiles:                  /usr/portage/profiles/default/linux/amd64/10.0/desktop
    securitydir:               /usr/portage/metadata/glsa
    setsdir:                   /usr/portage/sets
    sync:                      rsync://gentoo.prz.rzeszow.pl/gentoo-portage tar+http://gentoo.prz.rzeszow.pl/snapshots/portage-latest.tar.lzma
    sync_options:              
    use_manifest:              use
    write_cache:               /var/empty

    Package information:
        app-admin/eselect-compiler: (none)
        app-shells/bash:       4.1_p2
        dev-java/java-config:  2.1.10
        dev-lang/python:       2.4.4-r13 2.5.4-r2 2.6.4-r1 3.1.1-r1
        dev-python/pycrypto:   (none)
        dev-util/ccache:       (none)
        dev-util/cmake:        2.8.0-r2
        dev-util/confcache:    (none)
        sys-apps/baselayout:   2.0.1
        sys-apps/openrc:       0.6.0-r1
        sys-apps/sandbox:      2.2
        sys-devel/autoconf:    2.13 2.65
        sys-devel/automake:    1.10.3 1.11.1 1.5 1.7.9-r2 1.8.5-r3 1.9.6-r3
        sys-devel/binutils:    2.20-r1
        sys-devel/gcc:         4.1.2 4.4.3
        sys-devel/gcc-config:  1.4.1
        sys-devel/libtool:     2.2.6b
        virtual/os-headers:    2.6.32 (for sys-kernel/linux-headers::installed)
Comment 1 Stefan Reimer 2010-03-07 02:44:14 UTC
Hi,
Apply following patch to wine-1.1.40 to make it work, or see
http://www.startux.de/index.php/articles/65-wine-ebuild-integrating-pulseaudio
to use my overlay.

Cheers,
Stefan


*** portage/app-emulation/wine/wine-1.1.40.ebuild	2010-03-05 12:17:12.000000000 -0800
--- overlays/quarks_gentoo_overlay/app-emulation/wine/wine-1.1.40.ebuild	2010-03-06 17:20:07.886909765 -0800
***************
*** 103,108 ****
--- 103,109 ----
  
  src_prepare() {
  	if use pulseaudio ; then
+ 		EPATCH_OPTS="-p1" 
  		epatch `pulse_patches "${DISTDIR}"`
  		eautoreconf
  	fi
Comment 2 Stefan Reimer 2010-03-07 02:47:49 UTC
Just saw that upstream is already fixed.

Thx guys!

See: http://bugs.gentoo.org/307927
Comment 3 Samuli Suominen (RETIRED) gentoo-dev 2010-03-07 05:54:21 UTC

*** This bug has been marked as a duplicate of bug 307927 ***