[packages] gst-plugins-ugly: update to 0.10.15, rework Makefile:
[openwrt.org/packages.git] / multimedia / gst-plugins-ugly / Makefile
blob:a/multimedia/gst-plugins-ugly/Makefile -> blob:b/multimedia/gst-plugins-ugly/Makefile
--- a/multimedia/gst-plugins-ugly/Makefile
+++ b/multimedia/gst-plugins-ugly/Makefile
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2009 OpenWrt.org
+# Copyright (C) 2009-2010 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,92 +8,117 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=gst-plugins-ugly
-PKG_VERSION:=0.10.13
-PKG_RELEASE:=2
+PKG_VERSION:=0.10.15
+PKG_RELEASE:=1
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
 PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-ugly/
-PKG_MD5SUM:=1619365247ef9cd7da1cd890285bf87a
+PKG_MD5SUM:=21c034a762a5da252f91640e53bfe457
+
+PKG_BUILD_DEPENDS:= gstreamer gst-plugins-base liboil
+
 PKG_FIXUP:=libtool
+PKG_INSTALL:=1
 
 include $(INCLUDE_DIR)/package.mk
 
-#export PATH:=$(PKG_BUILD_DIR)/bin:$(TARGET_PATH)
+define Package/gstreamer/Default
+  CATEGORY:=Multimedia
+  SECTION:=multimedia
+  TITLE:=GStreamer
+  URL:=http://gstreamer.freedesktop.org/
+endef
 
-PKG_INSTALL=1
+define Package/gstreamer/description/Default
+ GStreamer open source multimedia framework
+endef
 
-EXTRA_CFLAGS+= \
-	-I$(STAGING_DIR)/usr/lib/libintl/include \
-	-I$(STAGING_DIR)/usr/lib/libiconv/include \
-	-I$(STAGING_DIR)/usr/include/gtk-2.0/gdk \
-	-I$(STAGING_DIR)/usr/include/gstreamer-0.10
+
+define Package/gst-plugins-ugly
+$(call Package/gstreamer/Default)
+  TITLE+= plugins collection (ugly)
+  DEPENDS+= $(GST_DEPENDS)
+endef
+
+define Package/gts-plugins-ugly/description
+$(call Package/gstreamer/description/Default)
+ .
+ This meta package contains only dependencies to the other plugins from
+ the ugly plugins collection.
+endef
+
+
+GST_VERSION:=0.10
+
+CONFIGURE_ARGS += \
+	--disable-debug \
+	--disable-examples \
+	\
+	--disable-a52dec \
+	--disable-amrnb \
+	--disable-amrwb \
+	--disable-asfdemux \
+	--disable-cdio \
+	--disable-dvdlpcmdec \
+	--disable-dvdread \
+	--disable-dvdsub \
+	--disable-iec958 \
+	--disable-mpeg2dec \
+	--disable-mpegaudioparse \
+	--disable-mpegstream \
+	--disable-realmedia \
+	--disable-sidplay \
+	--disable-synaesthesia \
+	--disable-twolame \
+	--disable-x264 \
+	\
+	--without-libiconv-prefix \
+	--without-libintl-prefix \
+	--without-x \
 
 EXTRA_LDFLAGS+= \
 	-Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
-	-L$(STAGING_DIR)/usr/lib/libintl/lib \
-	-L$(STAGING_DIR)/usr/lib/libiconv/lib
 
-define Package/gst-plugins-ugly/Default
-  TITLE:=gst-plugins-ugly
-  URL:=http://gstreamer.freedesktop.org/
+
+define Package/gst-plugins-ugly/install
+	/bin/true
 endef
 
-define Package/gst-plugins-ugly-lame
-  $(call Package/gst-plugins-ugly/Default)
-  SECTION:=multimedia
-  CATEGORY:=Multimedia
-  TITLE+= (lame)
-  DEPENDS:=+gstreamer +lame-lib
+
+# 1: short name
+# 2: description
+# 3: dependencies on other gstreamer libraries (short name)
+# 4: dependencies on other gstreamer plugins (short name)
+# 5: dependencies on other packages
+define GstBuildPlugin
+
+  GST_DEPENDS += +gst-mod-$(1)
+
+  define Package/gst-mod-$(1)
+    $(call Package/gstreamer/Default)
+    TITLE+= $(2) plugin (ugly)
+    DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $$(foreach p,$(4),+gst-mod-$$(p)) $(5)
+  endef
+
+  define Package/gst-mod-$(1)/description
+   $(call Package/gstreamer/description/Default)
+   .
+   This package contains the GStreamer $(2) plugin.
+  endef
+
+  define Package/gst-mod-$(1)/install
+	$(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
+	( cd $(PKG_INSTALL_DIR); $(CP) \
+		./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
+		$$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
+	)
+  endef
+
+  $$(eval $$(call BuildPackage,gst-mod-$(1)))
 endef
 
-define Package/gst-plugins-ugly-lame/description
-	gstreamer MP3 encoder plugin
-endef
+$(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),,,+lame-lib))
+$(eval $(call GstBuildPlugin,mad,MP3 decoder (using MAD),audio tag,,+libid3tag +libmad))
 
-define Package/gst-plugins-ugly-mad
-  $(call Package/gst-plugins-ugly/Default)
-  SECTION:=multimedia
-  CATEGORY:=Multimedia
-  TITLE+= (mad)
-  DEPENDS:=+gstreamer +gst-plugins-base-libgsttag +gst-plugins-base-libgstaudio +gst-plugins-base-libgstinterfaces +libmad +libid3tag
-endef
+$(eval $(call BuildPackage,gst-plugins-ugly))
 
-define Package/gst-plugins-ugly-mad/description
-=
-	gstreamer MP3 decoder plugins
-endef
-
-define Build/Configure
-	$(call Build/Configure/Default, \
-		--disable-pango \
-		--disable-gnome_vfs \
-		--disable-examples \
-		--disable-cdparanoia \
-		--disable-libvisual \
-		--disable-oggtest \
-		--disable-vorbistest \
-		--disable-freetypetest \
-		--without-x \
-	)
-	mkdir -p $(PKG_BUILD_DIR)/bin
-	touch $(PKG_BUILD_DIR)/bin/gtkdoc-reugly
-	chmod +x $(PKG_BUILD_DIR)/bin/gtkdoc-reugly
-endef
-
-define Package/gst-plugins-ugly-lame/install
-	$(INSTALL_DIR) $(1)/usr/lib/gstreamer-0.10
-	$(CP) \
-		$(PKG_INSTALL_DIR)/usr/lib/gstreamer-0.10/libgstlame.so \
-		$(1)/usr/lib/gstreamer-0.10
-endef
-
-define Package/gst-plugins-ugly-mad/install
-	$(INSTALL_DIR) $(1)/usr/lib/gstreamer-0.10
-	$(CP) \
-		$(PKG_INSTALL_DIR)/usr/lib/gstreamer-0.10/libgstmad.so \
-		$(1)/usr/lib/gstreamer-0.10
-endef
-
-$(eval $(call BuildPackage,gst-plugins-ugly-lame))
-$(eval $(call BuildPackage,gst-plugins-ugly-mad))
-

comments