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.

250 lines
8.5 KiB

  1. #
  2. # Copyright (C) 2009-2016 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-good
  9. PKG_VERSION:=1.15.2
  10. PKG_RELEASE:=2
  11. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
  12. Ted Hess <thess@kitschensync.net>
  13. PKG_LICENSE:=LGPLv2
  14. PKG_LICENSE_FILES:=COPYING
  15. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-good-$(PKG_VERSION)
  16. PKG_SOURCE:=gst-plugins-good-$(PKG_VERSION).tar.xz
  17. PKG_SOURCE_URL:=https://gstreamer.freedesktop.org/src/gst-plugins-good/
  18. PKG_HASH:=b805962a2d777ff6145f6ca2ca8458499c9e23236cbcc41787c69ac51b02c818
  19. PKG_CONFIG_DEPENDS:= \
  20. CONFIG_PACKAGE_gst1-mod-lame \
  21. CONFIG_PACKAGE_gst1-mod-mpg123 \
  22. PKG_FIXUP:=autoreconf
  23. PKG_BUILD_PARALLEL:=1
  24. PKG_INSTALL:=1
  25. include $(INCLUDE_DIR)/package.mk
  26. include $(INCLUDE_DIR)/nls.mk
  27. GST_GOOD_MODULES:=
  28. define Package/gstreamer1-good/Default
  29. CATEGORY:=Multimedia
  30. SECTION:=multimedia
  31. TITLE:=GStreamer
  32. URL:=https://gstreamer.freedesktop.org/
  33. DEPENDS:= +libgstreamer1 +libgst1pbutils $(ICONV_DEPENDS)
  34. endef
  35. define Package/gstreamer1-good/description/Default
  36. GStreamer open source multimedia framework
  37. endef
  38. define Package/gst1-plugins-good
  39. $(call Package/gstreamer1-good/Default)
  40. TITLE+= plugins collection (good)
  41. DEPENDS+= $(GST_DEPENDS)
  42. HIDDEN:=1
  43. endef
  44. define Package/gst1-plugins-good/description
  45. $(call Package/gstreamer1-good/description/Default)
  46. .
  47. This meta package contains only dependencies to the other plugins from
  48. the good plugins collection.
  49. endef
  50. define Package/gstreamer1-plugins-good
  51. $(call Package/gstreamer1-good/Default)
  52. TITLE+= plugins collection (good)
  53. DEPENDS:=+ALL:gst1-plugins-good +gstreamer1-plugins-base
  54. endef
  55. define Package/gstreamer1-plugins-good/config
  56. menu "Select GStreamer good modules"
  57. depends on PACKAGE_gstreamer1-plugins-good
  58. config gst1-plugins-good-all
  59. bool "Include all GStreamer good plugins"
  60. select PACKAGE_gst1-plugins-good
  61. comment "Modules"
  62. $(foreach mod,$(GST_GOOD_MODULES), \
  63. config PACKAGE_gst1-mod-$(mod)
  64. prompt "GStreamer $(mod) module"
  65. )
  66. endmenu
  67. endef
  68. GST_COND_SELECT = $(patsubst %,$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),--enable,--disable)-%,$(1))
  69. GST_VERSION:=1.0
  70. CONFIGURE_ARGS += \
  71. $(call GST_COND_SELECT,lame) \
  72. $(call GST_COND_SELECT,mpg123) \
  73. \
  74. --disable-Bsymbolic \
  75. --disable-debug \
  76. --disable-examples \
  77. --disable-fatal-warnings \
  78. --disable-glib-asserts \
  79. --disable-gobject-cast-checks \
  80. --disable-gtk-doc-html \
  81. --disable-rpath \
  82. --disable-valgrind \
  83. \
  84. --disable-aalib \
  85. --disable-annodex \
  86. --disable-bz2 \
  87. --disable-cairo \
  88. --disable-directsound \
  89. --disable-dv1394 \
  90. --disable-esd \
  91. --disable-gconf \
  92. --disable-gconftool \
  93. --disable-gdk_pixbuf \
  94. --disable-hal \
  95. --disable-libcaca \
  96. --disable-libdv \
  97. --disable-osx_audio \
  98. --disable-osx_video \
  99. --disable-pulse \
  100. --disable-qtdemux \
  101. --disable-rtspmanager \
  102. --disable-shout2 \
  103. --disable-sunaudio \
  104. --disable-wavpack \
  105. --disable-x \
  106. --disable-xshm \
  107. --disable-xvideo \
  108. --disable-y4m \
  109. --disable-zlib \
  110. \
  111. --without-gudev \
  112. --without-libv4l2 \
  113. --without-libiconv-prefix \
  114. --without-libintl-prefix
  115. define Package/gst1-plugins-good/install
  116. /bin/true
  117. endef
  118. # 1: short name
  119. # 2: description
  120. # 3: dependencies on other gstreamer libraries (short name)
  121. # 4: dependencies on other gstreamer plugins (short name)
  122. # 5: dependencies on other packages
  123. define GstBuildPlugin
  124. GST_DEPENDS += +gst1-mod-$(1)
  125. GST_GOOD_MODULES+= $(1)
  126. define Package/gst1-mod-$(1)
  127. $(call Package/gstreamer1-good/Default)
  128. TITLE+= $(2) plugin (good)
  129. DEPENDS+= $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  130. HIDDEN:=1
  131. endef
  132. define Package/gst1-mod-$(1)/description
  133. $(call Package/gstreamer1-good/description/Default)
  134. .
  135. This package contains the GStreamer $(2) plugin.
  136. endef
  137. define Package/gst1-mod-$(1)/install
  138. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  139. ( cd $(PKG_INSTALL_DIR); $(CP) \
  140. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  141. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  142. )
  143. endef
  144. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  145. endef
  146. #$(eval $(call GstBuildPlugin,1394,IEEE 1394 support,,,))
  147. $(eval $(call GstBuildPlugin,alaw,alaw codec,audio,,))
  148. $(eval $(call GstBuildPlugin,alpha,alpha support,video,,))
  149. $(eval $(call GstBuildPlugin,alphacolor,alphacolor support,video,,))
  150. $(eval $(call GstBuildPlugin,apetag,apetag support,audio pbutils tag video,,))
  151. $(eval $(call GstBuildPlugin,audiofx,audio effects,audio fft controller,,))
  152. $(eval $(call GstBuildPlugin,audioparsers,audioparsers,audio tag pbutils,,))
  153. $(eval $(call GstBuildPlugin,auparse,auparse,audio tag pbutils,,))
  154. $(eval $(call GstBuildPlugin,autodetect,format auto-detection,,,))
  155. $(eval $(call GstBuildPlugin,avi,avi support,audio riff tag video,,))
  156. $(eval $(call GstBuildPlugin,cutter,audio cutter,audio,,))
  157. $(eval $(call GstBuildPlugin,debug,debugging,,,))
  158. $(eval $(call GstBuildPlugin,deinterlace,deinterlace support,video,,))
  159. $(eval $(call GstBuildPlugin,dtmf,dtmf support,rtp,,))
  160. #$(eval $(call GstBuildPlugin,dv,dv support,audio tag video,,))
  161. $(eval $(call GstBuildPlugin,effectv,effectvsupport,video,,))
  162. $(eval $(call GstBuildPlugin,equalizer,audio equalizer,audio controller,,))
  163. $(eval $(call GstBuildPlugin,flac,FLAC codec,audio pbutils tag,,+libflac))
  164. $(eval $(call GstBuildPlugin,flv,flv codec,audio pbutils tag video,,))
  165. $(eval $(call GstBuildPlugin,flxdec,flx codec,,,))
  166. #$(eval $(call GstBuildPlugin,gdkpixbuf,gdkpixbuf support,video,,))
  167. $(eval $(call GstBuildPlugin,goom2k1,goom support,audio video pbutils,,))
  168. $(eval $(call GstBuildPlugin,goom,goom support,audio video pbutils,,))
  169. $(eval $(call GstBuildPlugin,icydemux,icy demuxer,audio tag,,))
  170. $(eval $(call GstBuildPlugin,id3demux,ID3v1/v2 demuxer,pbutils tag,,))
  171. $(eval $(call GstBuildPlugin,imagefreeze,imagefreeze support,,,))
  172. $(eval $(call GstBuildPlugin,interleave,audio interleave,audio,,))
  173. $(eval $(call GstBuildPlugin,isomp4,isomp4 support,audio pbutils riff rtp tag video,,))
  174. #$(eval $(call GstBuildPlugin,jack,jack support,audio,,))
  175. $(eval $(call GstBuildPlugin,jpeg,jpeg support,video,,+libjpeg))
  176. $(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),audio,,+lame-lib))
  177. $(eval $(call GstBuildPlugin,level,audio level,audio,,))
  178. $(eval $(call GstBuildPlugin,matroska,matroska support,audio pbutils riff tag video,,))
  179. $(eval $(call GstBuildPlugin,mpg123,MP3 decoder (using mpg123),audio tag,,+libid3tag +mpg123))
  180. $(eval $(call GstBuildPlugin,mulaw,mulaw support,audio,,))
  181. $(eval $(call GstBuildPlugin,multifile,multiple files access,video,,))
  182. $(eval $(call GstBuildPlugin,multipart,multipart stream handling,,,))
  183. $(eval $(call GstBuildPlugin,navigationtest,navigationtest support,video,,))
  184. $(eval $(call GstBuildPlugin,oss4,OSS 4 audio support,audio tag,,))
  185. $(eval $(call GstBuildPlugin,ossaudio,OSS audio support,audio,,))
  186. $(eval $(call GstBuildPlugin,png,png support,video,,+libpng))
  187. #$(eval $(call GstBuildPlugin,pulse,pulse support,audio pbutils tag video,,))
  188. $(eval $(call GstBuildPlugin,replaygain,volume normalization,pbutils,,))
  189. $(eval $(call GstBuildPlugin,rtpmanager,RTP manager,audio net rtp tag pbutils video,,))
  190. $(eval $(call GstBuildPlugin,rtp,RTP,audio rtp tag pbutils video,,))
  191. $(eval $(call GstBuildPlugin,rtsp,RTSP,net rtp rtsp sdp,,))
  192. $(eval $(call GstBuildPlugin,shapewipe,shapewipe support,video,,))
  193. #$(eval $(call GstBuildPlugin,shout2,shout2 support,,,))
  194. $(eval $(call GstBuildPlugin,smpte,smpte support,video,,))
  195. $(eval $(call GstBuildPlugin,soup,soup input,audio tag,,+libsoup))
  196. $(eval $(call GstBuildPlugin,spectrum,spectrum data output,audio fft,,))
  197. #$(eval $(call GstBuildPlugin,speex,speex support,audio tag,,))
  198. #$(eval $(call GstBuildPlugin,sty4menc,sty4menc support,video,,))
  199. #$(eval $(call GstBuildPlugin,taglib,taglib support,tag,,))
  200. $(eval $(call GstBuildPlugin,udp,UDP,net,,))
  201. $(eval $(call GstBuildPlugin,video4linux2,video4linux2 support,video allocators,,+libv4l))
  202. $(eval $(call GstBuildPlugin,videobox,videobox support,video,,))
  203. $(eval $(call GstBuildPlugin,videocrop,videocrop support,video,,))
  204. $(eval $(call GstBuildPlugin,videofilter,videofilter support,video,,))
  205. $(eval $(call GstBuildPlugin,videomixer,videomixer support,video,,))
  206. $(eval $(call GstBuildPlugin,vpx,vpx support,tag video,,+libvpx))
  207. $(eval $(call GstBuildPlugin,wavenc,Wav encoder,riff,,))
  208. #$(eval $(call GstBuildPlugin,wavpack,Wav packer,audio riff tag,,))
  209. $(eval $(call GstBuildPlugin,wavparse,Wav parser,audio riff tag,,))
  210. #$(eval $(call GstBuildPlugin,ximagesrc,ximagesrc support,video,,))
  211. $(eval $(call BuildPackage,gstreamer1-plugins-good))
  212. $(eval $(call BuildPackage,gst1-plugins-good))