diff --git a/makefile b/makefile index 783dc9ccf3a..71e6458edbc 100644 --- a/makefile +++ b/makefile @@ -115,9 +115,18 @@ MAKEPARAMS := -R ifeq ($(OS),Windows_NT) OS := windows GENIEOS := windows +PLATFORM := x86 else UNAME := $(shell uname -mps) GENIEOS := linux +PLATFORM := unknown +ifeq ($(firstword $(filter x86,$(UNAME))),x86) +PLATFORM := x86 +endif +ifeq ($(firstword $(filter arm,$(UNAME))),arm) +PLATFORM := arm +endif + ifeq ($(firstword $(filter Linux,$(UNAME))),Linux) OS := linux endif @@ -650,6 +659,10 @@ ifdef FORCE_VERSION_COMPILE PARAMS += --FORCE_VERSION_COMPILE='$(FORCE_VERSION_COMPILE)' endif +ifdef PLATFORM +PARAMS += --PLATFORM='$(PLATFORM)' +endif + #------------------------------------------------- # All scripts #------------------------------------------------- diff --git a/scripts/genie.lua b/scripts/genie.lua index c86301ef573..89dc6a56a0b 100644 --- a/scripts/genie.lua +++ b/scripts/genie.lua @@ -388,6 +388,11 @@ newoption { } } +newoption { + trigger = "PLATFORM", + description = "Target machine platform (x86,arm,...)", +} + if _OPTIONS["SHLIB"]=="1" then LIBTYPE = "SharedLib" else @@ -1012,9 +1017,12 @@ end } end end ---ifeq ($(findstring arm,$(UNAME)),arm) --- CCOMFLAGS += -Wno-cast-align ---endif + +if (_OPTIONS["PLATFORM"]=="arm") then + buildoptions { + "-Wno-cast-align", + } +end local subdir if (_OPTIONS["target"] == _OPTIONS["subtarget"]) then