Fix recognition for more platforms, and fixed compile on arm (nw)

This commit is contained in:
Miodrag Milanovic 2015-12-27 16:37:16 +01:00
parent 658128897c
commit 2e9fa84503
2 changed files with 13 additions and 3 deletions

View File

@ -119,18 +119,24 @@ PLATFORM := x86
else else
UNAME := $(shell uname -mps) UNAME := $(shell uname -mps)
UNAME_M := $(shell uname -m) UNAME_M := $(shell uname -m)
UNAME_P := $(shell uname -p)
GENIEOS := linux GENIEOS := linux
PLATFORM := unknown PLATFORM := unknown
ifneq ($(filter x86_64,$(UNAME_M)),) ifneq ($(filter x86_64,$(UNAME_P)),)
PLATFORM := x86 PLATFORM := x86
endif endif
ifneq ($(filter %86,$(UNAME_M)),) ifneq ($(filter %86,$(UNAME_P)),)
PLATFORM := x86 PLATFORM := x86
endif endif
ifneq ($(filter arm%,$(UNAME_M)),) ifneq ($(filter arm%,$(UNAME_M)),)
PLATFORM := arm PLATFORM := arm
endif endif
ifneq ($(filter arm%,$(UNAME_P)),)
PLATFORM := arm
endif
ifneq ($(filter powerpc,$(UNAME_P)),)
PLATFORM := powerpc
endif
ifeq ($(firstword $(filter Linux,$(UNAME))),Linux) ifeq ($(firstword $(filter Linux,$(UNAME))),Linux)
OS := linux OS := linux
endif endif

View File

@ -21,8 +21,10 @@
/* These input port macros expand to a great deal of code and break compilers */ /* These input port macros expand to a great deal of code and break compilers */
#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 4 || (__GNUC_MINOR__ == 4 && __GNUC_PATCHLEVEL__ >= 4)))) #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 4 || (__GNUC_MINOR__ == 4 && __GNUC_PATCHLEVEL__ >= 4))))
#if not(defined(__arm__) || defined(__ARMEL__))
#pragma GCC push_options #pragma GCC push_options
#pragma GCC optimize ("O1") #pragma GCC optimize ("O1")
#endif
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
#pragma optimize("", off) #pragma optimize("", off)
#endif #endif
@ -830,7 +832,9 @@ void construct_core_types(simple_list<input_type_entry> &typelist)
construct_core_types_invalid(typelist); construct_core_types_invalid(typelist);
} }
#if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 4 || (__GNUC_MINOR__ == 4 && __GNUC_PATCHLEVEL__ >= 4)))) #if defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && (__GNUC_MINOR__ > 4 || (__GNUC_MINOR__ == 4 && __GNUC_PATCHLEVEL__ >= 4))))
#if not(defined(__arm__) || defined(__ARMEL__))
#pragma GCC pop_options #pragma GCC pop_options
#endif
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
#pragma optimize("", on) #pragma optimize("", on)
#endif #endif