2 # Copyright (C) 2008-2013 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR)/rules.mk
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gstreamer/
16 PKG_MD5SUM:=a0cf7d6877f694a1a2ad2b4d1ecb890b
19 PKG_REMOVE_FILES:=autogen.sh aclocal.m4
23 include $(INCLUDE_DIR)/package.mk
24 include $(INCLUDE_DIR)/nls.mk
26 define Package/gstreamer/Default
30 URL:=http://gstreamer.freedesktop.org/
33 define Package/gstreamer/description/Default
34 GStreamer open source multimedia framework
38 define Package/gstreamer
39 $(call Package/gstreamer/Default)
41 DEPENDS+= +libgstreamer \
48 define Package/gstreamer/description
49 $(call Package/gstreamer/description/Default)
51 This meta package contains only dependencies on the other GStreamer
56 define Package/gstreamer-utils
57 $(call Package/gstreamer/Default)
59 DEPENDS+= +libgstreamer
62 define Package/gstreamer-utils/description
63 $(call Package/gstreamer/description/Default)
65 This package contains the GStreamer utilities.
69 define Package/libgstreamer
70 $(call Package/gstreamer/Default)
71 TITLE+= library (core)
72 DEPENDS+= +glib2 +libpthread +libxml2
75 define Package/libgstreamer/description
76 $(call Package/gstreamer/description/Default)
78 This package contains the GStreamer core library.
88 --without-libiconv-prefix \
89 --without-libintl-prefix \
93 -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
94 -L$(ICONV_PREFIX)/lib -L$(INTL_PREFIX)/lib
96 define Build/InstallDev
97 $(INSTALL_DIR) $(1)/usr/include/gstreamer-$(GST_VERSION)
98 ( cd $(PKG_INSTALL_DIR); $(CP) \
99 ./usr/include/gstreamer-$(GST_VERSION)/* \
100 $(1)/usr/include/gstreamer-$(GST_VERSION)/ \
102 $(INSTALL_DIR) $(1)/usr/lib
103 ( cd $(PKG_INSTALL_DIR); $(CP) \
104 ./usr/lib/libgst*-$(GST_VERSION).{a,la,so*} \
107 $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
108 ( cd $(PKG_INSTALL_DIR); $(CP) \
109 ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.{la,so} \
110 $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
112 $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
113 ( cd $(PKG_INSTALL_DIR); $(CP) \
114 ./usr/lib/pkgconfig/gstreamer*-$(GST_VERSION).pc \
115 $(1)/usr/lib/pkgconfig/ \
117 $(INSTALL_DIR) $(2)/share/aclocal
118 ( cd $(PKG_INSTALL_DIR); $(CP) \
119 ./usr/share/aclocal/* \
120 $(2)/share/aclocal/ \
124 define Package/gstreamer/install
128 define Package/gstreamer-utils/install
129 $(INSTALL_DIR) $(1)/usr/bin
130 ( cd $(PKG_INSTALL_DIR); $(CP) \
131 ./usr/bin/gst-feedback* \
132 ./usr/bin/gst-launch* \
133 ./usr/bin/gst-inspect* \
134 ./usr/bin/gst-typefind* \
135 ./usr/bin/gst-xmlinspect* \
136 ./usr/bin/gst-xmllaunch* \
141 define Package/libgstreamer/install
142 $(INSTALL_DIR) $(1)/usr/lib
143 ( cd $(PKG_INSTALL_DIR); $(CP) \
144 ./usr/lib/libgstbase-$(GST_VERSION).so.* \
145 ./usr/lib/libgstreamer-$(GST_VERSION).so.* \
148 $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
149 ( cd $(PKG_INSTALL_DIR); $(CP) \
150 ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.so \
151 $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
158 # 3: dependencies on other gstreamer libraries (short name)
159 # 4: dependencies on other packages
160 define GstBuildLibrary
162 define Package/libgst$(1)
163 $(call Package/gstreamer/Default)
164 TITLE+= $(2) library (core)
165 DEPENDS+= +libgstreamer $$(foreach p,$(3),+libgst$$(p)) $(4)
168 define Package/libgst$(1)/description
169 $(call Package/gstreamer/description/Default)
171 This package contains the GStreamer $(2) library.
174 define Package/libgst$(1)/install
175 $(INSTALL_DIR) $$(1)/usr/lib
176 ( cd $(PKG_INSTALL_DIR); $(CP) \
177 ./usr/lib/libgst$(1)-$(GST_VERSION).so.* \
182 $$(eval $$(call BuildPackage,libgst$(1)))
185 $(eval $(call GstBuildLibrary,check,check unit testing))
186 $(eval $(call GstBuildLibrary,controller,dynamic parameter control))
187 $(eval $(call GstBuildLibrary,dataprotocol,data protocol))
188 $(eval $(call GstBuildLibrary,net,network classes))
190 $(eval $(call BuildPackage,gstreamer))
191 $(eval $(call BuildPackage,gstreamer-utils))
192 $(eval $(call BuildPackage,libgstreamer))