summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/device_config.prf
blob: b8991bbe45bd643a062fa5ef85f8c3dc704d53cd (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
# Load generated qdevice.pri
exists($$_QMAKE_CACHE_) {
    # set in default_pre, so it's the first place to check for qdevice.pri
    DIR = $$fromfile($$_QMAKE_CACHE_, QT_BUILD_TREE)
    !isEmpty(DIR):DEVICE_PRI = $$DIR/mkspecs/qdevice.pri
}

isEmpty(DEVICE_PRI) {
    # OUTDIR environ is set by configure (arch detection) and compile.test
    DIR = $$(OUTDIR)
    !isEmpty(DIR):DEVICE_PRI = $$DIR/mkspecs/qdevice.pri
}

isEmpty(DEVICE_PRI) {
    DIR = $$[QT_HOST_DATA]
    !isEmpty(DIR):DEVICE_PRI = $$DIR/mkspecs/qdevice.pri
}

isEmpty(DEVICE_PRI) {
    error(Could not locate qdevice.pri)
}

exists($$DEVICE_PRI):include($$DEVICE_PRI)

isEmpty(CROSS_COMPILE) {
    #this variable can be persisted via qmake -set CROSS_COMPILE /foo
    CROSS_COMPILE = $$[CROSS_COMPILE]
}

unset(DEVICE_PRI)
unset(DIR)

# Provide a function to be used by mkspecs
defineTest(deviceSanityCheckCompiler) {
    # Check if the binary exists with an absolute path
    exists($$QMAKE_CXX):return()

    # Check for possible reasons of failure
    # check if CROSS_COMPILE device-option is set
    isEmpty(CROSS_COMPILE):error("CROSS_COMPILE needs to be set via -device-option CROSS_COMPILE=<path>")

    # CROSS_COMPILE is an incorrect path
    error("Compiler $$QMAKE_CXX not found. Check the value of CROSS_COMPILE -device-option")
}