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.

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