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.

248 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:=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:=b805962a2d777ff6145f6ca2ca8458499c9e23236cbcc41787c69ac51b02c818
  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. TARGET_CFLAGS += -Wno-incompatible-pointer-types
  107. EXTRA_LDFLAGS+= \
  108. -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
  109. $(if $(ICONV_FULL),-liconv) \
  110. define Package/gst1-plugins-good/install
  111. /bin/true
  112. endef
  113. # 1: short name
  114. # 2: description
  115. # 3: dependencies on other gstreamer libraries (short name)
  116. # 4: dependencies on other gstreamer plugins (short name)
  117. # 5: dependencies on other packages
  118. define GstBuildPlugin
  119. GST_DEPENDS += +gst1-mod-$(1)
  120. GST_GOOD_MODULES+= $(1)
  121. define Package/gst1-mod-$(1)
  122. $(call Package/gstreamer1-good/Default)
  123. TITLE+= $(2) plugin (good)
  124. DEPENDS+= $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  125. HIDDEN:=1
  126. endef
  127. define Package/gst1-mod-$(1)/description
  128. $(call Package/gstreamer1-good/description/Default)
  129. .
  130. This package contains the GStreamer $(2) plugin.
  131. endef
  132. define Package/gst1-mod-$(1)/install
  133. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  134. ( cd $(PKG_INSTALL_DIR); $(CP) \
  135. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  136. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  137. )
  138. endef
  139. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  140. endef
  141. #$(eval $(call GstBuildPlugin,1394,IEEE 1394 support,,,))
  142. $(eval $(call GstBuildPlugin,alaw,alaw codec,audio,,))
  143. $(eval $(call GstBuildPlugin,alpha,alpha support,video,,))
  144. $(eval $(call GstBuildPlugin,alphacolor,alphacolor support,video,,))
  145. $(eval $(call GstBuildPlugin,apetag,apetag support,audio pbutils tag video,,))
  146. $(eval $(call GstBuildPlugin,audiofx,audio effects,audio fft controller,,))
  147. $(eval $(call GstBuildPlugin,audioparsers,audioparsers,audio tag pbutils,,))
  148. $(eval $(call GstBuildPlugin,auparse,auparse,audio tag pbutils,,))
  149. $(eval $(call GstBuildPlugin,autodetect,format auto-detection,,,))
  150. $(eval $(call GstBuildPlugin,avi,avi support,audio riff tag video,,))
  151. $(eval $(call GstBuildPlugin,cutter,audio cutter,audio,,))
  152. $(eval $(call GstBuildPlugin,debug,debugging,,,))
  153. $(eval $(call GstBuildPlugin,deinterlace,deinterlace support,video,,))
  154. $(eval $(call GstBuildPlugin,dtmf,dtmf support,rtp,,))
  155. #$(eval $(call GstBuildPlugin,dv,dv support,audio tag video,,))
  156. $(eval $(call GstBuildPlugin,effectv,effectvsupport,video,,))
  157. $(eval $(call GstBuildPlugin,equalizer,audio equalizer,audio controller,,))
  158. $(eval $(call GstBuildPlugin,flac,FLAC codec,audio pbutils tag,,+libflac))
  159. $(eval $(call GstBuildPlugin,flv,flv codec,audio pbutils tag video,,))
  160. $(eval $(call GstBuildPlugin,flxdec,flx codec,,,))
  161. #$(eval $(call GstBuildPlugin,gdkpixbuf,gdkpixbuf support,video,,))
  162. $(eval $(call GstBuildPlugin,goom2k1,goom support,audio video pbutils,,))
  163. $(eval $(call GstBuildPlugin,goom,goom support,audio video pbutils,,))
  164. $(eval $(call GstBuildPlugin,icydemux,icy demuxer,audio tag,,))
  165. $(eval $(call GstBuildPlugin,id3demux,ID3v1/v2 demuxer,pbutils tag,,))
  166. $(eval $(call GstBuildPlugin,imagefreeze,imagefreeze support,,,))
  167. $(eval $(call GstBuildPlugin,interleave,audio interleave,audio,,))
  168. $(eval $(call GstBuildPlugin,isomp4,isomp4 support,audio pbutils riff rtp tag video,,))
  169. #$(eval $(call GstBuildPlugin,jack,jack support,audio,,))
  170. $(eval $(call GstBuildPlugin,jpeg,jpeg support,video,,+libjpeg))
  171. $(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),audio,,+lame-lib))
  172. $(eval $(call GstBuildPlugin,level,audio level,audio,,))
  173. $(eval $(call GstBuildPlugin,matroska,matroska support,audio pbutils riff tag video,,))
  174. $(eval $(call GstBuildPlugin,mpg123,MP3 decoder (using mpg123),audio tag,,+libid3tag +mpg123))
  175. $(eval $(call GstBuildPlugin,mulaw,mulaw support,audio,,))
  176. $(eval $(call GstBuildPlugin,multifile,multiple files access,video,,))
  177. $(eval $(call GstBuildPlugin,multipart,multipart stream handling,,,))
  178. $(eval $(call GstBuildPlugin,navigationtest,navigationtest support,video,,))
  179. $(eval $(call GstBuildPlugin,oss4,OSS 4 audio support,audio tag,,))
  180. $(eval $(call GstBuildPlugin,ossaudio,OSS audio support,audio,,))
  181. $(eval $(call GstBuildPlugin,png,png support,video,,+libpng))
  182. #$(eval $(call GstBuildPlugin,pulse,pulse support,audio pbutils tag video,,))
  183. $(eval $(call GstBuildPlugin,replaygain,volume normalization,pbutils,,))
  184. $(eval $(call GstBuildPlugin,rtpmanager,RTP manager,audio net rtp tag pbutils video,,))
  185. $(eval $(call GstBuildPlugin,rtp,RTP,audio rtp tag pbutils video,,))
  186. $(eval $(call GstBuildPlugin,rtsp,RTSP,net rtp rtsp sdp,,))
  187. $(eval $(call GstBuildPlugin,shapewipe,shapewipe support,video,,))
  188. #$(eval $(call GstBuildPlugin,shout2,shout2 support,,,))
  189. $(eval $(call GstBuildPlugin,smpte,smpte support,video,,))
  190. $(eval $(call GstBuildPlugin,soup,soup input,audio tag,,+libsoup))
  191. $(eval $(call GstBuildPlugin,spectrum,spectrum data output,audio fft,,))
  192. #$(eval $(call GstBuildPlugin,speex,speex support,audio tag,,))
  193. #$(eval $(call GstBuildPlugin,sty4menc,sty4menc support,video,,))
  194. #$(eval $(call GstBuildPlugin,taglib,taglib support,tag,,))
  195. $(eval $(call GstBuildPlugin,udp,UDP,net,,))
  196. $(eval $(call GstBuildPlugin,video4linux2,video4linux2 support,video allocators,,+libv4l))
  197. $(eval $(call GstBuildPlugin,videobox,videobox support,video,,))
  198. $(eval $(call GstBuildPlugin,videocrop,videocrop support,video,,))
  199. $(eval $(call GstBuildPlugin,videofilter,videofilter support,video,,))
  200. $(eval $(call GstBuildPlugin,videomixer,videomixer support,video,,))
  201. $(eval $(call GstBuildPlugin,vpx,vpx support,tag video,,+libvpx))
  202. $(eval $(call GstBuildPlugin,wavenc,Wav encoder,riff,,))
  203. #$(eval $(call GstBuildPlugin,wavpack,Wav packer,audio riff tag,,))
  204. $(eval $(call GstBuildPlugin,wavparse,Wav parser,audio riff tag,,))
  205. #$(eval $(call GstBuildPlugin,ximagesrc,ximagesrc support,video,,))
  206. $(eval $(call BuildPackage,gstreamer1-plugins-good))
  207. $(eval $(call BuildPackage,gst1-plugins-good))