summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorPeter Kümmel <syntheticpp@gmx.net>2012-08-20 12:58:14 +0200
committerQt by Nokia <qt-info@nokia.com>2012-08-21 11:05:20 +0200
commit2dc3181bdcc0d447d2bec42fa3b7cbecb640a51a (patch)
treede4316b86b6f0bf4e016f4d1a9ec0a2d751bb1ae /mkspecs
parentef98762dc6f4f2175b3f26cdf99242afadc4e8be (diff)
merge mingw mkspec changes for cross compiling
Change-Id: I0f4705717c38ee4c05b5618c006d3cf066d75f49 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/unsupported/win32-g++-cross/qmake.conf94
-rw-r--r--mkspecs/unsupported/win32-g++-cross/qplatformdefs.h42
-rw-r--r--mkspecs/win32-g++/qmake.conf19
3 files changed, 12 insertions, 143 deletions
diff --git a/mkspecs/unsupported/win32-g++-cross/qmake.conf b/mkspecs/unsupported/win32-g++-cross/qmake.conf
deleted file mode 100644
index a1283b669e..0000000000
--- a/mkspecs/unsupported/win32-g++-cross/qmake.conf
+++ /dev/null
@@ -1,94 +0,0 @@
-#
-# qmake configuration for win32-g++-cross
-#
-# Written for MinGW cross building on Unix / gcc 4.6 or higher
-#
-
-MAKEFILE_GENERATOR = MINGW
-TEMPLATE = app
-CONFIG += qt warn_on release link_prl debug_and_release debug_and_release_target precompile_header
-QT += core gui
-DEFINES += UNICODE
-QMAKE_COMPILER_DEFINES += __GNUC__ WIN32
-
-QMAKE_EXT_OBJ = .o
-QMAKE_EXT_RES = _res.o
-
-QMAKE_CC = i686-pc-mingw32-gcc
-QMAKE_LEX = flex
-QMAKE_LEXFLAGS =
-QMAKE_YACC = byacc
-QMAKE_YACCFLAGS = -d
-QMAKE_CFLAGS = -pipe -fno-keep-inline-dllexport
-QMAKE_CFLAGS_DEPS = -M
-QMAKE_CFLAGS_WARN_ON = -Wall -Wextra
-QMAKE_CFLAGS_WARN_OFF = -w
-QMAKE_CFLAGS_RELEASE = -O2
-QMAKE_CFLAGS_DEBUG = -g
-QMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_SSE2 = -msse2
-QMAKE_CFLAGS_SSE3 = -msse3
-QMAKE_CFLAGS_SSSE3 = -mssse3
-QMAKE_CFLAGS_SSE4_1 = -msse4.1
-QMAKE_CFLAGS_SSE4_2 = -msse4.2
-QMAKE_CFLAGS_AVX = -mavx
-QMAKE_CFLAGS_AVX2 = -mavx2
-QMAKE_CFLAGS_IWMMXT = -mcpu=iwmmxt
-QMAKE_CFLAGS_NEON = -mfpu=neon
-
-QMAKE_CXX = i686-pc-mingw32-g++
-QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
-QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
-QMAKE_CXXFLAGS_RTTI_ON = -frtti
-QMAKE_CXXFLAGS_RTTI_OFF = -fno-rtti
-QMAKE_CXXFLAGS_EXCEPTIONS_ON = -fexceptions -mthreads
-QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -fno-exceptions
-
-QMAKE_INCDIR =
-
-QMAKE_RUN_CC = $(CC) -c $(CFLAGS) $(INCPATH) -o $obj $src
-QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
-QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
-QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
-
-QMAKE_LINK = i686-pc-mingw32-g++
-QMAKE_LINK_C = i686-pc-mingw32-gcc
-QMAKE_LFLAGS =
-QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
-QMAKE_LFLAGS_EXCEPTIONS_OFF =
-QMAKE_LFLAGS_RELEASE = -Wl,-s
-QMAKE_LFLAGS_DEBUG =
-QMAKE_LFLAGS_CONSOLE = -Wl,-subsystem,console
-QMAKE_LFLAGS_WINDOWS = -Wl,-subsystem,windows
-QMAKE_LFLAGS_DLL = -shared
-QMAKE_LINK_OBJECT_MAX = 10
-QMAKE_LINK_OBJECT_SCRIPT= object_script
-QMAKE_PREFIX_STATICLIB = lib
-QMAKE_EXTENSION_STATICLIB = a
-
-QMAKE_LIBS =
-QMAKE_LIBS_CORE = -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32 -lkernel32
-QMAKE_LIBS_GUI = -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32
-QMAKE_LIBS_NETWORK = -lws2_32
-QMAKE_LIBS_OPENGL = -lglu32 -lopengl32 -lgdi32 -luser32
-QMAKE_LIBS_COMPAT = -ladvapi32 -lshell32 -lcomdlg32 -luser32 -lgdi32 -lws2_32
-QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
-
-QMAKE_SH = bash
-MINGW_IN_SHELL = 1
-include(../../common/shell-unix.conf)
-
-QMAKE_LIB = i686-pc-mingw32-ar -ru
-QMAKE_RC = i686-pc-mingw32-windres
-
-QMAKE_STRIP = i686-pc-mingw32-strip
-QMAKE_STRIPFLAGS_LIB += --strip-unneeded
-PKG_CONFIG = i686-pc-mingw32-pkg-config
-
-load(qt_config)
diff --git a/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h b/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h
deleted file mode 100644
index 0762904957..0000000000
--- a/mkspecs/unsupported/win32-g++-cross/qplatformdefs.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/
-**
-** This file is part of the qmake spec of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "../../win32-g++/qplatformdefs.h"
diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf
index 5e599d19c1..22b98cd94a 100644
--- a/mkspecs/win32-g++/qmake.conf
+++ b/mkspecs/win32-g++/qmake.conf
@@ -3,6 +3,11 @@
#
# Written for MinGW / gcc 4.6 or higher
#
+# Cross compile example for i686-w64-mingw32-g++:
+# configure -xplatform win32-g++ -device-option CROSS_COMPILE=i686-w64-mingw32-
+#
+
+load(device_config)
MAKEFILE_GENERATOR = MINGW
TEMPLATE = app
@@ -14,7 +19,7 @@ QMAKE_COMPILER_DEFINES += __GNUC__ WIN32
QMAKE_EXT_OBJ = .o
QMAKE_EXT_RES = _res.o
-QMAKE_CC = gcc
+QMAKE_CC = $${CROSS_COMPILE}gcc
QMAKE_LEX = flex
QMAKE_LEXFLAGS =
QMAKE_YACC = byacc
@@ -36,7 +41,7 @@ QMAKE_CFLAGS_AVX2 = -mavx2
QMAKE_CFLAGS_IWMMXT = -mcpu=iwmmxt
QMAKE_CFLAGS_NEON = -mfpu=neon
-QMAKE_CXX = g++
+QMAKE_CXX = $${CROSS_COMPILE}g++
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
QMAKE_CXXFLAGS_DEPS = $$QMAKE_CFLAGS_DEPS
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
@@ -57,8 +62,8 @@ QMAKE_RUN_CC_IMP = $(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
QMAKE_RUN_CXX = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $obj $src
QMAKE_RUN_CXX_IMP = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
-QMAKE_LINK = g++
-QMAKE_LINK_C = gcc
+QMAKE_LINK = $${CROSS_COMPILE}g++
+QMAKE_LINK_C = $${CROSS_COMPILE}gcc
QMAKE_LFLAGS =
QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads
QMAKE_LFLAGS_EXCEPTIONS_OFF =
@@ -89,9 +94,9 @@ QMAKE_LIBS_QT_ENTRY = -lmingw32 -lqtmain
}
QMAKE_IDL = midl
-QMAKE_LIB = ar -ru
-QMAKE_RC = windres
+QMAKE_LIB = $${CROSS_COMPILE}ar -ru
+QMAKE_RC = $${CROSS_COMPILE}windres
-QMAKE_STRIP = strip
+QMAKE_STRIP = $${CROSS_COMPILE}strip
QMAKE_STRIPFLAGS_LIB += --strip-unneeded
load(qt_config)