From 0f543883cd0505a98fdc680ce2f08cbfca6d52a7 Mon Sep 17 00:00:00 2001 From: Ted Hess Date: Thu, 28 Jun 2018 19:28:02 -0400 Subject: [PATCH] toolchain: Replace YASM with NASM 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 Acked-by: Rosen Penev --- toolchain/Config.in | 6 +++--- toolchain/Makefile | 2 +- toolchain/{yasm => nasm}/Makefile | 25 +++++++++---------------- 3 files changed, 13 insertions(+), 20 deletions(-) rename toolchain/{yasm => nasm}/Makefile (65%) diff --git a/toolchain/Config.in b/toolchain/Config.in index 96acf1e5c4..47e1c787df 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -224,13 +224,13 @@ comment "Compiler" 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 diff --git a/toolchain/Makefile b/toolchain/Makefile index 409955c23a..9432990f4f 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -29,7 +29,7 @@ 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 diff --git a/toolchain/yasm/Makefile b/toolchain/nasm/Makefile similarity index 65% rename from toolchain/yasm/Makefile rename to toolchain/nasm/Makefile index e5cdac6fe9..a39c71f65f 100644 --- a/toolchain/yasm/Makefile +++ b/toolchain/nasm/Makefile @@ -1,34 +1,26 @@ # -# Copyright (C) 2016 Daniel Golle -# # 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_NAME:=nasm +PKG_VERSION:=2.13.03 -PKG_SOURCE_URL:=http://www.tortall.net/projects/yasm/releases/ -PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=https://www.nasm.us/pub/nasm/releasebuilds/$(PKG_VERSION)/ +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz -PKG_HASH:=3dce6601b495f5b3d45b59f7d2492a340ee7e84b5beca17e48f862502bd5603f +PKG_HASH:=812ecfb0dcbc5bd409aaa8f61c7de94c5b8752a7b00c632883d15b2ed6452573 HOST_BUILD_PARALLEL:=1 include $(INCLUDE_DIR)/toolchain-build.mk -YASM_CONFIGURE:= \ - ./configure \ - --prefix=$(TOOLCHAIN_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ +HOST_CONFIGURE_ARGS+= \ --target=$(REAL_GNU_TARGET_NAME) \ --with-sysroot=$(TOOLCHAIN_DIR) \ - --disable-multilib \ + --enable-lto \ --disable-werror \ - --disable-nls \ - --disable-sim \ --disable-gdb \ $(SOFT_FLOAT_CONFIG_OPTION) \ @@ -40,8 +32,9 @@ endef define Host/Configure (cd $(HOST_BUILD_DIR); \ - $(YASM_CONFIGURE) \ + ./autogen.sh \ ); + $(call Host/Configure/Default) endef define Host/Compile