blob: 981ab97913fe800336ed21ee5e58a0d033115ad8 [file] [log] [blame]
Dylan Bakerd1992252017-09-14 17:57:17 -07001# Copyright © 2017 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
Kristian H. Kristensen932f51d2020-07-28 15:25:49 -070021inc_include = [include_directories('.')]
Dylan Baker6b4c7042017-11-13 17:58:51 -080022inc_d3d9 = include_directories('D3D9')
Alexander von Gluck IV834d2212018-02-16 16:56:31 -060023inc_haikugl = include_directories('HaikuGL')
Dylan Baker32180562017-09-20 20:11:32 -070024
Kristian H. Kristensen932f51d2020-07-28 15:25:49 -070025# Most things assume that Android headers are in the default include
26# path when compiling for Android so add the stub headers to
27# inc_include when using the stub.
28if with_android_stub
29 inc_include += [include_directories('android_stub')]
30endif
31
Eric Engestrom6e21dcc2019-09-25 17:38:49 +010032if not with_glvnd
Eric Engestrom34ba3632019-09-30 14:08:29 +010033 if with_gles1 or with_gles2 or with_opengl or with_egl
34 install_headers('KHR/khrplatform.h', subdir : 'KHR')
35 endif
Eric Engestromb9a5fb12019-09-30 13:40:22 +010036
Eric Engestrom34ba3632019-09-30 14:08:29 +010037 if with_gles1
38 install_headers(
39 'GLES/egl.h',
40 'GLES/gl.h',
41 'GLES/glext.h',
42 'GLES/glplatform.h',
43 subdir : 'GLES',
44 )
45 endif
Dylan Baker32180562017-09-20 20:11:32 -070046
Eric Engestrom34ba3632019-09-30 14:08:29 +010047 if with_gles2
48 install_headers(
49 'GLES2/gl2.h',
50 'GLES2/gl2ext.h',
51 'GLES2/gl2platform.h',
52 subdir : 'GLES2',
53 )
54 install_headers(
55 'GLES3/gl3.h',
56 'GLES3/gl31.h',
57 'GLES3/gl32.h',
58 'GLES3/gl3ext.h',
59 'GLES3/gl3platform.h',
60 subdir : 'GLES3',
61 )
62 endif
Dylan Baker32180562017-09-20 20:11:32 -070063
Eric Engestrom34ba3632019-09-30 14:08:29 +010064 if with_opengl
65 install_headers(
66 'GL/gl.h',
67 'GL/glcorearb.h',
68 'GL/glext.h',
69 subdir : 'GL',
70 )
71 endif
Dylan Baker32180562017-09-20 20:11:32 -070072
Eric Engestrom34ba3632019-09-30 14:08:29 +010073 if with_glx != 'disabled'
74 install_headers(
75 'GL/glx.h',
76 'GL/glxext.h',
77 subdir : 'GL')
78 endif
Dylan Baker32180562017-09-20 20:11:32 -070079
Eric Engestrom34ba3632019-09-30 14:08:29 +010080 if with_egl
81 install_headers(
82 'EGL/egl.h',
83 'EGL/eglext.h',
84 'EGL/eglplatform.h',
85 subdir : 'EGL',
86 )
87 endif
Eric Engestrom1a7e9652019-09-30 14:06:07 +010088endif
89
90# Non-upstream headers
91if with_egl
92 install_headers(
Eric Engestromdaae0032019-09-30 14:00:51 +010093 'EGL/eglmesaext.h',
94 'EGL/eglextchromium.h',
Dylan Baker108d2572017-10-18 12:20:43 -070095 subdir : 'EGL',
96 )
97endif
Dylan Baker91244db2017-11-30 10:37:11 -080098
Eric Engestromb9a5fb12019-09-30 13:40:22 +010099if with_osmesa != 'none'
100 install_headers('GL/osmesa.h', subdir : 'GL')
101endif
102
Dylan Baker91244db2017-11-30 10:37:11 -0800103if with_dri
104 install_headers('GL/internal/dri_interface.h', subdir : 'GL/internal')
105endif
Dylan Baker6b4c7042017-11-13 17:58:51 -0800106
107if with_gallium_st_nine
108 install_headers(
109 'd3dadapter/d3dadapter9.h', 'd3dadapter/drm.h', 'd3dadapter/present.h',
110 subdir : 'd3dadapter',
111 )
112endif
Dylan Baker42ea0632017-12-08 15:26:00 -0800113
Alexander von Gluck IV834d2212018-02-16 16:56:31 -0600114if with_platform_haiku
115 install_headers(
116 'HaikuGL/GLRenderer.h', 'HaikuGL/GLView.h', 'HaikuGL/OpenGLKit.h',
117 subdir : 'opengl',
118 )
119endif
120
Dylan Baker42ea0632017-12-08 15:26:00 -0800121# Only install the headers if we are building a stand alone implementation and
122# not an ICD enabled implementation
123if with_gallium_opencl and not with_opencl_icd
124 install_headers(
125 'CL/cl.h',
126 'CL/cl.hpp',
Pierre Moreaudddc5642018-01-28 11:38:46 +0100127 'CL/cl2.hpp',
Dylan Baker42ea0632017-12-08 15:26:00 -0800128 'CL/cl_d3d10.h',
129 'CL/cl_d3d11.h',
130 'CL/cl_dx9_media_sharing.h',
Pierre Moreaudddc5642018-01-28 11:38:46 +0100131 'CL/cl_dx9_media_sharing_intel.h',
Dylan Baker42ea0632017-12-08 15:26:00 -0800132 'CL/cl_egl.h',
133 'CL/cl_ext.h',
Pierre Moreaudddc5642018-01-28 11:38:46 +0100134 'CL/cl_ext_intel.h',
Dylan Baker42ea0632017-12-08 15:26:00 -0800135 'CL/cl_gl.h',
136 'CL/cl_gl_ext.h',
Pierre Moreaucd1c6612019-12-17 17:23:43 +0100137 'CL/cl_icd.h',
Dylan Baker42ea0632017-12-08 15:26:00 -0800138 'CL/cl_platform.h',
Pierre Moreaudddc5642018-01-28 11:38:46 +0100139 'CL/cl_va_api_media_sharing_intel.h',
140 'CL/cl_version.h',
Dylan Baker42ea0632017-12-08 15:26:00 -0800141 'CL/opencl.h',
142 subdir: 'CL'
143 )
144endif
Dylan Bakere2319202018-03-02 10:28:11 -0800145
146if with_intel_vk
147 install_headers('vulkan/vulkan_intel.h', subdir : 'vulkan')
148endif