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.

89 lines
2.4 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-20181006-2245
  10. PKG_RELEASE:=1
  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_HASH:=eae60e969958c0759554d5e338dea9b91f1f1fe85d9523c152c2259d8546f469
  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:=$(filter-out -O%,$(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. 464fp 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. CONFIGURE_ARGS += --enable-lto
  32. ifneq ($(CONFIG_TARGET_x86),)
  33. ifeq ($(CONFIG_NASM),y)
  34. CONFIGURE_VARS+= AS=nasm
  35. MAKE_FLAGS+= AS=nasm
  36. else
  37. CONFIGURE_VARS+= AS=
  38. MAKE_FLAGS+= AS=
  39. CONFIGURE_ARGS += --disable-asm
  40. endif
  41. endif
  42. endif
  43. CONFIGURE_ARGS += \
  44. --enable-shared \
  45. --enable-pic \
  46. --enable-strip \
  47. --disable-cli \
  48. --disable-avs \
  49. --disable-ffms \
  50. --disable-lsmash
  51. define Package/libx264
  52. SECTION:=libs
  53. CATEGORY:=Libraries
  54. TITLE:=H264/AVC free codec library.
  55. DEPENDS:=+libpthread @BUILD_PATENTED
  56. URL:=http://www.videolan.org/developers/x264.html
  57. endef
  58. define Package/libx264/description
  59. x264 is a free software library for encoding
  60. video streams into the H.264/MPEG-4 AVC compression format.
  61. endef
  62. define Build/InstallDev
  63. $(INSTALL_DIR) $(1)/usr/include/x264/
  64. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
  65. $(INSTALL_DIR) $(1)/usr/lib/
  66. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  67. $(INSTALL_DIR) $(1)/usr/lib/pkgconfig/
  68. $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/
  69. endef
  70. define Package/libx264/install
  71. $(INSTALL_DIR) $(1)/usr/lib/
  72. $(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so* $(1)/usr/lib/
  73. endef
  74. $(eval $(call BuildPackage,libx264))