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.

81 lines
2.2 KiB

  1. #
  2. # Copyright (C) 2008-2015 OpenWrt.org
  3. # Copyright (C) 2016 Luiz Angelo Daros de Luca
  4. #
  5. # This is free software, licensed under the GNU General Public License v2.
  6. # See /LICENSE for more information.
  7. #
  8. include $(TOPDIR)/rules.mk
  9. PKG_NAME:=libvpx
  10. PKG_VERSION:=1.8.2
  11. PKG_RELEASE:=1
  12. PKG_SOURCE_PROTO:=git
  13. PKG_SOURCE_URL:=https://chromium.googlesource.com/webm/libvpx
  14. PKG_MIRROR_HASH:=51e871a928fe98f14fd08285cb9b64c0d540b36b630ee7d47bc464e909366db7
  15. PKG_SOURCE_VERSION:=v$(PKG_VERSION)
  16. PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
  17. PKG_MAINTAINER:=Luiz Angelo Daros de Luca <luizluca@gmail.com>
  18. PKG_LICENSE:=BSD-3-Clause
  19. PKG_LICENSE_FILES:=LICENSE
  20. PKG_CPE_ID:=cpe:/a:john_koleszar:libvpx
  21. PKG_BUILD_PARALLEL:=1
  22. PKG_ABI_VERSION:=$(subst $(space),.,$(wordlist 1, 2, $(subst .,$(space),$(PKG_VERSION))))
  23. PKG_INSTALL:=1
  24. include $(INCLUDE_DIR)/package.mk
  25. define Package/libvpx
  26. SECTION:=libs
  27. CATEGORY:=Libraries
  28. TITLE:=libvpx
  29. URL:=https://www.webmproject.org/
  30. DEPENDS:=+libpthread
  31. ABI_VERSION:=$(PKG_ABI_VERSION)
  32. endef
  33. define Package/libvpx/description
  34. libvpx is a VP8/VP9 Codec SDK.
  35. endef
  36. CONFIGURE_ARGS = \
  37. --target=generic-gnu \
  38. --prefix=$(CONFIGURE_PREFIX) \
  39. --libdir=/usr/lib \
  40. --enable-static \
  41. --enable-shared \
  42. --disable-examples \
  43. --disable-docs \
  44. --disable-unit-tests \
  45. # Add --enable-small as openwrt gcc flags are overwritten
  46. ifneq ($(findstring -Os,$(TARGET_CFLAGS)),)
  47. CONFIGURE_ARGS += --enable-small
  48. endif
  49. # libvpx expects gcc as linker but uses $LD if provided
  50. # However, OpenWRT defines LD as *-uclibc-ld and not *-gcc
  51. CONFIGURE_VARS := $(filter-out LD=%,$(CONFIGURE_VARS)) LD="$(TARGET_CC)" \
  52. CROSS=$(GNU_TARGET_NAME)
  53. MAKE_FLAGS := $(filter-out LD=%,$(MAKE_FLAGS)) LD="$(TARGET_CC)"
  54. define Build/InstallDev
  55. $(INSTALL_DIR) $(1)/usr/include/vpx/
  56. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/vpx/* $(1)/usr/include/vpx/
  57. $(INSTALL_DIR) $(1)/usr/lib/
  58. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.{so*,a} $(1)/usr/lib/
  59. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig/
  60. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
  61. endef
  62. define Package/libvpx/install
  63. $(INSTALL_DIR) $(1)/usr/lib/
  64. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so.* $(1)/usr/lib/
  65. endef
  66. $(eval $(call BuildPackage,libvpx))