gst-plugins-bad: fix dependency issues
[packages.git] / multimedia / gst-plugins-ugly / Makefile
1 #
2 # Copyright (C) 2009-2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=gst-plugins-ugly
11 PKG_VERSION:=0.10.15
12 PKG_RELEASE:=2
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-ugly/
16 PKG_MD5SUM:=21c034a762a5da252f91640e53bfe457
17
18 PKG_BUILD_DEPENDS:= gstreamer gst-plugins-base liboil
19 PKG_CONFIG_DEPENDS:= \
20         CONFIG_PACKAGE_gst-mod-asf \
21         CONFIG_PACKAGE_gst-mod-lame \
22         CONFIG_PACKAGE_gst-mod-mad \
23         CONFIG_PACKAGE_gst-mod-mpeg2dec \
24
25 PKG_FIXUP:=autoreconf
26 PKG_INSTALL:=1
27
28 include $(INCLUDE_DIR)/package.mk
29 include $(INCLUDE_DIR)/nls.mk
30
31 define Package/gstreamer/Default
32   CATEGORY:=Multimedia
33   SECTION:=multimedia
34   TITLE:=GStreamer
35   URL:=http://gstreamer.freedesktop.org/
36 endef
37
38 define Package/gstreamer/description/Default
39  GStreamer open source multimedia framework
40 endef
41
42
43 define Package/gst-plugins-ugly
44 $(call Package/gstreamer/Default)
45   TITLE+= plugins collection (ugly)
46   DEPENDS+= $(GST_DEPENDS)
47 endef
48
49 define Package/gts-plugins-ugly/description
50 $(call Package/gstreamer/description/Default)
51  .
52  This meta package contains only dependencies to the other plugins from
53  the ugly plugins collection.
54 endef
55
56
57 GST_COND_SELECT = $(patsubst %,$(if $(CONFIG_PACKAGE_gst-mod-$(1)),--enable,--disable)-%,$(1))
58
59 GST_VERSION:=0.10
60
61 CONFIGURE_ARGS += \
62         --disable-debug \
63         --disable-examples \
64         \
65         --disable-a52dec \
66         --disable-amrnb \
67         --disable-amrwb \
68         $(call GST_COND_SELECT,asf) \
69         --disable-cdio \
70         --disable-dvdlpcmdec \
71         --disable-dvdread \
72         --disable-dvdsub \
73         --disable-iec958 \
74         $(call GST_COND_SELECT,lame) \
75         $(call GST_COND_SELECT,mad) \
76         $(call GST_COND_SELECT,mpeg2dec) \
77         --disable-mpegaudioparse \
78         --disable-mpegstream \
79         --disable-realmedia \
80         --disable-sidplay \
81         --disable-synaesthesia \
82         --disable-twolame \
83         --disable-x264 \
84         \
85         --without-libiconv-prefix \
86         --without-libintl-prefix \
87
88 EXTRA_LDFLAGS+= \
89         -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
90
91
92 define Package/gst-plugins-ugly/install
93         /bin/true
94 endef
95
96
97 # 1: short name
98 # 2: description
99 # 3: dependencies on other gstreamer libraries (short name)
100 # 4: dependencies on other gstreamer plugins (short name)
101 # 5: dependencies on other packages
102 define GstBuildPlugin
103
104   GST_DEPENDS += +gst-mod-$(1)
105
106   define Package/gst-mod-$(1)
107     $(call Package/gstreamer/Default)
108     TITLE+= $(2) plugin (ugly)
109     DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $$(foreach p,$(4),+gst-mod-$$(p)) $(5)
110   endef
111
112   define Package/gst-mod-$(1)/description
113    $(call Package/gstreamer/description/Default)
114    .
115    This package contains the GStreamer $(2) plugin.
116   endef
117
118   define Package/gst-mod-$(1)/install
119         $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
120         ( cd $(PKG_INSTALL_DIR); $(CP) \
121                 ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
122                 $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
123         )
124   endef
125
126   $$(eval $$(call BuildPackage,gst-mod-$(1)))
127 endef
128
129 $(eval $(call GstBuildPlugin,asf,ASF demuxer,audio riff rtp rtsp sdp tag,,))
130 $(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),,,+lame-lib))
131 $(eval $(call GstBuildPlugin,mad,MP3 decoder (using MAD),audio tag,,+libid3tag +libmad))
132 $(eval $(call GstBuildPlugin,mpeg2dec,MPEG decoder,video,,+libmpeg2))
133
134 $(eval $(call BuildPackage,gst-plugins-ugly))