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.

163 lines
3.9 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-ugly
  9. PKG_VERSION:=1.18.0
  10. PKG_RELEASE:=1
  11. PKG_SOURCE:=gst-plugins-ugly-$(PKG_VERSION).tar.xz
  12. PKG_SOURCE_URL:=https://gstreamer.freedesktop.org/src/gst-plugins-ugly
  13. PKG_HASH:=686644e45e08258ae240c4519376668ad8d34ea6d0f6ab556473c317bfb7e082
  14. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-ugly-$(PKG_VERSION)
  15. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
  16. Ted Hess <thess@kitschensync.net>
  17. PKG_LICENSE:=LGPL-2.1-or-later
  18. PKG_LICENSE_FILES:=COPYING
  19. PKG_INSTALL:=1
  20. include $(INCLUDE_DIR)/package.mk
  21. include $(INCLUDE_DIR)/nls.mk
  22. include ../../devel/meson/meson.mk
  23. PKG_CONFIG_DEPENDS:= \
  24. CONFIG_PACKAGE_gst1-mod-asf \
  25. CONFIG_PACKAGE_gst1-mod-mpeg2dec \
  26. GST_UGLY_MODULES:=
  27. define Package/gstreamer1-ugly/Default
  28. CATEGORY:=Multimedia
  29. SECTION:=multimedia
  30. TITLE:=GStreamer
  31. URL:=https://gstreamer.freedesktop.org/
  32. DEPENDS:= +libgstreamer1 $(ICONV_DEPENDS)
  33. endef
  34. define Package/gstreamer1-ugly/description/Default
  35. GStreamer open source multimedia framework
  36. endef
  37. define Package/gst1-plugins-ugly
  38. $(call Package/gstreamer1-ugly/Default)
  39. TITLE+= plugins collection (ugly)
  40. DEPENDS+= $(GST_DEPENDS)
  41. HIDDEN:=1
  42. endef
  43. define Package/gts-plugins-ugly/description
  44. $(call Package/gstreamer1-ugly/description/Default)
  45. .
  46. This meta package contains only dependencies to the other plugins from
  47. the ugly plugins collection.
  48. endef
  49. define Package/gstreamer1-plugins-ugly
  50. $(call Package/gstreamer1-ugly/Default)
  51. TITLE+= plugins collection (ugly)
  52. DEPENDS:=+ALL:gst1-plugins-ugly +gstreamer1-plugins-base
  53. endef
  54. define Package/gstreamer1-plugins-ugly/config
  55. menu "Select GStreamer ugly modules"
  56. depends on PACKAGE_gstreamer1-plugins-ugly
  57. config gst1-plugins-ugly-all
  58. bool "Include all GStreamer ugly plugins"
  59. select PACKAGE_gst1-plugins-ugly
  60. comment "Modules"
  61. $(foreach mod,$(GST_UGLY_MODULES), \
  62. config PACKAGE_gst1-mod-$(mod)
  63. prompt "GStreamer $(mod) module"
  64. )
  65. endmenu
  66. endef
  67. GST_COND_SELECT = -D$(1)=$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),en,dis)abled
  68. GST_VERSION:=1.0
  69. MESON_ARGS += \
  70. -Dasfdemux=$(if $(CONFIG_PACKAGE_gst1-mod-asf),en,dis)abled \
  71. -Ddvdlpcmdec=disabled \
  72. -Ddvdsub=disabled \
  73. -Drealmedia=disabled \
  74. -Dxingmux=disabled \
  75. \
  76. -Da52dec=disabled \
  77. -Damrnb=disabled \
  78. -Damrwbdec=disabled \
  79. -Dcdio=disabled \
  80. -Ddvdread=disabled \
  81. $(call GST_COND_SELECT,mpeg2dec) \
  82. -Dsidplay=disabled \
  83. -Dx264=disabled \
  84. \
  85. -Dnls=enabled \
  86. -Dorc=disabled \
  87. -Dtests=disabled \
  88. -Dgobject-cast-checks=disabled \
  89. -Dglib-asserts=disabled \
  90. -Dglib-checks=disabled \
  91. -Ddoc=disabled
  92. define Package/gst1-plugins-ugly/install
  93. /bin/true
  94. endef
  95. # 1: short name
  96. # 2: description
  97. # 3: dependencies on other gstreamer libraries (short name)
  98. # 4: dependencies on other gstreamer plugins (short name)
  99. # 5: dependencies on other packages
  100. define GstBuildPlugin
  101. GST_DEPENDS += +gst1-mod-$(1)
  102. GST_UGLY_MODULES+= $(1)
  103. define Package/gst1-mod-$(1)
  104. $(call Package/gstreamer1-ugly/Default)
  105. TITLE+= $(2) plugin (ugly)
  106. DEPENDS+= +libgstreamer1 $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  107. HIDDEN:=1
  108. endef
  109. define Package/gst1-mod-$(1)/description
  110. $(call Package/gstreamer1-ugly/description/Default)
  111. .
  112. This package contains the GStreamer $(2) plugin.
  113. endef
  114. define Package/gst1-mod-$(1)/install
  115. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  116. ( cd $(PKG_INSTALL_DIR); $(CP) \
  117. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  118. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  119. )
  120. endef
  121. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  122. endef
  123. $(eval $(call GstBuildPlugin,asf,ASF demuxer,audio video riff rtp rtsp sdp tag,,))
  124. $(eval $(call GstBuildPlugin,mpeg2dec,MPEG decoder,video,,+libmpeg2))
  125. $(eval $(call BuildPackage,gstreamer1-plugins-ugly))
  126. $(eval $(call BuildPackage,gst1-plugins-ugly))