Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
adding a patch to xine-lib; coreavc
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
saphear
n00b
n00b


Joined: 23 Apr 2004
Posts: 34

PostPosted: Thu May 21, 2009 3:02 pm    Post subject: adding a patch to xine-lib; coreavc Reply with quote

morning folks,

first of all: i'm new to editing/working with ebuilds and patches manually. so please don't laugh at me for asking stupid question; at least don't laugh too loud :p

so here is the deal: i'm using a quanta sw1 notebook with a intel 945 onboard video, that is pretty slow. when i try to play hdtv 1080p, i can't really watch it. vlc drops frame after frame, xine even freezes and i have to restart X.
looking for a solution, someone told me to try coreavc, which is another decoder, but closed source windows.
i bought the software (pretty cheap) and i've been trying to get it to work following these instructions more or less: http://code.google.com/p/coreavc-for-linux/w/list

what i did so far:
i added an overlay dir with xine-lib and the 1.1.16.3-ebuild file. i created the patch file, described like here: http://code.google.com/p/coreavc-for-linux/wiki/XineInstall
without the "make" and "make install" command of course.

since i didn't know where to add the epatch "${FILESDIR}/dshowserver.patch" command, i tried adding it before the "src_compile" line in the xine-lib-1.1.16.3.ebuild file. it looks like this now:
Code:
 # Copyright 1999-2009 Gentoo Foundation                                                                                                                             
# Distributed under the terms of the GNU General Public License v2                                                                                                 
# $Header: /var/cvsroot/gentoo-x86/media-libs/xine-lib/xine-lib-1.1.16.3.ebuild,v 1.7 2009/04/10 13:22:04 armin76 Exp $                                             

EAPI=1

inherit eutils flag-o-matic toolchain-funcs libtool multilib

# This should normally be empty string, unless a release has a suffix.
if [[ "${P/_pre/}" != "${P}" ]]; then                                 
        SRC_URI="mirror://gentoo/${P}.tar.bz2"                       
else                                                                 
        MY_PKG_SUFFIX=""                                             
        MY_P="${PN}-${PV/_/-}${MY_PKG_SUFFIX}"                       
        S="${WORKDIR}/${MY_P}"                                       

        SRC_URI="mirror://sourceforge/xine/${MY_P}.tar.bz2"
fi                                                         

DESCRIPTION="Core libraries for Xine movie player"
HOMEPAGE="http://xine.sourceforge.net"           

LICENSE="GPL-2"
SLOT="1"       
KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd"

IUSE="-aalib -libcaca -arts esd win32codecs nls +dvd +X directfb +vorbis +alsa
gnome sdl speex +theora ipv6 altivec opengl aac -fbcon +xv xvmc               
-samba dxr3 vidix mng -flac -oss +v4l xinerama vcd +a52 +mad -imagemagick +dts
+modplug -gtk pulseaudio -mmap -truetype wavpack +musepack +xcb -jack         
-real +vis"                                                                   

RDEPEND="X? ( x11-libs/libXext
        x11-libs/libX11 )     
        xv? ( x11-libs/libXv )
        xvmc? ( x11-libs/libXvMC )
        xinerama? ( x11-libs/libXinerama )
        win32codecs? ( >=media-libs/win32codecs-0.50 )
        esd? ( media-sound/esound )                   
        dvd? ( >=media-libs/libdvdcss-1.2.7 )         
        arts? ( kde-base/arts )                       
        alsa? ( media-libs/alsa-lib )                 
        aalib? ( media-libs/aalib )                   
        directfb? ( >=dev-libs/DirectFB-0.9.9 )       
        gnome? ( >=gnome-base/gnome-vfs-2.0 )         
        flac? ( >=media-libs/flac-1.1.2 )             
        sdl? ( >=media-libs/libsdl-1.1.5 )           
        dxr3? ( >=media-libs/libfame-0.9.0 )         
        vorbis? ( media-libs/libogg media-libs/libvorbis )
        theora? ( media-libs/libogg media-libs/libvorbis >=media-libs/libtheora-1.0_alpha6 )
        speex? ( media-libs/libogg media-libs/libvorbis media-libs/speex )                 
        libcaca? ( >=media-libs/libcaca-0.99_beta14 )                                       
        samba? ( net-fs/samba )                                                             
        mng? ( media-libs/libmng )                                                         
        vcd? ( media-video/vcdimager )                                                     
        a52? ( >=media-libs/a52dec-0.7.4-r5 )                                               
        mad? ( media-libs/libmad )                                                         
        imagemagick? ( media-gfx/imagemagick )                                             
        dts? ( media-libs/libdca )                                                         
        aac? ( >=media-libs/faad2-2.6.1 )                                                   
        >=media-video/ffmpeg-0.4.9_p20070129                                               
        modplug? ( media-libs/libmodplug )                                                 
        nls? ( virtual/libintl )                                                           
        gtk? ( =x11-libs/gtk+-2* )                                                         
        pulseaudio? ( media-sound/pulseaudio )                                             
        truetype? ( =media-libs/freetype-2* media-libs/fontconfig )                         
        virtual/libiconv                                                                   
        wavpack? ( >=media-sound/wavpack-4.31 )                                             
        musepack? ( media-libs/libmpcdec )                                                 
        xcb? ( >=x11-libs/libxcb-1.0 )                                                     
        jack? ( >=media-sound/jack-audio-connection-kit-0.100 )                             
        real? (                                                                             
                x86? ( media-libs/win32codecs )                                             
                x86-fbsd? ( media-libs/win32codecs )                                       
                amd64? ( media-libs/amd64codecs ) )"                                       

DEPEND="${RDEPEND}
        X? ( x11-libs/libXt
                 x11-proto/xproto
                 x11-proto/videoproto
                 x11-proto/xf86vidmodeproto
                 xinerama? ( x11-proto/xineramaproto ) )
        v4l? ( virtual/os-headers )                     
        dev-util/pkgconfig                             
        sys-devel/libtool                               
        nls? ( sys-devel/gettext )"                     

#EPATCH TEST
epatch "${FILESDIR}/dshowserver.patch"

src_compile() {
        #prevent quicktime crashing
        append-flags -frename-registers -ffunction-sections

        # Specific workarounds for too-few-registers arch...
        if [[ $(tc-arch) == "x86" ]]; then                 
                filter-flags -fforce-addr                   
                filter-flags -momit-leaf-frame-pointer # break on gcc 3.4/4.x
                filter-flags -fno-omit-frame-pointer #breaks per bug #149704
                is-flag -O? || append-flags -O2                             
        fi                                                                   

        # Set the correct win32 dll path, bug #197236
        local win32dir                               
        if has_multilib_profile ; then               
                win32dir=/usr/$(ABI="x86" get_libdir)/win32
        else                                               
                win32dir=/usr/$(get_libdir)/win32         
        fi                                                 

        # Too many file names are the same (xine_decoder.c), change the builddir
        # So that the relative path is used to identify them.                   
        mkdir "${WORKDIR}/build"                                               

        elibtoolize
        ECONF_SOURCE="${S}" econf \
                $(use_enable gnome gnomevfs) \
                $(use_enable nls) \           
                $(use_enable ipv6) \         
                $(use_enable samba) \         
                $(use_enable altivec) \       
                $(use_enable v4l) \           
                $(use_enable mng) \           
                $(use_with imagemagick) \     
                $(use_enable gtk gdkpixbuf) \
                $(use_enable aac faad) --with-external-libfaad \
                $(use_with flac libflac) \                     
                $(use_with vorbis) \                           
                $(use_with speex) \                             
                $(use_with theora) \                           
                $(use_with wavpack) \                           
                $(use_enable modplug) \                         
                $(use_enable a52 a52dec) --with-external-a52dec \
                $(use_enable mad) --with-external-libmad \       
                $(use_enable dts) --with-external-libdts \       
                $(use_enable musepack) --with-external-libmpcdec \
                $(use_with X x) \
                $(use_enable xinerama) \
                $(use_enable vidix) \
                $(use_enable dxr3) \
                $(use_enable directfb) \
                $(use_enable fbcon fb) \
                $(use_enable opengl) \
                $(use_enable aalib) \
                $(use_with libcaca caca) \
                $(use_with sdl) \
                $(use_enable xvmc) \
                $(use_with xcb) \
                $(use_enable oss) \
                $(use_with alsa) \
                $(use_with arts) \
                $(use_with esd esound) \
                $(use_with pulseaudio) \
                $(use_with jack) \
                $(use_enable vcd) --without-internal-vcdlibs \
                $(use_enable win32codecs w32dll) \
                $(use_enable real real-codecs) \
                $(use_enable mmap) \
                $(use_with truetype freetype) $(use_with truetype fontconfig) \
                $(use_enable vis) \
                --enable-asf \
                --with-external-ffmpeg \
                --disable-optimizations \
                --disable-syncfb \
                --with-xv-path=/usr/$(get_libdir) \
                --with-w32-path=${win32dir} \
                --with-real-codecs-path=/usr/$(get_libdir)/codecs \
                --enable-fast-install \
                --disable-dependency-tracking

        emake || die "emake failed."
}

src_install() {
        emake DESTDIR="${D}" \
                docdir="/usr/share/doc/${PF}" htmldir="/usr/share/doc/${PF}/html" \
                install || die "emake install failed."

        dodoc ChangeLog
}


in the next step, i tried to build a manifest file, so i'd be able to emerge the xine-lib from my local overlay.
the result is:
Code:
ebuild /usr/local/portage/media-libs/xine-lib/xine-lib-1.1.16.3.ebuild manifest
 * Applying dshowserver.patch ...                                                               
/usr/portage/eclass/eutils.eclass: line 252: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 253: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
 * QA Notice: 'egrep' called in global scope: media-libs/xine-lib-1.1.16.3                                                                           
 * QA Notice: 'awk' called in global scope: media-libs/xine-lib-1.1.16.3                                                                             
/usr/portage/eclass/eutils.eclass: line 286: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 287: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 289: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 290: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 292: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 293: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 218: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 286: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 287: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 289: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 290: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 292: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 293: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 218: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 286: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 287: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 289: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 290: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 292: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 293: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 218: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 286: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 287: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 289: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 290: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 292: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 293: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 218: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 286: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 287: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 289: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 290: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 292: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 293: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory
/usr/portage/eclass/eutils.eclass: line 218: /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out: No such file or directory

 * Failed Patch: dshowserver.patch !
 *  ( /usr/local/portage/media-libs/xine-lib/files/dshowserver.patch )
 *
 * Include in your bugreport the contents of:
 *
 *   /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-23651.out

 *
 * ERROR: media-libs/xine-lib-1.1.16.3 failed.
 * Call stack:
 *                  ebuild.sh, line 1879:  Called _source_ebuild
 *                  ebuild.sh, line 1818:  Called source '/usr/local/portage/media-libs/xine-lib/xine-lib-1.1.16.3.ebuild'
 *   xine-lib-1.1.16.3.ebuild, line   89:  Called epatch '/usr/local/portage/media-libs/xine-lib/files/dshowserver.patch'
 *              eutils.eclass, line  339:  Called die
 * The specific snippet of code:
 *                              die "Failed Patch: ${patchname}!"
 *  The die message:
 *   Failed Patch: dshowserver.patch!
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * This ebuild is from an overlay: '/usr/local/portage/'



what do i do wrong? any better way to solve this problem? sorry, i feel kind of totally stupid here, since i'm new to these things.
any help is appreciated,

thx in advance
sap
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10306
Location: Córdoba (Spain)

PostPosted: Thu May 21, 2009 3:22 pm    Post subject: Re: adding a patch to xine-lib; coreavc Reply with quote

saphear wrote:

since i didn't know where to add the epatch "${FILESDIR}/dshowserver.patch" command, i tried adding it before the "src_compile" line in the xine-lib-1.1.16.3.ebuild file. it looks like this now:


Usually, epatch goes inside src_unpack()

Then you need to put the patch inside the files/ subdirectory.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
saphear
n00b
n00b


Joined: 23 Apr 2004
Posts: 34

PostPosted: Thu May 21, 2009 3:59 pm    Post subject: Reply with quote

Ok, thanks for the hint. that part seems ok now.

next problem i'm running into:
Code:

 emerge xine-lib
Calculating dependencies... done!

>>> Verifying ebuild manifests

>>> Emerging (1 of 1) media-libs/xine-lib-1.1.16.3 from unknown repo
 * xine-lib-1.1.16.3.tar.bz2 RMD160 SHA1 SHA256 size ;-) ...                                                                                                                 [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                                                         [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                                                        [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                                                       [ ok ]
>>> Unpacking source...                                                                                                                                                           
>>> Unpacking xine-lib-1.1.16.3.tar.bz2 to /var/tmp/portage/media-libs/xine-lib-1.1.16.3/work                                                                                     
 * Applying dshowserver.patch ...                                                                                                                                                 

 * Failed Patch: dshowserver.patch !
 *  ( /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch )
 *                                                                                           
 * Include in your bugreport the contents of:                                               
 *                                                                                           
 *   /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-5744.out           

 *
 * ERROR: media-libs/xine-lib-1.1.16.3 failed.
 * Call stack:                               
 *               ebuild.sh, line   49:  Called src_unpack
 *             environment, line 2818:  Called epatch '/usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch'
 *             environment, line 1566:  Called die                                                                                           
 * The specific snippet of code:                                                                                                             
 *                   die "Failed Patch: ${patchname}!";                                                                                     
 *  The die message:                                                                                                                         
 *   Failed Patch: dshowserver.patch!                                                                                                       
 *                                                                                                                                           
 * If you need support, post the topmost build error, and the call stack if relevant.                                                       
 * A complete build log is located at '/var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/build.log'.                                       
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/environment'.                               
 * This ebuild is from an overlay: '/usr/local/portage/'                                                                                     
 *                                                                                                                                           

>>> Failed to emerge media-libs/xine-lib-1.1.16.3, Log file:

>>>  '/var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/build.log'

 * Messages for package media-libs/xine-lib-1.1.16.3:

 * Failed Patch: dshowserver.patch !
 *  ( /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch )
 *                                                                                           
 * Include in your bugreport the contents of:                                               
 *                                                                                           
 *   /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-5744.out           
 *                                                                                           
 * ERROR: media-libs/xine-lib-1.1.16.3 failed.                                               
 * Call stack:                                                                               
 *               ebuild.sh, line   49:  Called src_unpack                                   
 *             environment, line 2818:  Called epatch '/usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch'
 *             environment, line 1566:  Called die                                                                                           
 * The specific snippet of code:                                                                                                             
 *                   die "Failed Patch: ${patchname}!";                                                                                     
 *  The die message:                                                                                                                         
 *   Failed Patch: dshowserver.patch!                                                                                                       
 *                                                                                                                                           
 * If you need support, post the topmost build error, and the call stack if relevant.                                                       
 * A complete build log is located at '/var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/build.log'.                                       
 * The ebuild environment file is located at '/var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/environment'.                               
 * This ebuild is from an overlay: '/usr/local/portage/'                                                                                     
 *                                                                                         


the specified file from var:

Code:
cat /var/tmp/portage/media-libs/xine-lib-1.1.16.3/temp/dshowserver.patch-5744.out                                           
***** dshowserver.patch *****                                                                                                               

=============================

PATCH COMMAND:   patch -p0 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:               
--------------------------                     
|diff -r 66e1654718fb src/libxinevdec/Makefile.am
|--- a/src/libxinevdec/Makefile.am      Mon Apr 14 22:38:03 2008 +0200
|+++ b/src/libxinevdec/Makefile.am      Sat Jun 07 07:17:27 2008 -0700
--------------------------                                           
No file to patch.  Skipping patch.                                   
2 out of 2 hunks ignored                                             
patching file b/src/libxinevdec/dshowserver.c                         
patching file b/src/libxinevdec/nal_parser.c                         
patching file b/src/libxinevdec/nal_parser.h                         
=============================                                         

PATCH COMMAND:   patch -p1 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
patching file src/libxinevdec/Makefile.am
Hunk #1 succeeded at 23 (offset 1 line).
Hunk #2 FAILED at 46.                   
1 out of 2 hunks FAILED -- saving rejects to file src/libxinevdec/Makefile.am.rej
patching file src/libxinevdec/dshowserver.c                                     
patching file src/libxinevdec/nal_parser.c                                       
patching file src/libxinevdec/nal_parser.h                                       
=============================                                                   

PATCH COMMAND:   patch -p2 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:               
--------------------------                     
|diff -r 66e1654718fb src/libxinevdec/Makefile.am
|--- a/src/libxinevdec/Makefile.am      Mon Apr 14 22:38:03 2008 +0200
|+++ b/src/libxinevdec/Makefile.am      Sat Jun 07 07:17:27 2008 -0700
--------------------------                                           
No file to patch.  Skipping patch.                                   
2 out of 2 hunks ignored                                             
patching file libxinevdec/dshowserver.c                               
patching file libxinevdec/nal_parser.c                               
patching file libxinevdec/nal_parser.h                               
=============================                                         

PATCH COMMAND:   patch -p3 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
patching file Makefile.am   
Hunk #1 FAILED at 22.       
Hunk #2 FAILED at 45.       
2 out of 2 hunks FAILED -- saving rejects to file Makefile.am.rej
patching file dshowserver.c                                     
patching file nal_parser.c                                       
patching file nal_parser.h                                       
=============================                                   

PATCH COMMAND:   patch -p4 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
missing header for unified diff at line 4 of patch
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -r 66e1654718fb src/libxinevdec/Makefile.am
|--- a/src/libxinevdec/Makefile.am      Mon Apr 14 22:38:03 2008 +0200
|+++ b/src/libxinevdec/Makefile.am      Sat Jun 07 07:17:27 2008 -0700
--------------------------
No file to patch.  Skipping patch.
2 out of 2 hunks ignored
missing header for unified diff at line 24 of patch
can't find file to patch at input line 24
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -r 66e1654718fb src/libxinevdec/dshowserver.c
|--- /dev/null  Thu Jan 01 00:00:00 1970 +0000
|+++ b/src/libxinevdec/dshowserver.c    Sat Jun 07 07:17:27 2008 -0700
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
missing header for unified diff at line 454 of patch
can't find file to patch at input line 454
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -r 66e1654718fb src/libxinevdec/nal_parser.c
|--- /dev/null  Thu Jan 01 00:00:00 1970 +0000
|+++ b/src/libxinevdec/nal_parser.c     Sat Jun 07 07:17:27 2008 -0700
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored
missing header for unified diff at line 978 of patch
can't find file to patch at input line 978
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -r 66e1654718fb src/libxinevdec/nal_parser.h
|--- /dev/null  Thu Jan 01 00:00:00 1970 +0000
|+++ b/src/libxinevdec/nal_parser.h     Sat Jun 07 07:17:27 2008 -0700
--------------------------
No file to patch.  Skipping patch.
1 out of 1 hunk ignored


in the wiki of coreavc for linux here http://code.google.com/p/coreavc-for-linux/wiki/XineInstall
it says: patch -p1 ...
why does the emerge command execute "patch -p0" up to "patch -p4" (as logged)?

as far as i understand, the relevant error for p1 is:
Code:


PATCH COMMAND:   patch -p1 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
patching file src/libxinevdec/Makefile.am
Hunk #1 succeeded at 23 (offset 1 line).
Hunk #2 FAILED at 46.                   
1 out of 2 hunks FAILED -- saving rejects to file src/libxinevdec/Makefile.am.rej
patching file src/libxinevdec/dshowserver.c                                     
patching file src/libxinevdec/nal_parser.c                                       
patching file src/libxinevdec/nal_parser.h                                       
=============================


but i can't find the mentioned file "Makefile.am.rej" (i tried finding it with "find / -iname 'Makefile.am.rej'" without any luck)

any more help for the noob? :)
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10306
Location: Córdoba (Spain)

PostPosted: Thu May 21, 2009 4:59 pm    Post subject: Reply with quote

saphear wrote:
why does the emerge command execute "patch -p0" up to "patch -p4" (as logged)?


epatch is basically a wrapper for the "patch" command. Since ebuilds have absolutely no way to know beforehand how many path level to omit when patching, they just try a number of commands.

Code:


PATCH COMMAND:   patch -p1 -g0 -E --no-backup-if-mismatch < /usr/local/portage/media-libs/xine-lib/files/coreavc-for-linux/xine/dshowserver.patch

=============================
patching file src/libxinevdec/Makefile.am
Hunk #1 succeeded at 23 (offset 1 line).
Hunk #2 FAILED at 46.                   
1 out of 2 hunks FAILED -- saving rejects to file src/libxinevdec/Makefile.am.rej
patching file src/libxinevdec/dshowserver.c                                     
patching file src/libxinevdec/nal_parser.c                                       
patching file src/libxinevdec/nal_parser.h                                       
=============================


This means that the patch did not apply correctly. Before integrating a patch into an ebuild, you should first try to apply it manually. If you did, then it might be that the ebuild is changing the makefile in some way, or maybe the ebuild applies some other patch before this one that breaks the compatibility. In any of these cases you are going to have to modify at least the part of the patch that related to the Makefile.am file.

I will try to look at this if I get the time later.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
i92guboj
Bodhisattva
Bodhisattva


Joined: 30 Nov 2004
Posts: 10306
Location: Córdoba (Spain)

PostPosted: Thu May 21, 2009 5:25 pm    Post subject: Reply with quote

Slightly retouched patch:

http://jesgue.homelinux.org/patches/dshowserver.patch

Bear in mind that I haven't tested this at all. I've just tested that it applies well over that version of xine-lib, nothing else. However, it's just a patch for a Makefile, so it shouldn't be a big deal.

Moving to unsupported as well, since it's about an unofficial patch.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
saphear
n00b
n00b


Joined: 23 Apr 2004
Posts: 34

PostPosted: Thu May 21, 2009 6:10 pm    Post subject: Reply with quote

wow, great!
with your linked patch it works like a charm; finally i can watch 1080p :)

i saw the difference in the patch files; i don't understand them 100%, but it somehow related to some theora_decoder function...

anyway, it works.
THANKS!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum