Makefile 4.4 KB

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