Sunday, May 27, 2012

[nslu2-linux] newer mpd and ffmpeg

 

Hello,

The version of mpd segfaults when it comes across ogg/flac files. So I wanted to upgrade to a newer version. I checked out optware from subversion and made the following changes...

This works for me, but may not be perfect. Who would I work with to get proper fixes upstream?

[bpeck@localhost optware]$ svn diff
Index: make/ffmpeg.mk
===================================================================
--- make/ffmpeg.mk (revision 12824)
+++ make/ffmpeg.mk (working copy)
@@ -21,9 +21,11 @@
#
# Check http://svn.mplayerhq.hu/ffmpeg/trunk/
# Take care when upgrading for multiple targets
+FFMPEG_GIT=git://source.ffmpeg.org/ffmpeg.git
+FFMPEG_GIT_TAG=n0.8.11
FFMPEG_SVN=svn://svn.mplayerhq.hu/ffmpeg/trunk
FFMPEG_SVN_DATE=20080409
-FFMPEG_VERSION=0.svn$(FFMPEG_SVN_DATE)
+FFMPEG_VERSION=1.git$(FFMPEG_GIT_TAG)
FFMPEG_DIR=ffmpeg-$(FFMPEG_VERSION)
FFMPEG_SOURCE=$(FFMPEG_DIR).tar.bz2
FFMPEG_UNZIP=bzcat
@@ -90,12 +92,14 @@
$(DL_DIR)/$(FFMPEG_SOURCE):
( cd $(BUILD_DIR) ; \
rm -rf $(FFMPEG_DIR) && \
- svn co -r '{$(FFMPEG_SVN_DATE)}' $(FFMPEG_SVN) $(FFMPEG_DIR) && \
- tar -cjf $@ $(FFMPEG_DIR) --exclude .svn && \
+ git clone $(FFMPEG_GIT) $(FFMPEG_DIR) && \
+ pushd $(FFMPEG_DIR) && \
+ git checkout $(FFMPEG_GIT_TAG) && \
+ popd && \
+ tar -cjf $@ $(FFMPEG_DIR) --exclude .git && \
rm -rf $(FFMPEG_DIR) \
)

-
#
# The source code depends on it existing within the download directory.
# This target will be called by the top level Makefile to download the
@@ -144,6 +148,7 @@
--enable-cross-compile \
--cross-prefix=$(TARGET_CROSS) \
--arch=$(FFMPEG_ARCH) \
+ --target-os=linux \
$(FFMPEG_CONFIG_OPTS) \
--disable-encoder=snow \
--disable-decoder=snow \
@@ -188,15 +193,15 @@
rm -f $@
rm -rf $(STAGING_INCLUDE_DIR)/ffmpeg $(STAGING_INCLUDE_DIR)/postproc
$(MAKE) -C $(@D) install \
- mandir=$(STAGING_DIR)/opt/man \
- bindir=$(STAGING_DIR)/opt/bin \
- prefix=$(STAGING_DIR)/opt \
+ mandir=/opt/man \
+ bindir=/opt/bin \
+ prefix=/opt \
DESTDIR=$(STAGING_DIR)
install -d $(STAGING_INCLUDE_DIR)/ffmpeg $(STAGING_INCLUDE_DIR)/postproc
- cp -p $(STAGING_INCLUDE_DIR)/libavcodec/* \
- $(STAGING_INCLUDE_DIR)/libavformat/* \
- $(STAGING_INCLUDE_DIR)/libavutil/* \
- $(STAGING_INCLUDE_DIR)/ffmpeg/
+# cp -p $(STAGING_INCLUDE_DIR)/libavcodec/* \
+# $(STAGING_INCLUDE_DIR)/libavformat/* \
+# $(STAGING_INCLUDE_DIR)/libavutil/* \
+# $(STAGING_INCLUDE_DIR)/ffmpeg/
cp -p $(STAGING_INCLUDE_DIR)/libpostproc/* \
$(STAGING_INCLUDE_DIR)/postproc/
sed -i -e 's|^prefix=.*|prefix=$(STAGING_PREFIX)|' \
@@ -241,14 +246,14 @@
#
$(FFMPEG_IPK): $(FFMPEG_BUILD_DIR)/.built
rm -rf $(FFMPEG_IPK_DIR) $(BUILD_DIR)/ffmpeg_*_$(TARGET_ARCH).ipk
- $(MAKE) -C $(FFMPEG_BUILD_DIR) mandir=$(FFMPEG_IPK_DIR)/opt/man \
- bindir=$(FFMPEG_IPK_DIR)/opt/bin libdir=$(FFMPEG_IPK_DIR)/opt/lib \
- prefix=$(FFMPEG_IPK_DIR)/opt DESTDIR=$(FFMPEG_IPK_DIR) \
+ $(MAKE) -C $(FFMPEG_BUILD_DIR) mandir=/opt/man \
+ bindir=/opt/bin libdir=/opt/lib \
+ prefix=/opt DESTDIR=$(FFMPEG_IPK_DIR) \
LDCONFIG='$$(warning ldconfig disabled when building package)' install
$(TARGET_STRIP) $(FFMPEG_IPK_DIR)/opt/bin/ffmpeg
$(TARGET_STRIP) $(FFMPEG_IPK_DIR)/opt/bin/ffserver
$(TARGET_STRIP) $(FFMPEG_IPK_DIR)/opt/lib/*.so
- $(TARGET_STRIP) $(FFMPEG_IPK_DIR)/opt/lib/vhook/*.so
+# $(TARGET_STRIP) $(FFMPEG_IPK_DIR)/opt/lib/vhook/*.so
$(MAKE) $(FFMPEG_IPK_DIR)/CONTROL/control
cd $(BUILD_DIR); $(IPKG_BUILD) $(FFMPEG_IPK_DIR)

Index: make/mpd.mk
===================================================================
--- make/mpd.mk (revision 12824)
+++ make/mpd.mk (working copy)
@@ -24,7 +24,7 @@
MPD_SITE=http://$(SOURCEFORGE_MIRROR)/sourceforge/musicpd
#MPD_SVN_REPO=https://svn.musicpd.org/mpd/trunk
#MPD_SVN_REV=5324
-MPD_VERSION=0.15.15
+MPD_VERSION=0.16.8
MPD_SOURCE=mpd-$(MPD_VERSION).tar.bz2
MPD_DIR=mpd-$(MPD_VERSION)
MPD_UNZIP=bzcat

__._,_.___
Recent Activity:
.

__,_._,___

No comments:

Post a Comment