summaryrefslogtreecommitdiff
path: root/Tools/qmake/mkspecs/features/win32/default_post.prf
blob: c296ae1f792f4befce2f38137b60e865e05d320e (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
# -------------------------------------------------------------------
# Win32 specific defaults
#
# See 'Tools/qmake/README' for an overview of the build system
# -------------------------------------------------------------------

# Pick up 3rdparty libraries from INCLUDE/LIB just like with MSVC
mingw {
    TMPPATH            = $$quote($$(INCLUDE))
    QMAKE_INCDIR_POST += $$split(TMPPATH,";")
    TMPPATH            = $$quote($$(LIB))
    QMAKE_LIBDIR_POST += $$split(TMPPATH,";")
}

# Make sure windows.h doesn't define max() macro
# (it screws up use like std::max and std::numeric_limits::max)
DEFINES += NOMINMAX

# Disable a few warnings. The same warnings are also disabled
# in WebKitLibraries/win/tools/vsprops/common.vsprops
win32-msvc*|wince*: QMAKE_CXXFLAGS += -wd4291 -wd4344 -wd4396 -wd4503 -wd4800 -wd4819 -wd4996
intel_icl: load(icc)

load(default_post)

# When creating the target DLL, extract exporting linker directives from
# all static libraries we're linking into the DLL and make sure they are
# also exported from the DLL.
shared:contains(TEMPLATE, lib) {
    for(target, POST_TARGETDEPS) {
        libdep = $$find(target, .*\\.lib)
        !isEmpty(libdep): LIBSWITHEXPORTS += $$libdep
    }
}

!isEmpty(LIBSWITHEXPORTS) {
    suffix =
    CONFIG(debug, debug|release): suffix = d
    forwarded_exports.target = forwarded-exports$${suffix}.cpp
    forwarded_exports.commands = python $${ROOT_WEBKIT_DIR}$${QMAKE_DIR_SEP}Tools$${QMAKE_DIR_SEP}Scripts$${QMAKE_DIR_SEP}generate-win32-export-forwards $$LIBSWITHEXPORTS $$forwarded_exports.target
    forwarded_exports.depends = $$LIBSWITHEXPORTS
    QMAKE_EXTRA_TARGETS += forwarded_exports
    GENERATED_SOURCES += $$forwarded_exports.target
}