summaryrefslogtreecommitdiffstats
path: root/config.pri
blob: de6ec0fb68983f820f4022ee2bbac8972a2f0a84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
##################### LIB #################################################

LIBRARY_NAME = QtCommercialChart
ios:CONFIG(iphonesimulator, iphonesimulator|iphoneos):LIBRARY_NAME = $$join(LIBRARY_NAME,,,_iphonesimulator)
CONFIG(debug, debug|release) {
    mac: LIBRARY_NAME = $$join(LIBRARY_NAME,,,_debug)
    win32: LIBRARY_NAME = $$join(LIBRARY_NAME,,,d)
}

LIBS += -l$$LIBRARY_NAME

# This will undefine Q_DECL_EXPORT/Q_DECL_IMPORT at qchartglobal.h
# They should not be used for staticlib builds.
static|staticlib:DEFINES+=QTCOMMERCIALCHART_STATICLIB

#################### COVERAGE #################################################################
coverage: CONFIG += debug

##################### SHADOW CONFIG #################################################

!contains($${PWD}, $${OUT_PWD}){
    search = "$$PWD:::"
    temp = $$split(search,"/")
    temp = $$last(temp)
    path = $$replace(search,$$temp,'')
    temp = $$split(OUT_PWD,$$path)
    temp = $$split(temp,'/')
    temp = $$first(temp)
    path = "$${path}$${temp}"
    SHADOW=$$path
}else{
    SHADOW=$$PWD
    CONFIG-=development_build
}

##################### BUILD PATHS ##################################################

CHART_BUILD_PUBLIC_HEADER_DIR = $$SHADOW/include
CHART_BUILD_PRIVATE_HEADER_DIR = $$CHART_BUILD_PUBLIC_HEADER_DIR/private
CHART_BUILD_LIB_DIR = $$SHADOW/lib
CHART_BUILD_DIR = $$SHADOW/build
CHART_BUILD_BIN_DIR = $$SHADOW/bin
CHART_BUILD_QML_PLUGIN_DIR = $$CHART_BUILD_BIN_DIR
CHART_BUILD_QML2_PLUGIN_DIR = $$CHART_BUILD_QML_PLUGIN_DIR
CHART_BUILD_DESIGNER_PLUGIN_DIR = $$CHART_BUILD_LIB_DIR
CHART_BUILD_DOC_DIR = $$SHADOW/doc

CONFIG(release,debug|release){
    CHART_BUILD_LIB_DIR = $$CHART_BUILD_LIB_DIR/release
    CHART_BUILD_BIN_DIR = $$CHART_BUILD_BIN_DIR/release
    CHART_BUILD_QML_PLUGIN_DIR = $$CHART_BUILD_QML_PLUGIN_DIR/release/imports/QtCommercial/Chart
    CHART_BUILD_QML2_PLUGIN_DIR = $$CHART_BUILD_QML2_PLUGIN_DIR/release/qml/QtCommercial/Chart
    CHART_BUILD_DESIGNER_PLUGIN_DIR = $$CHART_BUILD_LIB_DIR
}


CONFIG(debug,debug|release){
   CHART_BUILD_LIB_DIR = $$CHART_BUILD_LIB_DIR/debug
   CHART_BUILD_BIN_DIR = $$CHART_BUILD_BIN_DIR/debug
   CHART_BUILD_QML_PLUGIN_DIR = $$CHART_BUILD_QML_PLUGIN_DIR/debug/imports/QtCommercial/Chart
   CHART_BUILD_QML2_PLUGIN_DIR = $$CHART_BUILD_QML2_PLUGIN_DIR/debug/qml/QtCommercial/Chart
   CHART_BUILD_DESIGNER_PLUGIN_DIR = $$CHART_BUILD_LIB_DIR
}
# Use own folders for debug and release builds

CONFIG(debug, debug|release):CHART_BUILD_DIR = $$join(CHART_BUILD_DIR,,,/debug)
CONFIG(release, debug|release): CHART_BUILD_DIR = $$join(CHART_BUILD_DIR,,,/release)


contains(QMAKE_HOST.os, Windows) {
    CHART_BUILD_PUBLIC_HEADER_DIR = $$replace(CHART_BUILD_PUBLIC_HEADER_DIR, "/","\\")
    CHART_BUILD_PRIVATE_HEADER_DIR = $$replace(CHART_BUILD_PRIVATE_HEADER_DIR, "/","\\")
    CHART_BUILD_BUILD_DIR = $$replace(CHART_BUILD_BUILD_DIR, "/","\\")
    CHART_BUILD_BIN_DIR = $$replace(CHART_BUILD_BIN_DIR, "/","\\")
    CHART_BUILD_QML_PLUGIN_DIR = $$replace(CHART_BUILD_QML_PLUGIN_DIR, "/","\\")
    CHART_BUILD_QML2_PLUGIN_DIR = $$replace(CHART_BUILD_QML2_PLUGIN_DIR, "/","\\")
    CHART_BUILD_DESIGNER_PLUGIN_DIR = $$replace(CHART_BUILD_DESIGNER_PLUGIN_DIR, "/","\\")
    CHART_BUILD_DOC_DIR = $$replace(CHART_BUILD_DOC_DIR, "/","\\")
    CHART_BUILD_LIB_DIR = $$replace(CHART_BUILD_LIB_DIR, "/","\\")
}

macx:!ios {
    # Some Qt versions use an incompatible configuration on OSX which makes the build fail.
    # As a work-around, set the minimum OSX version to 10.5.
    QMAKE_CXXFLAGS *= -mmacosx-version-min=10.5
    QMAKE_LFLAGS *= -mmacosx-version-min=10.5
}

linux-arm*: {
    DEFINES+=QT_ON_ARM
}

##################### INCLUDES ############################################################


INCLUDEPATH += $$CHART_BUILD_PUBLIC_HEADER_DIR $$[QT_INSTALL_HEADERS]/QtCommercialChart

!exists($$CHART_BUILD_LIB_DIR) {
    system($$QMAKE_MKDIR $$CHART_BUILD_LIB_DIR)
}
!win32: {
    LIBS += -L$$CHART_BUILD_LIB_DIR -Wl,-rpath,$$CHART_BUILD_LIB_DIR
} else {
    win32-msvc*: {
        # hack fix for error:
        #   "LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'"
        QMAKE_LIBDIR += $$CHART_BUILD_LIB_DIR
    } else {
        LIBS += -L$$CHART_BUILD_LIB_DIR
    }
}
LIBS += -L$$[QT_INSTALL_LIBS]

##################### DEVELOPMENT BUILD ###################################################

development_build: {
    DEFINES+=DEVELOPMENT_BUILD
    CONFIG+=debug_and_release
    CONFIG+=build_all
}

##################### UNIT TESTS ##############################################################

CONFIG(debug, debug|release) {
    DEFINES+=BUILD_PRIVATE_UNIT_TESTS
}