qt5base-lts/tests/auto/tools/qmake
Morten Johan Sørvig 89ef515177 Add JSON parsing support to qmake.
Add qjson* implementation files from corelib/json
to the qmake build. Add a read-only compile mode,
enabled by defining QT_JSON_READONLY.

Add qmake built-in function parseJson(file, into)
which parses a json file into the given variable.

qmake uses a flat key -> value-list implementation
for storing variables, which means that some hackery
is need to represent arbitrarily nested JSON. Use a
special "_KEYS_" variable for arrays and objects:

Arrays:
["item1", "item2"]
$${array._KEYS_} -> 0 1 2
$${array.0} -> "item1"
$${array.1} -> "item2"

Objects:
{ "key1" : "value1", "key2" : "value2" }
$${object._KEYS_} -> key1 key2
$${object.key1} -> value1
$${object.key2} -> value2

Change-Id: I0aa2e4e4ae14fa25be8242bc16d3cffce32504d2
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-10-17 08:07:25 +02:00
..
testdata Add JSON parsing support to qmake. 2013-10-17 08:07:25 +02:00
.gitignore Moved autotests in category 'tools' into new directory structure 2011-09-12 10:08:29 +02:00
qmake.pro remove nonsense DEFINES 2013-07-03 21:38:37 +02:00
testcompiler.cpp Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
testcompiler.h Update copyright year in Digia's license headers 2013-01-18 09:07:35 +01:00
tst_qmake.cpp Add JSON parsing support to qmake. 2013-10-17 08:07:25 +02:00