You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

242 lines
6.8 KiB

  1. #
  2. # Copyright (C) 2008-2014 OpenWrt.org
  3. #
  4. # This is free software, licensed under the GNU General Public License v2.
  5. # See /LICENSE for more information.
  6. #
  7. include $(TOPDIR)/rules.mk
  8. PKG_NAME:=gst1-plugins-base
  9. PKG_VERSION:=1.2.3
  10. PKG_RELEASE:=1
  11. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
  12. PKG_LICENSE:=LGPLv2 GPLv2
  13. PKG_LICENSE_FILE:=COPYING.LIB COPYING
  14. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-base-$(PKG_VERSION)
  15. PKG_SOURCE:=gst-plugins-base-$(PKG_VERSION).tar.xz
  16. PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-base/
  17. PKG_MD5SUM:=17aeabfbcd232526f50c9bee375f1b97
  18. PKG_BUILD_DEPENDS:= gstreamer1 liboil
  19. PKG_CONFIG_DEPENDS:= \
  20. CONFIG_PACKAGE_gst1-mod-alsa \
  21. CONFIG_PACKAGE_gst1-mod-app \
  22. CONFIG_PACKAGE_gst1-mod-audioconvert \
  23. CONFIG_PACKAGE_gst1-mod-audiorate \
  24. CONFIG_PACKAGE_gst1-mod-audioresample \
  25. CONFIG_PACKAGE_gst1-mod-audiotestsrc \
  26. CONFIG_PACKAGE_gst1-mod-gio \
  27. CONFIG_PACKAGE_gst1-mod-ogg \
  28. CONFIG_PACKAGE_gst1-mod-tcp \
  29. CONFIG_PACKAGE_gst1-mod-theora \
  30. CONFIG_PACKAGE_gst1-mod-videotestsrc \
  31. CONFIG_PACKAGE_gst1-mod-volume \
  32. CONFIG_PACKAGE_gst1-mod-vorbis \
  33. PKG_FIXUP:=autoreconf
  34. PKG_INSTALL:=1
  35. include $(INCLUDE_DIR)/package.mk
  36. include $(INCLUDE_DIR)/nls.mk
  37. define Package/gstreamer1/Default
  38. CATEGORY:=Multimedia
  39. SECTION:=multimedia
  40. TITLE:=GStreamer
  41. URL:=http://gstreamer.freedesktop.org/
  42. DEPENDS:= $(ICONV_DEPENDS)
  43. endef
  44. define Package/gstreamer1/description/Default
  45. GStreamer open source multimedia framework
  46. endef
  47. define Package/gst1-plugins-base
  48. $(call Package/gstreamer1/Default)
  49. TITLE+= plugins collection (base)
  50. DEPENDS+= $(GST_DEPENDS)
  51. endef
  52. define Package/gts1-plugins-base/description
  53. $(call Package/gstreamer1/description/Default)
  54. .
  55. This meta package contains only dependencies to the other libraries and
  56. plugins from the base plugins collection.
  57. endef
  58. GST_COND_SELECT = $(patsubst %,$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),--enable,--disable)-%,$(1))
  59. GST_VERSION:=1.0
  60. CONFIGURE_ARGS += \
  61. --disable-debug \
  62. --disable-examples \
  63. \
  64. $(call GST_COND_SELECT,alsa) \
  65. --disable-alsa-test \
  66. $(call GST_COND_SELECT,app) \
  67. $(call GST_COND_SELECT,audioconvert) \
  68. $(call GST_COND_SELECT,audiorate) \
  69. $(call GST_COND_SELECT,audioresample) \
  70. $(call GST_COND_SELECT,audiotestsrc) \
  71. --disable-cdparanoia \
  72. --disable-ffmpegcolorspace \
  73. --disable-freetypetest \
  74. $(call GST_COND_SELECT,gio) \
  75. --disable-gnome_vfs \
  76. --disable-gst_v4l \
  77. --disable-libvisual \
  78. $(call GST_COND_SELECT,ogg) \
  79. --disable-oggtest \
  80. --disable-pango \
  81. --disable-subparse \
  82. $(call GST_COND_SELECT,tcp) \
  83. $(call GST_COND_SELECT,theora) \
  84. --disable-videorate \
  85. --disable-videoscale \
  86. $(call GST_COND_SELECT,videotestsrc) \
  87. $(call GST_COND_SELECT,volume) \
  88. $(call GST_COND_SELECT,vorbis) \
  89. --disable-vorbistest \
  90. --disable-x \
  91. --disable-xshm \
  92. --disable-xvideo \
  93. \
  94. --without-libiconv-prefix \
  95. --without-libintl-prefix \
  96. --without-x \
  97. \
  98. --with-audioresample-format=int \
  99. EXTRA_LDFLAGS+= \
  100. -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
  101. $(if $(ICONV_FULL),-liconv) \
  102. define Build/InstallDev
  103. $(INSTALL_DIR) $(1)/usr/include/gstreamer-$(GST_VERSION)
  104. ( cd $(PKG_INSTALL_DIR); $(CP) \
  105. ./usr/include/gstreamer-$(GST_VERSION)/* \
  106. $(1)/usr/include/gstreamer-$(GST_VERSION)/ \
  107. )
  108. $(INSTALL_DIR) $(1)/usr/lib
  109. ( cd $(PKG_INSTALL_DIR); $(CP) \
  110. ./usr/lib/libgst*-$(GST_VERSION).{la,so*} \
  111. $(1)/usr/lib/ \
  112. )
  113. $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)
  114. ( cd $(PKG_INSTALL_DIR); $(CP) \
  115. ./usr/lib/gstreamer-$(GST_VERSION)/libgst*.{la,so} \
  116. $(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  117. )
  118. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
  119. ( cd $(PKG_INSTALL_DIR); $(CP) \
  120. ./usr/lib/pkgconfig/gstreamer*-$(GST_VERSION).pc \
  121. $(1)/usr/lib/pkgconfig/ \
  122. )
  123. endef
  124. define Package/gst1-plugins-base/install
  125. /bin/true
  126. endef
  127. # 1: short name
  128. # 2: description
  129. # 3: dependencies on other gstreamer libraries (short name)
  130. # 4: dependencies on other packages
  131. define GstBuildLibrary
  132. GST_DEPENDS += +libgst1$(1)
  133. define Package/libgst1$(1)
  134. $(call Package/gstreamer1/Default)
  135. TITLE+= $(2) library (base)
  136. DEPENDS+= +libgstreamer1 $$(foreach p,$(3),+libgst1$$(p)) $(4)
  137. endef
  138. define Package/libgst1$(1)/description
  139. $(call Package/gstreamer1/description/Default)
  140. .
  141. This package contains the GStreamer $(2) library.
  142. endef
  143. define Package/libgst1$(1)/install
  144. $(INSTALL_DIR) $$(1)/usr/lib
  145. ( cd $(PKG_INSTALL_DIR); $(CP) \
  146. ./usr/lib/libgst$(1)-$(GST_VERSION).so.* \
  147. $$(1)/usr/lib/ \
  148. )
  149. endef
  150. $$(eval $$(call BuildPackage,libgst1$(1)))
  151. endef
  152. $(eval $(call GstBuildLibrary,app,app,,))
  153. $(eval $(call GstBuildLibrary,audio,audio,tag,))
  154. $(eval $(call GstBuildLibrary,fft,FFT,,))
  155. $(eval $(call GstBuildLibrary,pbutils,utils,audio tag video,))
  156. $(eval $(call GstBuildLibrary,riff,RIFF media,audio tag,,))
  157. $(eval $(call GstBuildLibrary,rtp,RTP,,))
  158. $(eval $(call GstBuildLibrary,rtsp,RTSP,,))
  159. $(eval $(call GstBuildLibrary,sdp,SDP,,))
  160. $(eval $(call GstBuildLibrary,tag,tag support,,))
  161. $(eval $(call GstBuildLibrary,video,video,,))
  162. # 1: short name
  163. # 2: description
  164. # 3: dependencies on other gstreamer libraries (short name)
  165. # 4: dependencies on other gstreamer plugins (short name)
  166. # 5: dependencies on other packages
  167. define GstBuildPlugin
  168. GST_DEPENDS += +gst1-mod-$(1)
  169. define Package/gst1-mod-$(1)
  170. $(call Package/gstreamer1/Default)
  171. TITLE+= $(2) plugin (base)
  172. DEPENDS+= +libgstreamer1 $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  173. endef
  174. define Package/gst1-mod-$(1)/description
  175. $(call Package/gstreamer1/description/Default)
  176. .
  177. This package contains the GStreamer $(2) plugin.
  178. endef
  179. define Package/gst1-mod-$(1)/install
  180. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  181. ( cd $(PKG_INSTALL_DIR); $(CP) \
  182. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  183. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  184. )
  185. endef
  186. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  187. endef
  188. $(eval $(call GstBuildPlugin,alsa,ALSA,audio tag,,+alsa-lib))
  189. $(eval $(call GstBuildPlugin,app,app,app,,))
  190. $(eval $(call GstBuildPlugin,audioconvert,audio format conversion,audio,,))
  191. $(eval $(call GstBuildPlugin,audiorate,audio rate adjusting,audio tag,,))
  192. $(eval $(call GstBuildPlugin,audioresample,audio resampling,audio tag,,))
  193. $(eval $(call GstBuildPlugin,audiotestsrc,audio test,audio tag controller,,))
  194. $(eval $(call GstBuildPlugin,playback,media decoder (v2),pbutils,,))
  195. $(eval $(call GstBuildPlugin,gio,GIO,,,))
  196. $(eval $(call GstBuildPlugin,ogg,Ogg,riff tag pbutils video,,+libogg))
  197. $(eval $(call GstBuildPlugin,tcp,TCP,,,))
  198. $(eval $(call GstBuildPlugin,theora,Theora,tag video,,+libogg +libtheora))
  199. $(eval $(call GstBuildPlugin,typefindfunctions,'typefind' functions,audio pbutils tag video,,))
  200. $(eval $(call GstBuildPlugin,videotestsrc,video test,video,,+liboil))
  201. $(eval $(call GstBuildPlugin,volume,volume,audio controller,,+liboil))
  202. $(eval $(call GstBuildPlugin,vorbis,Vorbis,audio tag,ogg,+libvorbis))
  203. $(eval $(call BuildPackage,gst1-plugins-base))