--- /dev/null
+#
+# Copyright (C) 2011 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libmpeg2
+PKG_VERSION:=0.5.1
+PKG_RELEASE:=1
+
+PKG_SOURCE:=libmpeg2-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://libmpeg2.sourceforge.net/files/
+PKG_MD5SUM:=0f92c7454e58379b4a5a378485bbd8ef
+
+PKG_INSTALL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libmpeg2
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=MPEG-1 & -2 decoding library
+ URL:=http://libmpeg2.sourceforge.net/
+ MAINTAINER:=W. Michael Petullo <mike@flyn.org>
+endef
+
+define Package/libmpeg2/decription
+ Libmpeg2 is a library for decoding MPEG-1 and MPEG-2 video streams
+endef
+
+CONFIGURE_ARGS += \
+ --disable-sdl \
+ --without-x \
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) \
+ $(PKG_INSTALL_DIR)/usr/include/mpeg2dec \
+ $(1)/usr/include/
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) \
+ $(PKG_INSTALL_DIR)/usr/lib/libmpeg2{,convert}.{a,so*} \
+ $(1)/usr/lib/
+ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
+ $(INSTALL_DATA) \
+ $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libmpeg2{,convert}.pc \
+ $(1)/usr/lib/pkgconfig/
+endef
+
+define Package/libmpeg2/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) \
+ $(PKG_INSTALL_DIR)/usr/lib/libmpeg2{,convert}.so.* \
+ $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libmpeg2))
--- /dev/null
+--- a/libmpeg2/motion_comp_altivec.c
++++ b/libmpeg2/motion_comp_altivec.c
+@@ -25,6 +25,8 @@
+
+ #ifdef ARCH_PPC
+
++#ifdef __I_WANT_ALTIVEC__
++
+ #ifdef HAVE_ALTIVEC_H
+ #include <altivec.h>
+ #endif
+@@ -1007,4 +1009,6 @@ static void MC_avg_xy_8_altivec (uint8_t
+
+ MPEG2_MC_EXTERN (altivec)
+
++#endif /* __I_WANT_ALTIVEC__ */
++
+ #endif
+--- a/libmpeg2/idct_altivec.c
++++ b/libmpeg2/idct_altivec.c
+@@ -25,6 +25,8 @@
+
+ #ifdef ARCH_PPC
+
++#ifdef __I_WANT_ALTIVEC__
++
+ #ifdef HAVE_ALTIVEC_H
+ #include <altivec.h>
+ #endif
+@@ -283,4 +285,6 @@ void mpeg2_idct_altivec_init (void)
+ }
+ }
+
++#endif /* __I_WANT_ALTIVEC__ */
++
+ #endif
+--- a/libmpeg2/idct.c
++++ b/libmpeg2/idct.c
+@@ -251,11 +251,13 @@ void mpeg2_idct_init (uint32_t accel)
+ } else
+ #endif
+ #ifdef ARCH_PPC
++#ifdef __I_WANT_ALTIVEC__
+ if (accel & MPEG2_ACCEL_PPC_ALTIVEC) {
+ mpeg2_idct_copy = mpeg2_idct_copy_altivec;
+ mpeg2_idct_add = mpeg2_idct_add_altivec;
+ mpeg2_idct_altivec_init ();
+ } else
++#endif /* __I_WANT_ALTIVEC__ */
+ #endif
+ #ifdef ARCH_ALPHA
+ if (accel & MPEG2_ACCEL_ALPHA_MVI) {
+--- a/libmpeg2/motion_comp.c
++++ b/libmpeg2/motion_comp.c
+@@ -43,9 +43,11 @@ void mpeg2_mc_init (uint32_t accel)
+ else
+ #endif
+ #ifdef ARCH_PPC
++#ifdef __I_WANT_ALTIVEC__
+ if (accel & MPEG2_ACCEL_PPC_ALTIVEC)
+ mpeg2_mc = mpeg2_mc_altivec;
+ else
++#endif /* __I_WANT_ALTIVEC__ */
+ #endif
+ #ifdef ARCH_ALPHA
+ if (accel & MPEG2_ACCEL_ALPHA)