aboutsummaryrefslogtreecommitdiffstats
path: root/toolchain/nasm
diff options
context:
space:
mode:
authorTed Hess <thess@kitschensync.net>2018-06-28 19:28:02 -0400
committerTed Hess <thess@kitschensync.net>2018-07-05 10:17:06 -0400
commit0f543883cd0505a98fdc680ce2f08cbfca6d52a7 (patch)
treef4a6998faf88e47bee44aba46c1d72eb6c81d4ea /toolchain/nasm
parent9009efa18b45b4b573111fafa777f7b642486e3e (diff)
downloadupstream-0f543883cd0505a98fdc680ce2f08cbfca6d52a7.tar.gz
upstream-0f543883cd0505a98fdc680ce2f08cbfca6d52a7.tar.bz2
upstream-0f543883cd0505a98fdc680ce2f08cbfca6d52a7.zip
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 <thess@kitschensync.net> Acked-by: Rosen Penev <rosenp@gmail.com>
Diffstat (limited to 'toolchain/nasm')
-rw-r--r--toolchain/nasm/Makefile56
1 files changed, 56 insertions, 0 deletions
diff --git a/toolchain/nasm/Makefile b/toolchain/nasm/Makefile
new file mode 100644
index 0000000000..a39c71f65f
--- /dev/null
+++ b/toolchain/nasm/Makefile
@@ -0,0 +1,56 @@
+#
+# 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))