summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_module_headers.prf
blob: 37146ff6ecf0d7e43e2ee9f9f646f3e4f396b37c (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
#load up the headers info
include($$MODULE_BASE_OUTDIR/include/$$TARGET/headers.pri, "", true)

lctarget = $$lower($$TARGET)
uctarget = $$upper($$TARGET)

# Create module version header
MODULE_VERSION_HEADER = $$find(SYNCQT.HEADER_FILES, (^|/)$${lctarget}version\\.h$)
count(MODULE_VERSION_HEADER, 1) {
    MODULE_VERSION_HEADER = $$absolute_path($$MODULE_VERSION_HEADER, $$_PRO_FILE_PWD_)

    !build_pass {
        majorhexstr = $$format_number($$section(VERSION, ., 0, 0), width=2 zeropad obase=16)
        minorhexstr = $$format_number($$section(VERSION, ., 1, 1), width=2 zeropad obase=16)
        patchhexstr = $$format_number($$section(VERSION, ., 2, 2), width=2 zeropad obase=16)
        modulehexstring = 0x$${majorhexstr}$${minorhexstr}$${patchhexstr}
        MODULE_VERSION_HEADER_CONT = \
            "/* This file was generated by qmake with the info from $${_PRO_FILE_}. */" \
            "$${LITERAL_HASH}ifndef QT_$${uctarget}_VERSION_H" \
            "$${LITERAL_HASH}define QT_$${uctarget}_VERSION_H" \
            "" \
            "$${LITERAL_HASH}define $${uctarget}_VERSION_STR \"$$VERSION\"" \
            "" \
            "$${LITERAL_HASH}define $${uctarget}_VERSION $$modulehexstring" \
            "" \
            "$${LITERAL_HASH}endif // QT_$${uctarget}_VERSION_H"
        write_file($$MODULE_VERSION_HEADER, MODULE_VERSION_HEADER_CONT)|error("Aborting.")
    }

    HEADERS += $$MODULE_VERSION_HEADER
}

CONFIG += qt_install_headers