summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/configure_base.prf
blob: ed2f599bb0f7d904d72f4883c801a6636cc6e753 (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
QMAKE_MAKE = $$(MAKE)
!isEmpty(QMAKE_MAKE) {
    # We were called recursively. Use the right make, as MAKEFLAGS may be set as well.
} else: if(equals(MAKEFILE_GENERATOR, UNIX)|equals(MAKEFILE_GENERATOR, MINGW)) {
    !equals(QMAKE_HOST.os, Windows): \
        QMAKE_MAKE = make
    else: \
        QMAKE_MAKE = mingw32-make
} else: if(equals(MAKEFILE_GENERATOR, MSVC.NET)|equals(MAKEFILE_GENERATOR, MSBUILD)) {
    QMAKE_MAKE = nmake
} else {
    error("Configure tests are not supported with the $$MAKEFILE_GENERATOR Makefile generator.")
}

isEmpty(QMAKE_CONFIG_VERBOSE): QMAKE_CONFIG_VERBOSE = false

defineTest(qtLog) {
    msg = "+ $$1"
    write_file($$QMAKE_CONFIG_LOG, msg, append)
    $$QMAKE_CONFIG_VERBOSE: log("$$msg$$escape_expand(\\n)")
}

defineTest(qtRunLoggedCommand) {
    qtLog($$1)
    write_file($${QMAKE_CONFIG_LOG}.part, "")
    result = false
    system("$$1 > \"$${QMAKE_CONFIG_LOG}.part\" 2>&1"): result = true

    output = $$cat($${QMAKE_CONFIG_LOG}.part, blob)

    write_file($${QMAKE_CONFIG_LOG}, output, append)
    $$QMAKE_CONFIG_VERBOSE: log($$output)

    return($$result)
}

isEmpty(QMAKE_CONFIG_TESTS_DIR): QMAKE_CONFIG_TESTS_DIR = $$_PRO_FILE_PWD_/config.tests

# Ensure that a cache is present. If none was found on startup, this will create
# one in the build directory of the project which loads this feature.
cache()

QMAKE_CONFIG_LOG = $$dirname(_QMAKE_CACHE_)/config.log
write_file($$QMAKE_CONFIG_LOG, "")