summaryrefslogtreecommitdiff
path: root/src/ivimedia/configure.json
blob: 46dc233e560bcbc1b4415c999d8ac08905d6d84a (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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
{
    "module": "ivimedia",
    "testDir": "../../config.tests",
    "depends": [
        "ivicore"
    ],

    "commandline": {
        "options": {
            "taglib": { "type": "enum", "values": [ "no", "qt", "system" ] }
        }
    },

    "tests": {
        "taglib_submodule": {
            "label": "taglib_submodule",
            "type": "taglib_submodule"
        }
    },

    "libraries": {
        "taglib": {
            "label": "taglib",
            "test": "taglib",
            "sources": [
                { "type": "pkgConfig", "args": "taglib" },
                { "includedir": "/usr/local/opt/taglib/include/taglib", "libs": "-L /usr/local/opt/taglib/lib -ltag" },
                "-ltag"
            ]
        }
    },

    "features": {
        "taglib": {
            "label": "taglib",
            "disable": "input.taglib == 'no'",
            "output": [
                "privateFeature",
                { "type": "define", "negative": true, "name": "QTIVI_NO_TAGLIB" }
            ]
        },
        "system-taglib": {
            "label": "  Using system taglib",
            "disable": "input.taglib == 'qt'",
            "enable": "input.taglib == 'system'",
            "condition": "features.taglib && libs.taglib",
            "output": [ "privateFeature" ]
        },
        "media_simulation_backend": {
            "label": "Mediaplayer Simulation Backend",
            "condition": "module.multimedia",
            "output": [ "privateFeature" ]
        },
        "tuner_simulation_backend": {
            "label": "Tuner Simulation Backend",
            "condition": "module.multimedia",
            "output": [ "privateFeature" ]
        },
        "media_qtro_backend" : {
            "label": "Mediaplayer Qt Remote Objects Backend",
            "condition": "features.remoteobjects && module.multimedia",
            "output": [ "privateFeature" ]
        },
        "media_qtro_simulation_server" : {
            "label": "Mediaplayer Qt Remote Objects Simulation Server",
            "condition": "features.remoteobjects && module.multimedia",
            "output": [ "privateFeature" ]
        },
        "ivimedia" : {
            "label": "Qt IVI Media",
            "condition": "features.ivicore",
            "output": [ "publicFeature" ]
        }
    },

    "report": [
        {
            "type": "error",
            "condition": "!tests.taglib_submodule && !input.taglib == 'no' && !features.system-taglib",
            "message": "The taglib submodule was not initialized
Please initialize the submodule
E.g. by running the following command:
    git submodule init && git submodule update

or disable taglib by passing --taglib=no"
        },
        {
            "type": "warning",
            "condition": "input.taglib == 'no'",
            "message": "Building taglib was disabled!
The Mediaplayer Simulation Backend will only provide a stub and can't scan media files"
        },
        {
            "type": "warning",
            "condition": "!features.media_simulation_backend && !module.multimedia",
            "message": "Building Mediaplayer Simulation Backend was disabled!
Please make sure the QtMultimedia module is available."
        }
    ],

    "summary": [
        {
            "section": "Qt IVI Media",
            "condition": "features.ivimedia",
            "entries": [
                "taglib",
                "system-taglib",
                "media_qtro_simulation_server",
                {
                    "section": "Backends",
                    "entries": [
                        "media_simulation_backend",
                        "media_qtro_backend",
                        "tuner_simulation_backend"
                    ]
                }
            ]
        },
        {
            "type": "feature",
            "args": "ivimedia",
            "condition": "!features.ivimedia"
        }
    ]
}