From 1533bfc5fcc4ec5865c1de606504b6aba8a5f6fe Mon Sep 17 00:00:00 2001 From: Thiago Macieira Date: Tue, 27 Mar 2012 14:43:45 -0300 Subject: Improve the architecture-detection mechanism For the Unix part, this now obeys the -v option, printing the full command-line it used to compile, allowing testers to identify why something went wrong. Unfortunately, it requires a full compilation cycle, instead of just preprocessing. Just one more among the many on Unix, but maybe a noticeable slow-down on Windows. Change-Id: I654b70d99887e04c96731a5b91be9ad555e4d8fe Reviewed-by: Oswald Buddenhagen Reviewed-by: Girish Ramakrishnan --- config.tests/arch/arch.cpp | 52 ++++++++++++++++++++++------------------------ config.tests/arch/arch.pro | 11 ++++------ 2 files changed, 29 insertions(+), 34 deletions(-) (limited to 'config.tests/arch') diff --git a/config.tests/arch/arch.cpp b/config.tests/arch/arch.cpp index b1ec3d7111..ed772f70a0 100644 --- a/config.tests/arch/arch.cpp +++ b/config.tests/arch/arch.cpp @@ -1,6 +1,7 @@ /**************************************************************************** ** ** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies). +** Copyright (C) 2012 Intel Corporation ** Contact: http://www.qt-project.org/ ** ** This file is part of the FOO module of the Qt Toolkit. @@ -39,46 +40,43 @@ ** ****************************************************************************/ -// NOTE: This file is not meant to be compiled, only preprocessed. #define QGLOBAL_H #include "../../src/corelib/global/qprocessordetection.h" -#undef alpha -#undef arm -#undef avr32 -#undef bfin -#undef i386 -#undef x86_64 -#undef ia64 -#undef mips -#undef power -#undef s390 -#undef sh -#undef sparc -#undef unknown +#include + +extern const char msg[]; +const char msg[] = "==Qt=magic=Qt== Architecture:" + #if defined(Q_PROCESSOR_ALPHA) -Architecture: alpha +"alpha" #elif defined(Q_PROCESSOR_ARM) -Architecture: arm +"arm" #elif defined(Q_PROCESSOR_AVR32) -Architecture: avr32 +"avr32" #elif defined(Q_PROCESSOR_BLACKFIN) -Architecture: bfin +"bfin" #elif defined(Q_PROCESSOR_X86_32) -Architecture: i386 +"i386" #elif defined(Q_PROCESSOR_X86_64) -Architecture: x86_64 +"x86_64" #elif defined(Q_PROCESSOR_IA64) -Architecture: ia64 +"ia64" #elif defined(Q_PROCESSOR_MIPS) -Architecture: mips +"mips" #elif defined(Q_PROCESSOR_POWER) -Architecture: power +"power" #elif defined(Q_PROCESSOR_S390) -Architecture: s390 +"s390" #elif defined(Q_PROCESSOR_SH) -Architecture: sh +"sh" #elif defined(Q_PROCESSOR_SPARC) -Architecture: sparc +"sparc" #else -Architecture: unknown +"unknown" #endif + ; + +int main() +{ + puts(msg); +} diff --git a/config.tests/arch/arch.pro b/config.tests/arch/arch.pro index ea85a52b97..c6801264b4 100644 --- a/config.tests/arch/arch.pro +++ b/config.tests/arch/arch.pro @@ -1,7 +1,4 @@ -CONFIG -= qt debug_and_release -# Detect target by preprocessing a file that uses Q_PROCESSOR_* macros from qprocessordetection.h -COMMAND = $$QMAKE_CXX $$QMAKE_CXXFLAGS -E $$PWD/arch.cpp -# system function converts newline in output into spaces -COMPILER_ARCH = $$system($$COMMAND) -# Message back to configure so that it can set QT_ARCH and QT_HOST_ARCH -message($$COMPILER_ARCH) +SOURCES = arch.cpp +CONFIG -= qt dylib release debug_and_release +CONFIG += debug console +mac:CONFIG -= app_bundle -- cgit v1.2.3