From 64aece48ee183544e8e0bdc5349941f4898d8466 Mon Sep 17 00:00:00 2001 From: Jeffy Chen Date: Mon, 17 Sep 2018 15:32:19 +0800 Subject: [PATCH 1/3] Add support for arm/arm64 Signed-off-by: Jeffy Chen --- makefile | 20 ++++++++++++++++++++ scripts/toolchain.lua | 9 +++++++++ 2 files changed, 29 insertions(+) diff --git a/makefile b/makefile index 148bba309d..7ae6203109 100644 --- a/makefile +++ b/makefile @@ -1295,8 +1295,18 @@ endif # gmake-linux #------------------------------------------------- +ifeq ($(PLATFORM),arm) +$(PROJECTDIR)/$(MAKETYPE)-linux/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-arm --gcc_version=$(GCC_VERSION) $(MAKETYPE) +else +ifeq ($(PLATFORM),arm64) +$(PROJECTDIR)/$(MAKETYPE)-linux/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-arm64 --gcc_version=$(GCC_VERSION) $(MAKETYPE) +else $(PROJECTDIR)/$(MAKETYPE)-linux/Makefile: makefile $(SCRIPTS) $(GENIE) $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-gcc --gcc_version=$(GCC_VERSION) $(MAKETYPE) +endif +endif .PHONY: linux_x64 linux_x64: generate $(PROJECTDIR)/$(MAKETYPE)-linux/Makefile @@ -1317,8 +1327,18 @@ linux: generate $(PROJECTDIR)/$(MAKETYPE)-linux/Makefile # gmake-linux-clang #------------------------------------------------- +ifeq ($(PLATFORM),arm) +$(PROJECTDIR)/$(MAKETYPE)-linux-clang/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-arm --gcc_version=$(CLANG_VERSION) $(MAKETYPE) +else +ifeq ($(PLATFORM),arm64) +$(PROJECTDIR)/$(MAKETYPE)-linux-clang/Makefile: makefile $(SCRIPTS) $(GENIE) + $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-arm64 --gcc_version=$(CLANG_VERSION) $(MAKETYPE) +else $(PROJECTDIR)/$(MAKETYPE)-linux-clang/Makefile: makefile $(SCRIPTS) $(GENIE) $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=linux-clang --gcc_version=$(CLANG_VERSION) $(MAKETYPE) +endif +endif .PHONY: linux_x64_clang linux_x64_clang: generate $(PROJECTDIR)/$(MAKETYPE)-linux-clang/Makefile diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua index d24db0349e..7fdcc5f748 100644 --- a/scripts/toolchain.lua +++ b/scripts/toolchain.lua @@ -26,6 +26,8 @@ newoption { { "freebsd-clang", "FreeBSD (clang compiler)"}, { "linux-gcc", "Linux (GCC compiler)" }, { "linux-clang", "Linux (Clang compiler)" }, + { "linux-arm", "Linux - ARM" }, + { "linux-arm64", "Linux - ARM64" }, { "ios-arm", "iOS - ARM" }, { "ios-simulator", "iOS - Simulator" }, { "mingw32-gcc", "MinGW32" }, @@ -200,6 +202,13 @@ function toolchain(_buildDir, _subDir) location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-ios-simulator") end + if "linux-arm*" ~= _OPTIONS["gcc"] then + premake.gcc.cc = toolchainPrefix .. "gcc" + premake.gcc.cxx = toolchainPrefix .. "g++" + premake.gcc.ar = toolchainPrefix .. "ar" + location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-linux") + end + if "linux-gcc" == _OPTIONS["gcc"] then -- Force gcc-4.2 on ubuntu-intrepid if _OPTIONS["distro"]=="ubuntu-intrepid" then -- 2.11.0