[oe-commits] org.oe.dev ffmpeg: make svn buildable, fix configure options for 0.4.9-pre1, unify, clean up
xjqian commit
openembedded-commits at lists.openembedded.org
Sun Feb 24 18:05:21 UTC 2008
ffmpeg: make svn buildable, fix configure options for 0.4.9-pre1, unify, clean up
* fix svn using SRCDATE
* reformat EXTRA_OECONF to make the order of the options follow ./configure --help
* NOTE: --cpu(0.4.9-pre1) equals --arch(svn); while --tune(0.4.9-pre1) equals --cpu(svn)
* NOTE: oe uses --march and --mtune, so the above optimization by ffmpeg (--mcpu) is not really needed
* NOTE: but we try to make --cpu(0.4.9-pre1) or --arch(svn) as close to $TARGET_ARCH as possible
* checked --march and --mtune and $TARGET_CFLAGS are used correctly
* remove unnecessary FLAGS, configure options, oe_runconf(), etc in either svn or pre1
* unify svn and 0.4.9-pre1, however not much can be done for packaging and staging
* QA: add LEAD_SONAME, fix DESCRIPTION, HOME, AUTHOR
Author: xjqian at openembedded.org
Branch: org.openembedded.dev
Revision: 6678db7afc1756949a7d7e0c29814b8ba5988e74
ViewMTN: http://monotone.openembedded.org/revision/info/6678db7afc1756949a7d7e0c29814b8ba5988e74
Files:
1
packages/ffmpeg/ffmpeg.inc
packages/ffmpeg/ffmpeg_0.4.9-pre1.bb
packages/ffmpeg/ffmpeg_svn.bb
Diffs:
#
# mt diff -r9d49069aa898848e0d9e809ccb033c0e93c8b6fc -r6678db7afc1756949a7d7e0c29814b8ba5988e74
#
#
#
# patch "packages/ffmpeg/ffmpeg.inc"
# from [74e136608c8bb3130afc1af896150031726472c0]
# to [84044f7d06812f97708d5aaf10e1e260f0a1dda0]
#
# patch "packages/ffmpeg/ffmpeg_0.4.9-pre1.bb"
# from [204fc94bcae002b164372234b0291b302e3a5307]
# to [c3572c18ab65a446d322a3902f88912447563717]
#
# patch "packages/ffmpeg/ffmpeg_svn.bb"
# from [0ddf51c0c1f64b7d633cd541ce950ce8db509a71]
# to [a88f11ff93c4722033c395383b54f840896271a4]
#
============================================================
--- packages/ffmpeg/ffmpeg.inc 74e136608c8bb3130afc1af896150031726472c0
+++ packages/ffmpeg/ffmpeg.inc 84044f7d06812f97708d5aaf10e1e260f0a1dda0
@@ -1,39 +1,35 @@
-DESCRIPTION = "ffmpeg"
+DESCRIPTION = "FFmpeg is a complete solution to record, convert and stream audio and video"
HOMEPAGE = "http://ffmpeg.mplayerhq.hu/"
AUTHOR = "Fabrice Bellard ffmpeg-devel at mplayerhq.hu"
SECTION = "libs"
PRIORITY = "optional"
LICENSE = "LGPL"
-DEPENDS = "zlib libvorbis faac liba52 lame"
+DEPENDS = "zlib libogg libvorbis faac faad2 liba52 lame"
RSUGGESTS = "mplayer"
inherit autotools pkgconfig
-TARGET_LDFLAGS_append = " -lm -la52 "
+LEAD_SONAME = "libavcodec.so"
EXTRA_OECONF = "\
+ \
--enable-pp \
--enable-shared \
--enable-pthreads \
--enable-gpl \
\
- --disable-audio-beos \
- --disable-v4l \
- --disable-dv1394 \
+ --cross-prefix=${TARGET_PREFIX} \
--disable-debug \
--disable-ffserver \
--disable-ffplay \
\
- --cross-prefix=${TARGET_PREFIX} \
- \
- --cpu=${PACKAGE_ARCH} \
- \
"
-# We do this because the install program is called with -s which causes it to call "strip" and it then mangles cross compiled stuff..
-PATH_prepend="${CROSS_DIR}/${TARGET_SYS}/bin:"
+PACKAGES += "${PN}-vhook-dbg ${PN}-vhook"
+FILES_${PN} = "${bindir}"
+FILES_${PN}-dev = "${includedir}/${PN}"
+
+FILES_${PN}-vhook = "${libdir}/vhook"
+FILES_${PN}-vhook-dbg += "${libdir}/vhook/.debug"
-do_configure_prepend() {
- export CC="${CC}"
-}
============================================================
--- packages/ffmpeg/ffmpeg_0.4.9-pre1.bb 204fc94bcae002b164372234b0291b302e3a5307
+++ packages/ffmpeg/ffmpeg_0.4.9-pre1.bb c3572c18ab65a446d322a3902f88912447563717
@@ -1,16 +1,18 @@ require ffmpeg.inc
require ffmpeg.inc
-DEPENDS += "faad2"
+PR = "r3"
-PR = "r2"
-
SRC_URI = "${SOURCEFORGE_MIRROR}/ffmpeg/ffmpeg-${PV}.tar.gz \
- file://configure.patch;patch=0 \
- file://gcc4.patch;patch=1 \
- file://soname.patch;patch=1 \
- "
+ file://configure.patch;patch=0 \
+ file://gcc4.patch;patch=1 \
+ file://soname.patch;patch=1 \
+ "
EXTRA_OECONF += " \
+ \
+ --prefix=${D}${prefix} \
+ --mandir=${D}${prefix}/share/man \
+ \
--enable-mp3lame \
--enable-vorbis \
--enable-faad \
@@ -22,39 +24,37 @@ EXTRA_OECONF += " \
--disable-amr_nb \
--enable-amr_nb-fixed \
--disable-amr_wb \
- --enable-zlib \
\
+ --cpu=${TARGET_ARCH} \
+ --tune=${PACKAGE_ARCH} \
+ --extra-ldflags="-la52" \
\
- --extra-cflags=\$(TARGET_CFLAGS) \
- --extra-ldflags=\$(TARGET_LDFLAGS) \
- --extra-libs=\$(TARGET_LDFLAGS) \
- \
- --prefix=${D}${prefix} \
- --mandir=${D}${prefix}/share/man \
+ --disable-audio-beos \
+ --disable-v4l \
+ --disable-dv1394 \
"
-PACKAGES += "libavcodec libavcodec-dev libavformat libavformat-dev"
-
-FILES_${PN} += "${libdir}/vhook"
-FILES_${PN}-dev = "${includedir}"
-FILES_${PN}-dbg += "${libdir}/vhook/.debug"
-
-FILES_libavcodec = "${libdir}/libavcodec*.so.*"
-FILES_libavcodec-dev = "${libdir}/libavcodec*.so ${libdir}/libavcodec*.la ${libdir}/libavcodec*.a"
-FILES_libavformat = "${libdir}/libavformat*.so.*"
-FILES_libavformat-dev = "${libdir}/libavformat*.so ${libdir}/libavformat*.la ${libdir}/libavformat*.a"
-
do_stage() {
- oe_libinstall -a -so -C libavcodec libavcodec ${STAGING_LIBDIR}
+ oe_libinstall -a -so -C libavcodec libavcodec ${STAGING_LIBDIR}
oe_libinstall -a -so -C libavformat libavformat ${STAGING_LIBDIR}
install -d ${STAGING_INCDIR}/ffmpeg
- install -m 0644 ${S}/libavcodec/avcodec.h ${STAGING_INCDIR}/ffmpeg/avcodec.h
- install -m 0644 ${S}/libavcodec/common.h ${STAGING_INCDIR}/ffmpeg/common.h
+
+ install -m 0644 ${S}/libavcodec/avcodec.h ${STAGING_INCDIR}/ffmpeg/avcodec.h
+ install -m 0644 ${S}/libavcodec/common.h ${STAGING_INCDIR}/ffmpeg/common.h
install -m 0644 ${S}/libavcodec/rational.h ${STAGING_INCDIR}/ffmpeg/rational.h
- install -m 0644 ${S}/libavformat/avformat.h ${STAGING_INCDIR}/ffmpeg/avformat.h
- install -m 0644 ${S}/libavformat/avio.h ${STAGING_INCDIR}/ffmpeg/avio.h
- install -m 0644 ${S}/libavformat/rtp.h ${STAGING_INCDIR}/ffmpeg/rtp.h
- install -m 0644 ${S}/libavformat/rtsp.h ${STAGING_INCDIR}/ffmpeg/rtsp.h
+
+ install -m 0644 ${S}/libavformat/avformat.h ${STAGING_INCDIR}/ffmpeg/avformat.h
+ install -m 0644 ${S}/libavformat/avio.h ${STAGING_INCDIR}/ffmpeg/avio.h
+ install -m 0644 ${S}/libavformat/rtp.h ${STAGING_INCDIR}/ffmpeg/rtp.h
+ install -m 0644 ${S}/libavformat/rtsp.h ${STAGING_INCDIR}/ffmpeg/rtsp.h
install -m 0644 ${S}/libavformat/rtspcodes.h ${STAGING_INCDIR}/ffmpeg/rtspcodes.h
}
+
+PACKAGES += "libavcodec libavcodec-dev \
+ libavformat libavformat-dev"
+
+FILES_libavcodec = "${libdir}/libavcodec*.so.*"
+FILES_libavcodec-dev = "${libdir}/libavcodec*.so"
+FILES_libavformat = "${libdir}/libavformat*.so.*"
+FILES_libavformat-dev = "${libdir}/libavformat*.so"
============================================================
--- packages/ffmpeg/ffmpeg_svn.bb 0ddf51c0c1f64b7d633cd541ce950ce8db509a71
+++ packages/ffmpeg/ffmpeg_svn.bb a88f11ff93c4722033c395383b54f840896271a4
@@ -1,9 +1,9 @@ require ffmpeg.inc
require ffmpeg.inc
-DEPENDS += "libogg"
+DEPENDS += "libgsm"
-PV = "0.4.9+svnr${SRCREV}"
-PR = "r2"
+PV = "0.4.9+svn${SRCDATE}"
+PR = "r3"
DEFAULT_PREFERENCE = "-1"
@@ -12,118 +12,94 @@ EXTRA_OECONF += " \
S = "${WORKDIR}/trunk"
EXTRA_OECONF += " \
- --enable-libmp3lame \
- --enable-libvorbis \
- --disable-libfaad \
+ --prefix=/usr \
+ \
+ --enable-nonfree \
+ --enable-swscaler \
+ --enable-x11grab \
+ \
--enable-liba52 \
--enable-liba52bin \
- --enable-libogg \
- --enable-gpl \
+ --enable-libfaac \
+ --enable-libfaad \
+ --enable-libfaadbin \
+ --enable-libgsm \
+ --enable-libmp3lame \
+ --enable-libvorbis \
\
- --disable-strip \
- \
- \
- --cpu=${PACKAGE_ARCH} \
- --arch=${PACKAGE_ARCH} \
+ --arch=${TARGET_ARCH} \
+ --cross-compile \
+ --cc="gcc ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+ --extra-cflags="${TARGET_CFLAGS}" \
+ --extra-ldflags="${TARGET_LDFLAGS}" \
+ --enable-hardcoded-tables \
"
-oe_runconf () {
- # make ffmpeg detect arm targets that don't end in 'l'
- sed -i -e s:'armv\[4567\]\*l':'armv\[4567\]\*':g ${S}/configure
- if [ -x ${S}/configure ] ; then
- cfgcmd="${S}/configure \
- --prefix=${prefix} \
- --mandir=${mandir} \
- ${EXTRA_OECONF} \
- $@"
- oenote "Running $cfgcmd..."
- $cfgcmd || oefatal "oe_runconf failed"
- else
- oefatal "no configure script found"
- fi
-
+do_configure() {
+ ${S}/configure ${EXTRA_OECONF}
}
do_stage() {
- oe_libinstall -a -so -C libavcodec libavcodec ${STAGING_LIBDIR}
- oe_libinstall -a -so -C libavdevice libavdevice ${STAGING_LIBDIR}
- oe_libinstall -a -so -C libavformat libavformat ${STAGING_LIBDIR}
- oe_libinstall -a -so -C libavutil libavutil ${STAGING_LIBDIR}
- oe_libinstall -a -so -C libpostproc libpostproc ${STAGING_LIBDIR}
+ for lib in libavcodec libavdevice libavformat \
+ libavutil libpostproc libswscale
+ do
+ oe_libinstall -a -so -C $lib $lib ${STAGING_LIBDIR}
+ done
install -d ${STAGING_INCDIR}/ffmpeg
- install -m 0644 ${S}/libavcodec/avcodec.h \
- ${STAGING_INCDIR}/ffmpeg/avcodec.h
- install -m 0644 ${S}/libavdevice/avdevice.h \
- ${STAGING_INCDIR}/ffmpeg/avdevice.h
- install -m 0644 ${S}/libavformat/avformat.h \
- ${STAGING_INCDIR}/ffmpeg/avformat.h
- install -m 0644 ${S}/libavformat/avio.h \
- ${STAGING_INCDIR}/ffmpeg/avio.h
- install -m 0644 ${S}/libavformat/rtp.h \
- ${STAGING_INCDIR}/ffmpeg/rtp.h
- install -m 0644 ${S}/libavformat/rtsp.h \
- ${STAGING_INCDIR}/ffmpeg/rtsp.h
- install -m 0644 ${S}/libavformat/rtspcodes.h \
- ${STAGING_INCDIR}/ffmpeg/rtspcodes.h
- install -m 0644 ${S}/libavutil/avutil.h \
- ${STAGING_INCDIR}/ffmpeg/avutil.h
- install -m 0644 ${S}/libavutil/bswap.h \
- ${STAGING_INCDIR}/ffmpeg/bswap.h
- install -m 0644 ${S}/libavutil/common.h \
- ${STAGING_INCDIR}/ffmpeg/common.h
- install -m 0644 ${S}/libavutil/crc.h \
- ${STAGING_INCDIR}/ffmpeg/crc.h
- install -m 0644 ${S}/libavutil/integer.h \
- ${STAGING_INCDIR}/ffmpeg/integer.h
- install -m 0644 ${S}/libavutil/intfloat_readwrite.h \
- ${STAGING_INCDIR}/ffmpeg/intfloat_readwrite.h
- install -m 0644 ${S}/libavutil/mathematics.h \
- ${STAGING_INCDIR}/ffmpeg/mathematics.h
- install -m 0644 ${S}/libavutil/rational.h \
- ${STAGING_INCDIR}/ffmpeg/rational.h
- install -m 0644 ${S}/libavutil/mem.h \
- ${STAGING_INCDIR}/ffmpeg/mem.h
- install -m 0644 ${S}/libavutil/log.h \
- ${STAGING_INCDIR}/ffmpeg/log.h
+ install -m 0644 ${S}/libavcodec/avcodec.h ${STAGING_INCDIR}/ffmpeg/avcodec.h
+ install -m 0644 ${S}/libavcodec/opt.h ${STAGING_INCDIR}/ffmpeg/opt.h
+ install -m 0644 ${S}/libavdevice/avdevice.h ${STAGING_INCDIR}/ffmpeg/avdevice.h
+
+ for h in avformat.h avio.h rtp.h rtsp.h rtspcodes.h
+ do
+ install -m 0644 ${S}/libavformat/$h ${STAGING_INCDIR}/ffmpeg/$h
+ done
+
+ for h in adler32.h avstring.h avutil.h base64.h bswap.h \
+ common.h crc.h fifo.h integer.h intfloat_readwrite.h \
+ log.h lzo.h mathematics.h md5.h mem.h random.h \
+ rational.h sha1.h
+ do
+ install -m 0644 ${S}/libavutil/$h ${STAGING_INCDIR}/ffmpeg/$h
+ done
+
+ install -m 0644 ${S}/libswscale/swscale.h ${STAGING_INCDIR}/ffmpeg/swscale.h
+ install -m 0644 ${S}/libswscale/rgb2rgb.h ${STAGING_INCDIR}/ffmpeg/rgb2rgb.h
+
install -d ${STAGING_INCDIR}/libpostproc
- install -m 0644 ${S}/libpostproc/postprocess.h \
- ${STAGING_INCDIR}/libpostproc/postprocess.h
+ install -m 0644 ${S}/libpostproc/postprocess.h ${STAGING_INCDIR}/libpostproc/postprocess.h
}
-PACKAGES += "libavcodec libavcodec-dev \
- libavdevice libavdevice-dev \
- libavformat libavformat-dev \
- libavutil libavutil-dev \
- libpostproc libpostproc-dev"
+PACKAGES += "libavcodec libavcodec-dev libavcodec-dbg \
+ libavdevice libavdevice-dev libavdevice-dbg \
+ libavformat libavformat-dev libavformat-dbg \
+ libavutil libavutil-dev libavutil-dbg \
+ libpostproc libpostproc-dev libpostproc-dbg \
+ libswscale libswscale-dev libswscale-dbg"
-FILES_${PN} = "${bindir} ${libdir}/vhook"
-FILES_${PN}-dev += "${bindir} ${libdir}/pkgconfig/libswscale.pc"
-FILES_${PN}-doc = "${mandir}"
-
FILES_libavcodec = "${libdir}/libavcodec*.so.*"
-FILES_libavcodec-dev = "${libdir}/libavcodec*.so \
- ${libdir}/pkgconfig/libavcodec.pc \
- ${libdir}/libavcodec*.la ${libdir}/libavcodec*.a"
+FILES_libavcodec-dev = "${libdir}/libavcodec*.so ${libdir}/pkgconfig/libavcodec.pc ${libdir}/libavcodec*.a"
+FILES_libavcodec-dbg += "${libdir}/.debug/libavcodec*"
FILES_libavdevice = "${libdir}/libavdevice*.so.*"
-FILES_libavdevice-dev = "${libdir}/libavdevice*.so \
- ${libdir}/pkgconfig/libavdevice.pc \
- ${libdir}/libavdevice*.la ${libdir}/libavdevice*.a"
+FILES_libavdevice-dev = "${libdir}/libavdevice*.so ${libdir}/pkgconfig/libavdevice.pc ${libdir}/libavdevice*.a"
+FILES_libavdevice-dbg += "${libdir}/.debug/libavdevice*"
FILES_libavformat = "${libdir}/libavformat*.so.*"
-FILES_libavformat-dev = "${libdir}/libavformat*.so \
- ${libdir}/pkgconfig/libavformat.pc \
- ${libdir}/libavformat*.la ${libdir}/libavformat*.a"
+FILES_libavformat-dev = "${libdir}/libavformat*.so ${libdir}/pkgconfig/libavformat.pc ${libdir}/libavformat*.a"
+FILES_libavformat-dbg += "${libdir}/.debug/libavformat*"
FILES_libavutil = "${libdir}/libavutil*.so.*"
-FILES_libavutil-dev = "${libdir}/libavutil*.so \
- ${libdir}/pkgconfig/libavutil.pc \
- ${libdir}/libavutil*.la ${libdir}/libavutil*.a"
+FILES_libavutil-dev = "${libdir}/libavutil*.so ${libdir}/pkgconfig/libavutil.pc ${libdir}/libavutil*.a"
+FILES_libavutil-dbg += "${libdir}/.debug/libavutil*"
FILES_libpostproc = "${libdir}/libpostproc*.so.*"
+FILES_libpostproc-dev = "${libdir}/libpostproc*.so ${libdir}/pkgconfig/libpostproc.pc ${libdir}/libpostproc*.a ${includedir}/postproc"
+FILES_libpostproc-dbg += "${libdir}/.debug/libpostproc*"
+
+FILES_libswscale = "${libdir}/libswscale*.so.*"
+FILES_libswscale-dev = "${libdir}/libswscale*.so ${libdir}/pkgconfig/libswscale.pc ${libdir}/libswscale*.a"
+FILES_libswscale-dbg += "${libdir}/.debug/libswscale*"
-FILES_libpostproc-dev = "${libdir}/libpostproc*.so \
- ${libdir}/pkgconfig/libpostproc.pc \
- ${libdir}/libpostproc*.la ${libdir}/libpostproc*.a"
More information about the Openembedded-commits
mailing list