Packages libx264 and ffmpeg are built with ASM options on x86 platforms.
The current libx264 version no longer builds with YASM and requires NASM.
ffmpeg 3.x can be built with either YASM or NASM however, furture 4.x versions
will require NASM.
Signed-off-by: Ted Hess <thess@kitschensync.net>
Acked-by: Rosen Penev <rosenp@gmail.com>
source "toolchain/gcc/Config.in"
-config YASM
+config NASM
bool
depends on ( i386 || x86_64 )
- prompt "Build yasm" if TOOLCHAINOPTS
+ prompt "Build nasm" if TOOLCHAINOPTS
default y
help
- Enable if you want to build yasm
+ Enable if you want to build nasm
comment "C Library"
depends on TOOLCHAINOPTS
curdir:=toolchain
# subdirectories to descend into
-$(curdir)/builddirs := $(if $(CONFIG_GDB),gdb) $(if $(CONFIG_EXTERNAL_TOOLCHAIN),wrapper,kernel-headers binutils gcc/initial gcc/final $(LIBC) fortify-headers) $(if $(CONFIG_YASM),yasm)
+$(curdir)/builddirs := $(if $(CONFIG_GDB),gdb) $(if $(CONFIG_EXTERNAL_TOOLCHAIN),wrapper,kernel-headers binutils gcc/initial gcc/final $(LIBC) fortify-headers) $(if $(CONFIG_NASM),nasm)
ifdef CONFIG_USE_UCLIBC
$(curdir)/builddirs += $(LIBC)/utils
endif
--- /dev/null
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=nasm
+PKG_VERSION:=2.13.03
+
+PKG_SOURCE_URL:=https://www.nasm.us/pub/nasm/releasebuilds/$(PKG_VERSION)/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+
+PKG_HASH:=812ecfb0dcbc5bd409aaa8f61c7de94c5b8752a7b00c632883d15b2ed6452573
+
+HOST_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/toolchain-build.mk
+
+HOST_CONFIGURE_ARGS+= \
+ --target=$(REAL_GNU_TARGET_NAME) \
+ --with-sysroot=$(TOOLCHAIN_DIR) \
+ --enable-lto \
+ --disable-werror \
+ --disable-gdb \
+ $(SOFT_FLOAT_CONFIG_OPTION) \
+
+define Host/Prepare
+ $(call Host/Prepare/Default)
+ ln -snf $(notdir $(HOST_BUILD_DIR)) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
+ $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(HOST_BUILD_DIR)/
+endef
+
+define Host/Configure
+ (cd $(HOST_BUILD_DIR); \
+ ./autogen.sh \
+ );
+ $(call Host/Configure/Default)
+endef
+
+define Host/Compile
+ +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) all
+endef
+
+define Host/Install
+ $(MAKE) -C $(HOST_BUILD_DIR) \
+ prefix=$(TOOLCHAIN_DIR) \
+ install
+endef
+
+define Host/Clean
+ rm -rf \
+ $(HOST_BUILD_DIR) \
+ $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
+endef
+
+$(eval $(call HostBuild))
+++ /dev/null
-#
-# Copyright (C) 2016 Daniel Golle <daniel@makrotopia.org>
-#
-# This is free software, licensed under the GNU General Public License v2.
-# See /LICENSE for more information.
-#
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=yasm
-PKG_VERSION:=1.3.0
-
-PKG_SOURCE_URL:=http://www.tortall.net/projects/yasm/releases/
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-
-PKG_HASH:=3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f
-
-HOST_BUILD_PARALLEL:=1
-
-include $(INCLUDE_DIR)/toolchain-build.mk
-
-YASM_CONFIGURE:= \
- ./configure \
- --prefix=$(TOOLCHAIN_DIR) \
- --build=$(GNU_HOST_NAME) \
- --host=$(GNU_HOST_NAME) \
- --target=$(REAL_GNU_TARGET_NAME) \
- --with-sysroot=$(TOOLCHAIN_DIR) \
- --disable-multilib \
- --disable-werror \
- --disable-nls \
- --disable-sim \
- --disable-gdb \
- $(SOFT_FLOAT_CONFIG_OPTION) \
-
-define Host/Prepare
- $(call Host/Prepare/Default)
- ln -snf $(notdir $(HOST_BUILD_DIR)) $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
- $(CP) $(SCRIPT_DIR)/config.{guess,sub} $(HOST_BUILD_DIR)/
-endef
-
-define Host/Configure
- (cd $(HOST_BUILD_DIR); \
- $(YASM_CONFIGURE) \
- );
-endef
-
-define Host/Compile
- +$(MAKE) $(HOST_JOBS) -C $(HOST_BUILD_DIR) all
-endef
-
-define Host/Install
- $(MAKE) -C $(HOST_BUILD_DIR) \
- prefix=$(TOOLCHAIN_DIR) \
- install
-endef
-
-define Host/Clean
- rm -rf \
- $(HOST_BUILD_DIR) \
- $(BUILD_DIR_TOOLCHAIN)/$(PKG_NAME)
-endef
-
-$(eval $(call HostBuild))