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.

84 lines
2.2 KiB

  1. #
  2. # Copyright (C) 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:=x264
  9. PKG_VERSION:=snapshot-20160815-2245-stable
  10. PKG_RELEASE:=3
  11. PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
  12. PKG_SOURCE_URL:=https://download.videolan.org/x264/snapshots/
  13. PKG_MAINTAINER:=Adrian Panella <ianchi74@outlook.com>
  14. PKG_MD5SUM:=93fa596ea1b5513fec73e9de27589dd4
  15. PKG_LICENSE:=GPL-2.0
  16. PKG_LICENSE_FILES:=COPYING
  17. PKG_FIXUP:=autoreconf
  18. PKG_INSTALL:=1
  19. include $(INCLUDE_DIR)/package.mk
  20. TARGET_CFLAGS+=-std=gnu99 -fPIC -O3 -ffast-math -I.
  21. MAKE_FLAGS+= LD="$(TARGET_CC) -o"
  22. # ARM ASM depends on ARM1156 or later, blacklist earlier or incompatible cores
  23. # AMD Geode LX and i486 do not have SSE
  24. CPU_ASM_BLACKLIST:=geode i486 arm920t arm926ej-s arm1136j-s arm1176jzf-s fa526 mpcore xscale \
  25. mips32 24kc 34kc 74kc octeon mips64
  26. ifneq ($(CONFIG_SOFT_FLOAT)$(findstring $(call qstrip,$(CONFIG_CPU_TYPE)),$(CPU_ASM_BLACKLIST)),)
  27. CONFIGURE_VARS+= AS=
  28. MAKE_FLAGS+= AS=
  29. CONFIGURE_ARGS += --disable-asm
  30. else
  31. ifneq ($(CONFIG_TARGET_x86),)
  32. ifeq ($(CONFIG_YASM),y)
  33. CONFIGURE_VARS+= AS=yasm
  34. MAKE_FLAGS+= AS=yasm
  35. else
  36. CONFIGURE_VARS+= AS=
  37. MAKE_FLAGS+= AS=
  38. CONFIGURE_ARGS += --disable-asm
  39. endif
  40. endif
  41. endif
  42. CONFIGURE_ARGS += \
  43. --enable-shared \
  44. --enable-pic \
  45. --disable-cli
  46. define Package/libx264
  47. SECTION:=libs
  48. CATEGORY:=Libraries
  49. TITLE:=H264/AVC free codec library.
  50. DEPENDS:=+libpthread @BUILD_PATENTED
  51. URL:=http://www.videolan.org/developers/x264.html
  52. endef
  53. define Package/libx264/description
  54. x264 is a free software library for encoding
  55. video streams into the H.264/MPEG-4 AVC compression format.
  56. endef
  57. define Build/InstallDev
  58. $(INSTALL_DIR) $(1)/usr/include/x264/
  59. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
  60. $(INSTALL_DIR) $(1)/usr/lib/
  61. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  62. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig/
  63. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
  64. endef
  65. define Package/libx264/install
  66. $(INSTALL_DIR) $(1)/usr/lib/
  67. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  68. endef
  69. $(eval $(call BuildPackage,libx264))