From b3bd9b55e0e1e7dd8037554a6d5d0f0f261cc60d Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Fri, 27 Aug 2010 18:17:29 +0200 Subject: [PATCH] Improve target architecture detection in src/Makefile. --- src/Makefile | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/Makefile b/src/Makefile index 24d32656..ed1be4ba 100644 --- a/src/Makefile +++ b/src/Makefile @@ -42,6 +42,7 @@ CCOPT= -O2 -fomit-frame-pointer # binaries to a different machine you could also use: -march=native CCOPT_X86= -march=i686 CCOPT_X64= +CCOPT_PPCSPE= # CCDEBUG= # Uncomment the next line to generate debug information: @@ -179,12 +180,22 @@ ifneq (,$(findstring stack-protector,$(shell $(TARGET_CC) -dumpspecs))) TARGET_XCFLAGS+= -fno-stack-protector endif -ifeq (,$(findstring __i386__,$(shell echo __i386__ | $(TARGET_CC) -P -E -))) +TARGET_TESTARCH=$(shell $(TARGET_CC) $(TARGET_ACFLAGS) -E lj_arch.h -dM) +ifneq (,$(findstring LJ_TARGET_X64 ,$(TARGET_TESTARCH))) + TARGET_CCARCH= x64 + TARGET_XCFLAGS+= $(CCOPT_X64) +else +ifneq (,$(findstring LJ_TARGET_X86 ,$(TARGET_TESTARCH))) TARGET_CCARCH= x86 TARGET_XCFLAGS+= $(CCOPT_X86) else - TARGET_CCARCH= x64 - TARGET_XCFLAGS+= $(CCOPT_X64) +ifneq (,$(findstring LJ_TARGET_PPCSPE ,$(TARGET_TESTARCH))) + TARGET_CCARCH= ppcspe + TARGET_XCFLAGS+= $(CCOPT_PPCSPE) +else + $(error Unsupported target architecture) +endif +endif endif ifneq (,$(PREFIX))