[packages] radvd: bump to v1.8 - solves size regression (#9733)
[openwrt/svn-archive/archive.git] / multimedia / gstreamer / 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:=gstreamer
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/gstreamer/
16 PKG_MD5SUM:=c92d6bce4fc65fa9d5a3ad35cdd1a466
17
18 PKG_FIXUP:=libtool
19 PKG_REMOVE_FILES:=autogen.sh aclocal.m4
20
21 PKG_INSTALL:=1
22
23 include $(INCLUDE_DIR)/package.mk
24 include $(INCLUDE_DIR)/nls.mk
25
26 define Package/gstreamer/Default
27 CATEGORY:=Multimedia
28 SECTION:=multimedia
29 TITLE:=GStreamer
30 URL:=http://gstreamer.freedesktop.org/
31 DEPENDS:= @!LINUX_2_4
32 endef
33
34 define Package/gstreamer/description/Default
35 GStreamer open source multimedia framework
36 endef
37
38
39 define Package/gstreamer
40 $(call Package/gstreamer/Default)
41 TITLE+= framework
42 DEPENDS+= +libgstreamer \
43 +libgstcheck \
44 +libgstcontroller \
45 +libgstdataprotocol \
46 +libgstnet
47 endef
48
49 define Package/gstreamer/description
50 $(call Package/gstreamer/description/Default)
51 .
52 This meta package contains only dependencies on the other GStreamer
53 componenents.
54 endef
55
56
57 define Package/gstreamer-utils
58 $(call Package/gstreamer/Default)
59 TITLE+= utilities
60 DEPENDS+= +libgstreamer
61 endef
62
63 define Package/gstreamer-utils/description
64 $(call Package/gstreamer/description/Default)
65 .
66 This package contains the GStreamer utilities.
67 endef
68
69
70 define Package/libgstreamer
71 $(call Package/gstreamer/Default)
72 TITLE+= library (core)
73 DEPENDS+= +glib2 +libpthread +libxml2
74 endef
75
76 define Package/libgstreamer/description
77 $(call Package/gstreamer/description/Default)
78 .
79 This package contains the GStreamer core library.
80 endef
81
82
83 GST_VERSION:=0.10
84
85 CONFIGURE_ARGS += \
86 --disable-debug \
87 --disable-examples \
88 --disable-tests \
89 --disable-valgrind \
90 \
91 --disable-gst-debug \
92 \
93 --without-libiconv-prefix \
94 --without-libintl-prefix \
95 --without-x \
96
97 EXTRA_LDFLAGS+= \
98 -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
99 -L$(ICONV_PREFIX)/lib -L$(INTL_PREFIX)/lib
100
101 define Build/InstallDev
102 $(INSTALL_DIR) $(1)/usr/include/gstreamer-$(GST_VERSION)
103 ( cd $(PKG_INSTALL_DIR); $(CP) \
104 ./usr/include/gstreamer-$(GST_VERSION)/* \
105 $(1)/usr/include/gstreamer-$(GST_VERSION)/ \
106 )
107 $(INSTALL_DIR) $(1)/usr/lib
108 ( cd $(PKG_INSTALL_DIR); $(CP) \
109 ./usr/lib/libgst*-$(GST_VERSION).{a,la,so*} \
110 $(1)/usr/lib/ \
111 )
112 $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
113 ( cd $(PKG_INSTALL_DIR); $(CP) \
114 ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.{la,so} \
115 $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
116 )
117 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
118 ( cd $(PKG_INSTALL_DIR); $(CP) \
119 ./usr/lib/pkgconfig/gstreamer*-$(GST_VERSION).pc \
120 $(1)/usr/lib/pkgconfig/ \
121 )
122 $(INSTALL_DIR) $(2)/share/aclocal
123 ( cd $(PKG_INSTALL_DIR); $(CP) \
124 ./usr/share/aclocal/* \
125 $(2)/share/aclocal/ \
126 )
127 endef
128
129 define Package/gstreamer/install
130 /bin/true
131 endef
132
133 define Package/gstreamer-utils/install
134 $(INSTALL_DIR) $(1)/usr/bin
135 ( cd $(PKG_INSTALL_DIR); $(CP) \
136 ./usr/bin/gst-feedback* \
137 ./usr/bin/gst-launch* \
138 ./usr/bin/gst-inspect* \
139 ./usr/bin/gst-typefind* \
140 ./usr/bin/gst-xmlinspect* \
141 ./usr/bin/gst-xmllaunch* \
142 $(1)/usr/bin/ \
143 )
144 endef
145
146 define Package/libgstreamer/install
147 $(INSTALL_DIR) $(1)/usr/lib
148 ( cd $(PKG_INSTALL_DIR); $(CP) \
149 ./usr/lib/libgstbase-$(GST_VERSION).so.* \
150 ./usr/lib/libgstreamer-$(GST_VERSION).so.* \
151 $(1)/usr/lib/ \
152 )
153 $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
154 ( cd $(PKG_INSTALL_DIR); $(CP) \
155 ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.so \
156 $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
157 )
158 endef
159
160
161 # 1: short name
162 # 2: description
163 # 3: dependencies on other gstreamer libraries (short name)
164 # 4: dependencies on other packages
165 define GstBuildLibrary
166
167 define Package/libgst$(1)
168 $(call Package/gstreamer/Default)
169 TITLE+= $(2) library (core)
170 DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $(4)
171 endef
172
173 define Package/libgst$(1)/description
174 $(call Package/gstreamer/description/Default)
175 .
176 This package contains the GStreamer $(2) library.
177 endef
178
179 define Package/libgst$(1)/install
180 $(INSTALL_DIR) $$(1)/usr/lib
181 ( cd $(PKG_INSTALL_DIR); $(CP) \
182 ./usr/lib/libgst$(1)-$(GST_VERSION).so.* \
183 $$(1)/usr/lib/ \
184 )
185 endef
186
187 $$(eval $$(call BuildPackage,libgst$(1)))
188 endef
189
190 $(eval $(call GstBuildLibrary,check,check unit testing))
191 $(eval $(call GstBuildLibrary,controller,dynamic parameter control))
192 $(eval $(call GstBuildLibrary,dataprotocol,data protocol))
193 $(eval $(call GstBuildLibrary,net,network classes))
194
195 $(eval $(call BuildPackage,gstreamer))
196 $(eval $(call BuildPackage,gstreamer-utils))
197 $(eval $(call BuildPackage,libgstreamer))
198