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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
# Include file to make it easy to include WebKit into Qt projects
# Detect that we are building as a standalone package by the presence of
# either the generated files directory or as part of the Qt package through
# QTDIR_build
CONFIG(QTDIR_build): CONFIG += standalone_package
else:exists($$PWD/Source/WebCore/generated): CONFIG += standalone_package
CONFIG += depend_includepath
DEPENDPATH += $$OUT_PWD
DEFINES += BUILDING_QT__=1
building-libs {
win32-msvc*|win32-icc: INCLUDEPATH += $$PWD/Source/JavaScriptCore/os-win32
} else {
CONFIG(QTDIR_build) {
QT += webkit
} else {
QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR
QTWEBKITLIBNAME = QtWebKit
mac:!static:contains(QT_CONFIG, qt_framework):!CONFIG(webkit_no_framework) {
LIBS += -framework $$QTWEBKITLIBNAME
QMAKE_FRAMEWORKPATH = $$OUTPUT_DIR/lib $$QMAKE_FRAMEWORKPATH
} else {
build_pass: win32-*|wince* {
!CONFIG(release, debug|release): QTWEBKITLIBNAME = $${QTWEBKITLIBNAME}d
QTWEBKITLIBNAME = $${QTWEBKITLIBNAME}$${QT_MAJOR_VERSION}
win32-g++*: LIBS += -l$$QTWEBKITLIBNAME
else: LIBS += $${QTWEBKITLIBNAME}.lib
} else {
LIBS += -lQtWebKit
symbian {
TARGET.EPOCSTACKSIZE = 0x14000 // 80 kB
# For EXEs only: set heap to usable value
TARGET.EPOCHEAPSIZE =
heapSizeRule = \
"$${LITERAL_HASH}ifdef WINSCW" \
"EPOCHEAPSIZE 0x40000 0x2000000 // Min 256kB, Max 32MB" \
"$${LITERAL_HASH}else" \
"EPOCHEAPSIZE 0x40000 0x10000000 // Min 256kB, Max 256MB" \
"$${LITERAL_HASH}endif"
MMP_RULES += heapSizeRule
}
}
}
}
DEPENDPATH += $$PWD/Source/WebKit/qt/Api
}
!mac:!unix|symbian {
DEFINES += USE_SYSTEM_MALLOC=1
}
CONFIG(release, debug|release) {
DEFINES += NDEBUG
}
INCLUDEPATH += $$OUTPUT_DIR/Source/include/QtWebKit
CONFIG -= warn_on
*-g++*:QMAKE_CXXFLAGS += -Wall -Wextra -Wreturn-type -fno-strict-aliasing -Wcast-align -Wchar-subscripts -Wformat-security -Wreturn-type -Wno-unused-parameter -Wno-sign-compare -Wno-switch -Wno-switch-enum -Wundef -Wmissing-noreturn -Winit-self
# Treat warnings as errors on x86/Linux/GCC
linux-g++* {
isEqual(QT_ARCH,x86_64)|isEqual(QT_ARCH,i386): QMAKE_CXXFLAGS += -Werror
}
symbian|*-armcc {
# Enable GNU compiler extensions to the ARM compiler for all Qt ports using RVCT
RVCT_COMMON_CFLAGS = --gnu --diag_suppress 68,111,177,368,830,1293
RVCT_COMMON_CXXFLAGS = $$RVCT_COMMON_CFLAGS --no_parse_templates
# Make debug symbols leaner in RVCT4.x. Ignored by compiler for release builds
QMAKE_CXXFLAGS.ARMCC_4_0 += --remove_unneeded_entities
}
*-armcc {
QMAKE_CFLAGS += $$RVCT_COMMON_CFLAGS
QMAKE_CXXFLAGS += $$RVCT_COMMON_CXXFLAGS
}
symbian {
QMAKE_CXXFLAGS.ARMCC += $$RVCT_COMMON_CXXFLAGS
}
valgrind {
contains(JAVASCRIPTCORE_JIT,yes): error("'JAVASCRIPTCORE_JIT=yes' not supported with valgrind")
QMAKE_CXXFLAGS += -g
QMAKE_LFLAGS += -g
DEFINES += USE_SYSTEM_MALLOC=1
DEFINES += ENABLE_JIT=0
JAVASCRIPTCORE_JIT = no
}
##### Defaults for some mobile platforms
symbian|maemo5|maemo6 {
CONFIG += disable_uitools
CONFIG += enable_fast_mobile_scrolling
CONFIG += use_qt_mobile_theme
maemo6: CONFIG += include_webinspector
} else {
CONFIG += include_webinspector
}
####
disable_uitools: DEFINES *= QT_NO_UITOOLS
contains(DEFINES, QT_NO_UITOOLS): CONFIG -= uitools
# Disable a few warnings on Windows. The warnings are also
# disabled in WebKitLibraries/win/tools/vsprops/common.vsprops
win32-msvc*|wince*: QMAKE_CXXFLAGS += -wd4291 -wd4344 -wd4396 -wd4503 -wd4800 -wd4819 -wd4996
CONFIG(qt_minimal) {
DEFINES *= QT_NO_ANIMATION
DEFINES *= QT_NO_BEARERMANAGEMENT
DEFINES *= QT_NO_CLIPBOARD
DEFINES *= QT_NO_COMBOBOX
DEFINES *= QT_NO_CONCURRENT
DEFINES *= QT_NO_CRASHHANDLER
DEFINES *= QT_NO_CURSOR
DEFINES *= QT_NO_DESKTOPSERVICES
DEFINES *= QT_NO_FILEDIALOG
DEFINES *= QT_NO_GRAPHICSEFFECT
DEFINES *= QT_NO_IM
DEFINES *= QT_NO_INPUTDIALOG
DEFINES *= QT_NO_LINEEDIT
DEFINES *= QT_NO_MESSAGEBOX
DEFINES *= QT_NO_OPENSSL
DEFINES *= QT_NO_PRINTER
DEFINES *= QT_NO_QUUID_STRING
DEFINES *= QT_NO_SHORTCUT
DEFINES *= QT_NO_STYLE_STYLESHEET
DEFINES *= QT_NO_SYSTEMTRAYICON
DEFINES *= QT_NO_TEMPORARYFILE
DEFINES *= QT_NO_TOOLTIP
DEFINES *= QT_NO_UITOOLS
DEFINES *= QT_NO_UNDOCOMMAND
DEFINES *= QT_NO_UNDOSTACK
DEFINES *= QT_NO_XRENDER
}
|