Changes: Build with CUBI_EXPLICIT_CONSTRUCTORS
[qtcontacts-tracker:hasselmms-qtcontacts-tracker.git] / src / common.pri
1 # This file is part of QtContacts tracker storage plugin
2 #
3 # Copyright (c) 2010-2011 Nokia Corporation and/or its subsidiary(-ies).
4 #
5 # Contact:  Nokia Corporation (info@qt.nokia.com)
6 #
7 # GNU Lesser General Public License Usage
8 # This file may be used under the terms of the GNU Lesser General Public License
9 # version 2.1 as published by the Free Software Foundation and appearing in the
10 # file LICENSE.LGPL included in the packaging of this file.  Please review the
11 # following information to ensure the GNU Lesser General Public License version
12 # 2.1 requirements will be met:
13 # http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
14 #
15 # In addition, as a special exception, Nokia gives you certain additional rights.
16 # These rights are described in the Nokia Qt LGPL Exception version 1.1, included
17 # in the file LGPL_EXCEPTION.txt in this package.
18 #
19 # Other Usage
20 # Alternatively, this file may be used in accordance with the terms and
21 # conditions contained in a signed written agreement between you and Nokia.
22
23 defineReplace(BUILD_OTHER) {
24     isEmpty(3) {
25         makefile=Makefile
26         project=$$2/$$basename(2).pro
27     } else {
28         makefile=Makefile.$$3
29         project=$$2/$${3}.pro
30     }
31
32     return((cd $$1 && { test -f $$makefile || qmake $$project;} && $(MAKE) -f $$makefile;) && touch $@)
33 }
34
35 # =================================================================================================
36 # Permit the developer to override some settings
37 # =================================================================================================
38
39 exists(../user.pri) {
40     include(../user.pri)
41 }
42
43 # =================================================================================================
44 # Pass some configuration variables as macro
45 # =================================================================================================
46
47 DEFINES *= PACKAGE=\\\"$${PACKAGE}\\\"
48 DEFINES *= VERSION=\\\"$${VERSION_LABEL}\\\"
49 DEFINES *= VERSION_MAJOR=$${VERSION_MAJOR}
50 DEFINES *= VERSION_MINOR=$${VERSION_MINOR}
51 DEFINES *= VERSION_MICRO=$${VERSION_MICRO}
52 DEFINES *= QT_NO_CAST_FROM_ASCII=1
53 DEFINES *= CUBI_EXPLICIT_CONSTRUCTORS=1
54
55 equals(ENABLE_CREDENTIALS,yes) {
56     DEFINES *= ENABLE_CREDENTIALS=1
57     CONFIG *= mssf-qt
58     MSSF *= creds
59 }
60
61 equals(ENABLE_CELLULAR,yes) {
62     DEFINES *= ENABLE_CELLULAR=1
63     CONFIG *= cellular-qt link_pkgconfig
64     PKGCONFIG *= sysinfo
65 }
66
67 # =================================================================================================
68 # Set custom compiler flags
69 # =================================================================================================
70
71 QMAKE_CXXFLAGS *= -Werror=switch -Wmissing-declarations
72
73 equals(ENABLE_RTTI,yes): QMAKE_CXXFLAGS *= -frtti
74 else:equals(ENABLE_RTTI,no): QMAKE_CXXFLAGS *= -fno-rtti
75
76 unix:CONFIG *= hide_symbols