meson.build revision ea1d6981
1# Copyright © 2018 Intel Corporation
2
3# Permission is hereby granted, free of charge, to any person obtaining a copy
4# of this software and associated documentation files (the "Software"), to deal
5# in the Software without restriction, including without limitation the rights
6# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7# copies of the Software, and to permit persons to whom the Software is
8# furnished to do so, subject to the following conditions:
9
10# The above copyright notice and this permission notice shall be included in
11# all copies or substantial portions of the Software.
12
13# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
19# SOFTWARE.
20
21project('xorgproto', 'c', license : 'MIT', version : '2019.1')
22pkg = import('pkgconfig')
23cc = meson.get_compiler('c')
24sed = find_program('sed')
25
26pcs = [
27        ['applewmproto',        '1.4.2'],
28        ['bigreqsproto',        '1.1.2'],
29        ['compositeproto',      '0.4.2'],
30        ['damageproto',         '1.2.1'],
31        ['dmxproto',            '2.3.1'],
32        ['dri2proto',           '2.8'],
33        ['dri3proto',           '1.2'],
34        ['fixesproto',          '5.0'],
35        ['fontsproto',          '2.1.3'],
36        ['glproto',             '1.4.17'],
37        ['inputproto',          '2.3.2'],
38        ['kbproto',             '1.0.7'],
39        ['presentproto',        '1.2'],
40        ['randrproto',          '1.6.0'],
41        ['recordproto',         '1.14.2'],
42        ['renderproto',         '0.11.1'],
43        ['resourceproto',       '1.2.0'],
44        ['scrnsaverproto',      '1.2.2'],
45        ['trapproto',           '3.4.3'],
46        ['videoproto',          '2.3.3'],
47        ['windowswmproto',      '1.0.4'],
48        ['xcmiscproto',         '1.2.2'],
49        ['xextproto',           '7.3.0'],
50        ['xf86bigfontproto',    '1.2.0'],
51        ['xf86dgaproto',        '2.1'],
52        ['xf86driproto',        '2.1.1'],
53        ['xf86miscproto',       '0.9.3'],
54        ['xf86vidmodeproto',    '2.3.1'],
55        ['xineramaproto',       '1.2.1'],
56        ['xproto',              '7.0.32'],
57        ['xproxymngproto',      '1.0.3'],
58]
59
60foreach pc : pcs
61    if pc[0] == 'xf86driproto'
62        subdir = 'X11/dri'
63    else
64        subdir = ''
65    endif
66    pkg.generate(
67        name : pc[0],
68        filebase : pc[0],
69        description : pc[0] + ' headers',
70        version : pc[1],
71        install_dir : get_option('datadir') + '/pkgconfig',
72        subdirs : subdir,
73    )
74endforeach
75
76if get_option('legacy') == true
77    legacy_pcs = [
78        ['evieproto', '1.1.1'],
79        ['fontcacheproto', '0.1.3'],
80        ['lg3dproto', '5.0'],
81        ['printproto', '1.0.5'],
82        ['xcalibrateproto', '0.1.0'],
83        ['xf86rushproto', '1.2.2'],
84    ]
85    foreach pc : legacy_pcs
86        pkg.generate(
87            name : pc[0],
88            filebase : pc[0],
89            description : pc[0] + ' headers',
90            version : pc[1],
91            install_dir : get_option('datadir') + '/pkgconfig'
92        )
93    endforeach
94endif
95
96ext_xorgproto = declare_dependency(
97    include_directories : include_directories('include')
98)
99
100subdir('include')
101