[packages] gstreamer & gst-plugins-*: don't build on 2.4
[packages.git] / multimedia / gst-plugins-base / Makefile
1 #
2 # Copyright (C) 2008-2010 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-base
11 PKG_VERSION:=0.10.29
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-base/
16 PKG_MD5SUM:=d07e251152cccbaa81807c14cf0fd8c0
17
18 PKG_BUILD_DEPENDS:= gstreamer liboil
19
20 PKG_FIXUP:=libtool
21 PKG_INSTALL:=1
22
23 include $(INCLUDE_DIR)/package.mk
24
25 define Package/gstreamer/Default
26   CATEGORY:=Multimedia
27   SECTION:=multimedia
28   TITLE:=GStreamer
29   URL:=http://gstreamer.freedesktop.org/
30   DEPENDS:= @!LINUX_2_4
31 endef
32
33 define Package/gstreamer/description/Default
34  GStreamer open source multimedia framework
35 endef
36
37
38 define Package/gst-plugins-base
39 $(call Package/gstreamer/Default)
40   TITLE+= plugins collection (base)
41   DEPENDS+= $(GST_DEPENDS)
42 endef
43
44 define Package/gts-plugins-base/description
45 $(call Package/gstreamer/description/Default)
46  .
47  This meta package contains only dependencies to the other libraries and
48  plugins from the base plugins collection.
49 endef
50
51
52 GST_VERSION:=0.10
53
54 CONFIGURE_ARGS += \
55         --disable-debug \
56         --disable-examples \
57         \
58         --disable-cdparanoia \
59         --disable-ffmpegcolorspace \
60         --disable-freetypetest \
61         --disable-gnome_vfs \
62         --disable-gst_v4l \
63         --disable-libvisual \
64         --disable-oggtest \
65         --disable-pango \
66         --disable-subparse \
67         --disable-videorate \
68         --disable-videoscale \
69         --disable-vorbistest \
70         --disable-x \
71         --disable-xshm \
72         --disable-xvideo \
73         \
74         --without-libiconv-prefix \
75         --without-libintl-prefix \
76         --without-x \
77         \
78         --with-audioresample-format=int \
79
80 EXTRA_LDFLAGS+= \
81         -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
82
83
84 define Build/InstallDev
85         $(INSTALL_DIR) $(1)/usr/include/gstreamer-$(GST_VERSION)
86         ( cd $(PKG_INSTALL_DIR); $(CP) \
87                 ./usr/include/gstreamer-$(GST_VERSION)/* \
88                 $(1)/usr/include/gstreamer-$(GST_VERSION)/ \
89         )
90         $(INSTALL_DIR) $(1)/usr/lib
91         ( cd $(PKG_INSTALL_DIR); $(CP) \
92                 ./usr/lib/libgst*-$(GST_VERSION).{a,la,so*} \
93                 $(1)/usr/lib/ \
94         )
95         $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
96         ( cd $(PKG_INSTALL_DIR); $(CP) \
97                 ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.{la,so} \
98                 $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
99         )
100         $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
101         ( cd $(PKG_INSTALL_DIR); $(CP) \
102                 ./usr/lib/pkgconfig/gstreamer*-$(GST_VERSION).pc \
103                 $(1)/usr/lib/pkgconfig/ \
104         )
105 endef
106
107
108 define Package/gst-plugins-base/install
109         /bin/true
110 endef
111
112
113 # 1: short name
114 # 2: description
115 # 3: dependencies on other gstreamer libraries (short name)
116 # 4: dependencies on other packages
117 define GstBuildLibrary
118
119   GST_DEPENDS += +libgst$(1)
120
121   define Package/libgst$(1)
122     $(call Package/gstreamer/Default)
123     TITLE+= $(2) library (base)
124     DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $(4)
125   endef
126
127   define Package/libgst$(1)/description
128    $(call Package/gstreamer/description/Default)
129    .
130    This package contains the GStreamer $(2) library.
131   endef
132
133   define Package/libgst$(1)/install
134         $(INSTALL_DIR) $$(1)/usr/lib
135         ( cd $(PKG_INSTALL_DIR); $(CP) \
136                 ./usr/lib/libgst$(1)-$(GST_VERSION).so.* \
137                 $$(1)/usr/lib/ \
138         )
139   endef
140
141   $$(eval $$(call BuildPackage,libgst$(1)))
142 endef
143
144 $(eval $(call GstBuildLibrary,app,app,,))
145 $(eval $(call GstBuildLibrary,audio,audio,interfaces,))
146 $(eval $(call GstBuildLibrary,cdda,CDDA,,))
147 $(eval $(call GstBuildLibrary,fft,FFT,,))
148 $(eval $(call GstBuildLibrary,interfaces,interfaces,))
149 $(eval $(call GstBuildLibrary,netbuffer,network buffer,,))
150 $(eval $(call GstBuildLibrary,pbutils,utils,,))
151 $(eval $(call GstBuildLibrary,riff,RIFF media,audio tag,,))
152 $(eval $(call GstBuildLibrary,rtp,RTP,,))
153 $(eval $(call GstBuildLibrary,rtsp,RTSP,,))
154 $(eval $(call GstBuildLibrary,sdp,SDP,,))
155 $(eval $(call GstBuildLibrary,tag,tag support,,))
156 $(eval $(call GstBuildLibrary,video,video,,))
157
158
159 # 1: short name
160 # 2: description
161 # 3: dependencies on other gstreamer libraries (short name)
162 # 4: dependencies on other gstreamer plugins (short name)
163 # 5: dependencies on other packages
164 define GstBuildPlugin
165
166   GST_DEPENDS += +gst-mod-$(1)
167
168   define Package/gst-mod-$(1)
169     $(call Package/gstreamer/Default)
170     TITLE+= $(2) plugin (base)
171     DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $$(foreach p,$(4),+gst-mod-$$(p)) $(5)
172   endef
173
174   define Package/gst-mod-$(1)/description
175    $(call Package/gstreamer/description/Default)
176    .
177    This package contains the GStreamer $(2) plugin.
178   endef
179
180   define Package/gst-mod-$(1)/install
181         $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
182         ( cd $(PKG_INSTALL_DIR); $(CP) \
183                 ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
184                 $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
185         )
186   endef
187
188   $$(eval $$(call BuildPackage,gst-mod-$(1)))
189 endef
190
191 $(eval $(call GstBuildPlugin,alsa,ALSA,audio,,+alsa-lib))
192 $(eval $(call GstBuildPlugin,app,app,app,,))
193 $(eval $(call GstBuildPlugin,audioconvert,audio format conversion,audio,,))
194 $(eval $(call GstBuildPlugin,audiorate,audio rate adjusting,,,))
195 $(eval $(call GstBuildPlugin,audioresample,audio resampling,,,))
196 $(eval $(call GstBuildPlugin,audiotestsrc,audio test,controller,,))
197 $(eval $(call GstBuildPlugin,decodebin,media decoder,pbutils,,))
198 $(eval $(call GstBuildPlugin,decodebin2,media decoder (v2),pbutils,,))
199 $(eval $(call GstBuildPlugin,gio,GIO,,,))
200 $(eval $(call GstBuildPlugin,ogg,Ogg,riff tag,,+libogg))
201 $(eval $(call GstBuildPlugin,playbin,playback,interfaces pbutils,,))
202 $(eval $(call GstBuildPlugin,tcp,TCP,dataprotocol,,))
203 $(eval $(call GstBuildPlugin,theora,Theora,tag,ogg,+libtheora))
204 $(eval $(call GstBuildPlugin,typefindfunctions,'typefind' functions,,,))
205 $(eval $(call GstBuildPlugin,videotestsrc,video test,,,+liboil))
206 $(eval $(call GstBuildPlugin,volume,volume,audio controller,,+liboil))
207 $(eval $(call GstBuildPlugin,vorbis,Vorbis,audio tag,ogg,+libvorbis))
208
209 $(eval $(call BuildPackage,gst-plugins-base))