moc-stable/unstable in Fedora 12

Hello everybody!

At the moment, I am trying to build a moc-rpm in Fedora 12, but I have some problems as I see related to the ffmpeg/ffmpeg-devel-packages in Fedora.
It has been possible to build the rpms without ffmpeg-Support, but this is not what I want.

ffmpeg-Output:
FFmpeg version SVN-r20372, Copyright (c) 2000-2009 Fabrice Bellard, et al.
built on Nov 7 2009 17:50:32 with gcc 4.4.2 20091027 (Red Hat 4.4.2-7)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib --mandir=/usr/share/man --arch=i686 --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables' --extra-version=rpmfusion --enable-bzlib --enable-libdc1394 --enable-libdirac --enable-libfaad --enable-libgsm --enable-libmp3lame --enable-libopenjpeg --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --enable-x11grab --enable-avfilter --enable-avfilter-lavf --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib --cpu=i686 --enable-runtime-cpudetect
libavutil 50. 3. 0 / 50. 3. 0
libavcodec 52.37. 1 / 52.37. 1
libavformat 52.39. 2 / 52.39. 2
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1. 4. 1 / 1. 4. 1
libswscale 0. 7. 1 / 0. 7. 1
libpostproc 51. 2. 0 / 51. 2. 0

I asked an Ubuntu-Karmic-User to build it and he had no problems.
His ffmpeg:
FFmpeg version SVN-r19352-4:0.5+svn20090706-2ubuntu2, Copyright (c) 2000-2009 Fabrice Bellard, et al.
configuration: --extra-version=4:0.5+svn20090706-2ubuntu2 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --disable-stripping --disable-vhook --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --extra-cflags=-I/build/buildd/ffmpeg-0.5+svn20090706/debian/include --enable-shared --disable-static
libavutil 49.15. 0 / 49.15. 0
libavcodec 52.20. 0 / 52.20. 0
libavformat 52.31. 0 / 52.31. 0
libavdevice 52. 1. 0 / 52. 1. 0
libavfilter 0. 4. 0 / 0. 4. 0
libswscale 0. 7. 1 / 0. 7. 1
libpostproc 51. 2. 0 / 51. 2. 0
built on Oct 13 2009 22:15:16, gcc: 4.4.1

I am not a programmer, so I think, I am not able to change anything in src/moc-2.4.4/decoder_plugins/ffmpeg/ffmpeg.c, but I guess, it is just an include-Problem (wrong path?).

I would like to help having moc in the official rpmfusion-repos, because it is my favourite musicplayer and I do not want other users to have to compile it on their own.

This is my first time building a package and not just compiling something just for me, and I think, I cannot handle this without help.

If my English is a little bad, please apologize. I am no native English speaker.

Thanks for help

sash_

I had some trouble building it on Fedora too. I believe it's because the configure script uses ffmpeg-config, a Debian-specific script, instead of pkg-config (as you may known, Ubuntu is based on Debian).

By the way, there have been a few other attempts to package moc for Fedora. See https://bugzilla.rpmfusion.org/show_bug.cgi?id=789

Thanks for your answer, raylu.

With a lot of help from the German Fedora IRC-Channel on freenode, I (respectively the great supporter) found out, where in configure.in changes have to be made.
I (with my limited knowledge) have just been able to deavtivate some if-Things to statically link to libavformat/avformat.h but I have been told that this would be a very ugly and unhelping solution.
At the moment, I unfortunately do not have time to take care of packaging moc, but in the next two weeks, I will.

configure.in uses pkg-config alternatively to ffmpeg-config, the problem is that when configure tests for libavformat/avformat.h it invokes gcc w/o -I/usr/include/ffmpeg flag from
$ pkg-config --cflags libavformat
so script fails to find this include and set proper define for ffmpeg.c
Unfortunately due to my extremely limited knowledge of AC/AM systems, I can't fix it.

Exactly. This is the problem.
As i mentioned before, I have been able to fix this with help from #fedora-de.

Here is the modified part of configure.in (starts at line 403):

fi
CPPFLAGS_saved="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $libavformat_CFLAGS"
AC_CHECK_HEADERS(ffmpeg/avformat.h libavformat/avformat.h)
CPPFLAGS="$CPPFLAGS_saved"
fi

I also had to modify some lines in moc.spec, because i have not been able to find libjack-devel and librcc-devel in Fedora and the *.a-files in $RPMBUILDROOT/usr/lib have not been deleted.
With those modifications I am able to build the moc-rpms using rpmbuild.

Hi raylu!

I read the review request you posted. Could it be that it has been you, who tried to build moc/mocp for Fedora? If yes, why did you stop? Because of this ffmpeg-issue? Because of the name (moc is used in Fedora)? Because you didn't get a sponsor?
Are you still interested in it?
Because, if you aren't anymore, I would read all this Fedora-Maintainer-stuff and would try this.
If you are still interested in it, i would like to help you.
Well, if you would need help.