[oe-commits] org.oe.dev ffmpeg: move SRCREV to recipe so people can build the git version with optimizations for NEON

koen commit oe at amethyst.openembedded.net
Wed Jul 9 11:10:56 UTC 2008


ffmpeg: move SRCREV to recipe so people can build the git version with optimizations for NEON

Author: koen at openembedded.org
Branch: org.openembedded.dev
Revision: cc438dfa14922b4a98e4bab5583383b65341c0dd
ViewMTN: http://monotone.openembedded.org/revision/info/cc438dfa14922b4a98e4bab5583383b65341c0dd
Files:
1
packages/ffmpeg/ffmpeg_git.bb
packages/ffmpeg/ffmpeg_svn.bb
Diffs:

#
# mt diff -r455fa7383e7f2ddbc5fc537e169e3ee42cf11b85 -rcc438dfa14922b4a98e4bab5583383b65341c0dd
#
#
#
# add_file "packages/ffmpeg/ffmpeg_git.bb"
#  content [64b784ccdafe69b684df27bf1e7040588a54b936]
# 
# patch "packages/ffmpeg/ffmpeg_svn.bb"
#  from [d2d47408e07ad06f91f35a6b7f6b2233209c0414]
#    to [1afc1dfbc37b23cec6af00e75b7e10c8d82709e1]
#
============================================================
--- packages/ffmpeg/ffmpeg_git.bb	64b784ccdafe69b684df27bf1e7040588a54b936
+++ packages/ffmpeg/ffmpeg_git.bb	64b784ccdafe69b684df27bf1e7040588a54b936
@@ -0,0 +1,132 @@
+require ffmpeg.inc
+
+DEPENDS += "libgsm"
+
+PV = "0.4.9+${PR}+gitr${SRCREV}" 
+PR = "r9"
+
+DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_armv7a = "1"
+
+FFBRANCH_arm = "arm-neon"
+FFBRANCH ?= "master"
+
+SRCREV = "1e8300e71f79963eacdad6b180d9a12c4f56318d"
+SRCREV_arm = "4cc48b756abd09baa7b31909ebbc0c09be2c8e5a"
+SRC_URI = "git://git.mansr.com/ffmpeg.mru;protocol=git;branch=${FFBRANCH} \
+"
+
+S = "${WORKDIR}/git"
+B = "${S}/build.${HOST_SYS}.${TARGET_SYS}"
+
+FULL_OPTIMIZATION_armv7a = "-fexpensive-optimizations  -ftree-vectorize -fomit-frame-pointer -O4 -ffast-math"
+BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
+
+EXTRA_FFCONF_armv7a = "--cpu=cortex-a8"
+EXTRA_FFCONF ?= ""
+
+EXTRA_OECONF = " \
+        --enable-shared \
+        --enable-pthreads \
+        --disable-stripping \
+        --enable-gpl \
+        --enable-nonfree \
+        --enable-postproc \
+        \
+        --cross-prefix=${TARGET_PREFIX} \
+        --prefix=${prefix} \
+        \
+        --enable-x11grab \
+        --enable-libfaac \
+        --enable-libfaad \
+        --enable-libfaadbin \
+        --enable-libgsm \
+        --enable-libmp3lame \
+        --enable-swscale \
+        --arch=${TARGET_ARCH} \
+        --enable-cross-compile \
+        --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \
+        --extra-ldflags="${TARGET_LDFLAGS}" \
+        --enable-hardcoded-tables \
+        ${EXTRA_FFCONF} \
+"
+
+do_configure() {
+        cd ${S} ; git clone git://git.mplayerhq.hu/libswscale || true  
+        mkdir -p ${B}
+        cd ${B}
+        ${S}/configure ${EXTRA_OECONF}
+		sed -i -e s:Os:O4:g ${B}/config.h
+}
+
+do_stage() {
+        for lib in libavcodec libavdevice libavformat \
+                   libavutil libpostproc libswscale
+        do
+            oe_libinstall -a -so -C $lib $lib ${STAGING_LIBDIR}
+            install -d ${STAGING_INCDIR}/$lib 
+        done 
+
+        install -d ${STAGING_INCDIR}/ffmpeg
+
+        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}/libavcodec/avcodec.h ${STAGING_INCDIR}/libavcodec/avcodec.h
+        install -m 0644 ${S}/libavcodec/opt.h ${STAGING_INCDIR}/libavcodec/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
+           install -m 0644 ${S}/libavutil/$h        ${STAGING_INCDIR}/libavutil/$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 -d ${STAGING_INCDIR}/postproc 
+        install -m 0644 ${S}/libpostproc/postprocess.h ${STAGING_INCDIR}/libpostproc/postprocess.h
+        install -m 0644 ${S}/libpostproc/postprocess.h ${STAGING_INCDIR}/postproc/postprocess.h
+}
+
+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}-dev = "${includedir}"
+FILES_libavcodec = "${libdir}/libavcodec*.so.*"
+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*.a"
+FILES_libavdevice-dbg += "${libdir}/.debug/libavdevice*"
+
+FILES_libavformat = "${libdir}/libavformat*.so.*"
+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*.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*"
============================================================
--- packages/ffmpeg/ffmpeg_svn.bb	d2d47408e07ad06f91f35a6b7f6b2233209c0414
+++ packages/ffmpeg/ffmpeg_svn.bb	1afc1dfbc37b23cec6af00e75b7e10c8d82709e1
@@ -2,6 +2,8 @@ DEPENDS += "libgsm"
 
 DEPENDS += "libgsm"
 
+SRCREV ?= "12186"
+
 PV = "0.4.9+svnr${SRCREV}" 
 PR = "r0"
 






More information about the Openembedded-commits mailing list