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.

176 lines
4.3 KiB

  1. #
  2. # Copyright (C) 2009-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-ugly
  9. PKG_VERSION:=1.2.3
  10. PKG_RELEASE:=2
  11. PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org>
  12. PKG_LICENSE:=LGPLv2
  13. PKG_LICENSE_FILES:=COPYING
  14. PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-ugly-$(PKG_VERSION)
  15. PKG_SOURCE:=gst-plugins-ugly-$(PKG_VERSION).tar.xz
  16. PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-ugly/
  17. PKG_MD5SUM:=7ae60e2f759f58f32af5fcdc3c9193c4
  18. PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base liboil
  19. PKG_CONFIG_DEPENDS:= \
  20. CONFIG_PACKAGE_gst1-mod-asf \
  21. CONFIG_PACKAGE_gst1-mod-lame \
  22. CONFIG_PACKAGE_gst1-mod-mad \
  23. CONFIG_PACKAGE_gst1-mod-mpeg2dec \
  24. PKG_FIXUP:=autoreconf
  25. PKG_INSTALL:=1
  26. include $(INCLUDE_DIR)/package.mk
  27. include $(INCLUDE_DIR)/nls.mk
  28. GST_UGLY_MODULES:=
  29. define Package/gstreamer1-ugly/Default
  30. CATEGORY:=Multimedia
  31. SECTION:=multimedia
  32. TITLE:=GStreamer
  33. URL:=http://gstreamer.freedesktop.org/
  34. DEPENDS:= +libgstreamer1 $(ICONV_DEPENDS)
  35. endef
  36. define Package/gstreamer1-ugly/description/Default
  37. GStreamer open source multimedia framework
  38. endef
  39. define Package/gst1-plugins-ugly
  40. $(call Package/gstreamer1-ugly/Default)
  41. TITLE+= plugins collection (ugly)
  42. DEPENDS+= $(GST_DEPENDS)
  43. HIDDEN:=1
  44. endef
  45. define Package/gts-plugins-ugly/description
  46. $(call Package/gstreamer1-ugly/description/Default)
  47. .
  48. This meta package contains only dependencies to the other plugins from
  49. the ugly plugins collection.
  50. endef
  51. define Package/gstreamer1-plugins-ugly
  52. $(call Package/gstreamer1-ugly/Default)
  53. TITLE+= plugins collection (ugly)
  54. DEPENDS:=+ALL:gst1-plugins-ugly +gstreamer1-plugins-base
  55. endef
  56. define Package/gstreamer1-plugins-ugly/config
  57. menu "Select GStreamer ugly modules"
  58. depends on PACKAGE_gstreamer1-plugins-ugly
  59. config gst1-plugins-ugly-all
  60. bool "Include all GStreamer ugly plugins"
  61. select PACKAGE_gst1-plugins-ugly
  62. comment "Modules"
  63. $(foreach mod,$(GST_UGLY_MODULES), \
  64. config PACKAGE_gst1-mod-$(mod)
  65. prompt "GStreamer $(mod) module"
  66. )
  67. endmenu
  68. endef
  69. GST_COND_SELECT = $(patsubst %,$(if $(CONFIG_PACKAGE_gst1-mod-$(1)),--enable,--disable)-%,$(1))
  70. GST_VERSION:=1.0
  71. CONFIGURE_ARGS += \
  72. --disable-debug \
  73. --disable-examples \
  74. \
  75. --disable-a52dec \
  76. --disable-amrnb \
  77. --disable-amrwb \
  78. $(call GST_COND_SELECT,asf) \
  79. --disable-cdio \
  80. --disable-dvdlpcmdec \
  81. --disable-dvdread \
  82. --disable-dvdsub \
  83. --disable-iec958 \
  84. $(call GST_COND_SELECT,lame) \
  85. $(call GST_COND_SELECT,mad) \
  86. $(call GST_COND_SELECT,mpeg2dec) \
  87. --disable-mpegaudioparse \
  88. --disable-mpegstream \
  89. --disable-realmedia \
  90. --disable-sidplay \
  91. --disable-synaesthesia \
  92. --disable-twolame \
  93. --disable-x264 \
  94. \
  95. --without-libiconv-prefix \
  96. --without-libintl-prefix \
  97. EXTRA_LDFLAGS+= \
  98. -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
  99. $(if $(ICONV_FULL),-liconv) \
  100. define Package/gst1-plugins-ugly/install
  101. /bin/true
  102. endef
  103. # 1: short name
  104. # 2: description
  105. # 3: dependencies on other gstreamer libraries (short name)
  106. # 4: dependencies on other gstreamer plugins (short name)
  107. # 5: dependencies on other packages
  108. define GstBuildPlugin
  109. GST_DEPENDS += +gst1-mod-$(1)
  110. GST_UGLY_MODULES+= $(1)
  111. define Package/gst1-mod-$(1)
  112. $(call Package/gstreamer1-ugly/Default)
  113. TITLE+= $(2) plugin (ugly)
  114. DEPENDS+= +libgstreamer1 $$(foreach p,$(3),+libgst1$$(p)) $$(foreach p,$(4),+gst1-mod-$$(p)) $(5)
  115. HIDDEN:=1
  116. endef
  117. define Package/gst1-mod-$(1)/description
  118. $(call Package/gstreamer1-ugly/description/Default)
  119. .
  120. This package contains the GStreamer $(2) plugin.
  121. endef
  122. define Package/gst1-mod-$(1)/install
  123. $(INSTALL_DIR) $$(1)/usr/lib/gstreamer-$(GST_VERSION)
  124. ( cd $(PKG_INSTALL_DIR); $(CP) \
  125. ./usr/lib/gstreamer-$(GST_VERSION)/libgst$(1).so* \
  126. $$(1)/usr/lib/gstreamer-$(GST_VERSION)/ \
  127. )
  128. endef
  129. $$(eval $$(call BuildPackage,gst1-mod-$(1)))
  130. endef
  131. $(eval $(call GstBuildPlugin,asf,ASF demuxer,audio riff rtp rtsp sdp tag,,))
  132. $(eval $(call GstBuildPlugin,lame,MP3 encoder (using LAME),audio,,+lame-lib))
  133. $(eval $(call GstBuildPlugin,mad,MP3 decoder (using MAD),audio tag,,+libid3tag +libmad))
  134. $(eval $(call GstBuildPlugin,mpeg2dec,MPEG decoder,video,,+libmpeg2))
  135. $(eval $(call BuildPackage,gstreamer1-plugins-ugly))
  136. $(eval $(call BuildPackage,gst1-plugins-ugly))