]> git.pld-linux.org Git - packages/libglvnd.git/blob - libglvnd.spec
up to 1.3.4
[packages/libglvnd.git] / libglvnd.spec
1 #
2 # Conditional build:
3 %bcond_with     default_gl      # build dispatcher as default libGL/libGLX/libGLESv1_CM/libGLESv2 provider
4 #
5 Summary:        Vendor-neutral OpenGL dispatch library
6 Summary(pl.UTF-8):      Niezależna od producenta biblioteka przekazująca wywołania OpenGL
7 Name:           libglvnd
8 Version:        1.3.4
9 Release:        1
10 License:        MIT-like
11 Group:          Libraries
12 #Source0Download: https://github.com/NVIDIA/libglvnd/releases
13 Source0:        https://github.com/NVIDIA/libglvnd/archive/v%{version}/%{name}-%{version}.tar.gz
14 # Source0-md5:  765ce77bfe2e3ad182f7bc06cce4b83a
15 URL:            https://github.com/NVIDIA/libglvnd
16 BuildRequires:  meson >= 0.48
17 BuildRequires:  ninja >= 1.5
18 BuildRequires:  pkgconfig
19 BuildRequires:  python3 >= 1:3.5
20 BuildRequires:  python3-modules >= 1:3.5
21 BuildRequires:  rpmbuild(macros) >= 1.736
22 BuildRequires:  xorg-lib-libX11-devel
23 BuildRequires:  xorg-lib-libXext-devel
24 BuildRequires:  xorg-proto-glproto-devel
25 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
26
27 %if %{with default_gl}
28 %define         gl_incdir       %{_includedir}
29 %define         gl_libdir       %{_libdir}
30 %define         gl_pcdir        %{_pkgconfigdir}
31 %define         solink          %ghost
32 %else
33 %define         gl_incdir       %{_includedir}/%{name}
34 %define         gl_libdir       %{_libdir}/%{name}
35 %define         gl_pcdir        %{_libdir}/%{name}/pkgconfig
36 %define         solink          %{nil}
37 %define         noautoprov_files        %{_libdir}/%{name}
38 %endif
39 # _glapi_tls_Current symbol
40 %define         skip_post_check_so      libOpenGL.so.* libGL.so.* libGLESv1_CM.so.* libGLESv2.so.*
41
42 %description
43 This is a work-in-progress implementation of the vendor-neutral
44 dispatch layer for arbitrating OpenGL API calls between multiple
45 vendors on a per-screen basis, as described by Andy Ritger's OpenGL
46 ABI proposal:
47 <https://github.com/aritger/linux-opengl-abi-proposal/blob/master/linux-opengl-abi-proposal.txt>.
48
49 Currently, only the GLX window-system API and OpenGL are supported,
50 but in the future this library may support EGL and OpenGL ES as well.
51
52 %description -l pl.UTF-8
53 Ten pakiet to (będąca w trakcie tworzenia) implementacja warstwy
54 przekazującej wywołania dowolnych wywołań API OpenGL między różnymi
55 producentami w zależności od ekranu, zgodnie z propozycją opisaną
56 przez Andy Ritgera:
57 <https://github.com/aritger/linux-opengl-abi-proposal/blob/master/linux-opengl-abi-proposal.txt>.
58
59 Obecnie obsługiwane jest tylko API systemu okienek GLX oraz OpenGL, w
60 przyszłości biblioteka może obsługiwać także EGL i OpenGL ES.
61
62 %package devel
63 Summary:        Header files for libglvnd interface
64 Summary(pl.UTF-8):      Pliki nagłówkowe interfejsu libglvnd
65 Group:          Development/Libraries
66 Requires:       %{name} = %{version}-%{release}
67 # <GL/gl.h>
68 Requires:       OpenGL-devel
69 # <GL/glx.h>
70 Requires:       OpenGL-GLX-devel
71
72 %description devel
73 Header files for libglvnd interface.
74
75 %description devel -l pl.UTF-8
76 Pliki nagłówkowe interfejsu libglvnd.
77
78 %package khrplatform-devel
79 Summary:        Khronos platform header file
80 Summary(pl.UTF-8):      Plik nagłówkowy platformy Khronos
81 Group:          Development/Libraries
82 %if %{with default_gl}
83 Provides:       khrplatform-devel
84 %endif
85
86 %description khrplatform-devel
87 Khronos platform header file.
88
89 %description khrplatform-devel -l pl.UTF-8
90 Plik nagłówkowy platformy Khronos.
91
92 %package libEGL
93 Summary:        EGL interface glvnd libraries
94 Summary(pl.UTF-8):      Biblioteki glvnd interfejsu EGL
95 Group:          Libraries
96 Requires:       %{name} = %{version}-%{release}
97
98 %description libEGL
99 EGL interface glvnd libraries.
100
101 %description libEGL -l pl.UTF-8
102 Biblioteki glvnd interfejsu EGL.
103
104 %package libEGL-devel
105 Summary:        Development files for glvnd EGL interface
106 Summary(pl.UTF-8):      Pliki programistyczne glvnd interfejsu EGL
107 Group:          Development/Libraries
108 Requires:       %{name}-libEGL = %{version}-%{release}
109 Requires:       %{name}-khrplatform-devel = %{version}-%{release}
110 %{?with_default_gl:Provides:    EGL-devel = 1.5}
111
112 %description libEGL-devel
113 Development files for glvnd EGL interface.
114
115 %description libEGL-devel -l pl.UTF-8
116 Pliki programistyczne glvnd interfejsu EGL.
117
118 %package libGL
119 Summary:        OpenGL 4.x interface glvnd libraries
120 Summary(pl.UTF-8):      Biblioteki glvnd interfejsu OpenGL 4.x
121 Group:          Libraries
122 Requires:       %{name} = %{version}-%{release}
123
124 %description libGL
125 OpenGL 4.x interface glvnd libraries.
126
127 %description libGL -l pl.UTF-8
128 Biblioteki glvnd interfejsu OpenGL 4.x.
129
130 %package libGL-devel
131 Summary:        Development files for glvnd OpenGL 4.x interface
132 Summary(pl.UTF-8):      Pliki programistyczne glvnd interfejsu OpenGL 4.x
133 Group:          Development/Libraries
134 Requires:       %{name}-khrplatform-devel = %{version}-%{release}
135 Requires:       %{name}-libGL = %{version}-%{release}
136 %if %{with default_gl}
137 Provides:       OpenGL-devel = 4.6
138 Provides:       OpenGL-GLX-devel = 1.4
139 %endif
140
141 %description libGL-devel
142 Development files for glvnd OpenGL 4.x interface.
143
144 %description libGL-devel -l pl.UTF-8
145 Pliki programistyczne glvnd interfejsu OpenGL 4.x.
146
147 %package libGLES
148 Summary:        OpenGL ES 1, 2, 3 interface glvnd libraries
149 Summary(pl.UTF-8):      Biblioteki glvnd interfejsów OpenGL ES 1, 2, 3
150 Group:          Libraries
151 Requires:       %{name} = %{version}-%{release}
152
153 %description libGLES
154 OpenGL ES 1, 2, 3 interface glvnd libraries.
155
156 %description libGLES -l pl.UTF-8
157 Biblioteki glvnd interfejsów OpenGL ES 1, 2, 3.
158
159 %package libGLES-devel
160 Summary:        Development files for glvnd OpenGL ES 1, 2, 3 interfaces
161 Summary(pl.UTF-8):      Pliki programistyczne glvnd interfejsów OpenGL ES 1, 2, 3
162 Group:          Development/Libraries
163 Requires:       %{name}-khrplatform-devel = %{version}-%{release}
164 Requires:       %{name}-libGLES = %{version}-%{release}
165 %if %{with default_gl}
166 Provides:       OpenGLES-devel = 3.2
167 Provides:       OpenGLESv1-devel = 1.1
168 Provides:       OpenGLESv2-devel = 2.0
169 Provides:       OpenGLESv3-devel = 3.2
170 %endif
171
172 %description libGLES-devel
173 Development files for glvnd OpenGL ES 1, 2, 3 interfaces.
174
175 %description libGLES-devel -l pl.UTF-8
176 Pliki programistyczne glvnd interfejsów OpenGL ES 1, 2, 3.
177
178 %prep
179 %setup -q
180
181 %build
182 %meson build
183 %ninja_build -C build
184
185 %install
186 rm -rf $RPM_BUILD_ROOT
187
188 %ninja_install -C build
189
190 %if %{without default_gl}
191 install -d $RPM_BUILD_ROOT{%{gl_libdir},%{gl_incdir},%{gl_pcdir}}
192 %{__mv} $RPM_BUILD_ROOT%{_libdir}/lib{EGL,GL,GLESv1_CM,GLESv2}.* $RPM_BUILD_ROOT%{gl_libdir}
193 %{__mv} $RPM_BUILD_ROOT%{_includedir}/{EGL,GL,GLES,GLES2,GLES3,KHR} $RPM_BUILD_ROOT%{gl_incdir}
194 %{__mv} $RPM_BUILD_ROOT%{_pkgconfigdir}/{egl,gl,glesv1_cm,glesv2}.pc $RPM_BUILD_ROOT%{gl_pcdir}
195 %endif
196
197 install -d $RPM_BUILD_ROOT%{_datadir}/glvnd/egl_vendor.d
198
199 %clean
200 rm -rf $RPM_BUILD_ROOT
201
202 %post   -p /sbin/ldconfig
203 %postun -p /sbin/ldconfig
204
205 %if %{with default_gl}
206 %post   libEGL -p /sbin/ldconfig
207 %postun libEGL -p /sbin/ldconfig
208
209 %post   libGL -p /sbin/ldconfig
210 %postun libGL -p /sbin/ldconfig
211
212 %post   libGLES -p /sbin/ldconfig
213 %postun libGLES -p /sbin/ldconfig
214 %endif
215
216 %files
217 %defattr(644,root,root,755)
218 %doc README.md
219 %attr(755,root,root) %{_libdir}/libGLdispatch.so.*.*.*
220 %attr(755,root,root) %ghost %{_libdir}/libGLdispatch.so.0
221 %if %{without default_gl}
222 %dir %{gl_libdir}
223 %endif
224 %dir %{_datadir}/glvnd
225
226 %files devel
227 %defattr(644,root,root,755)
228 %attr(755,root,root) %{_libdir}/libGLdispatch.so
229 %{_includedir}/glvnd
230 %{_pkgconfigdir}/libglvnd.pc
231
232 %files khrplatform-devel
233 %defattr(644,root,root,755)
234 %if %{without default_gl}
235 %dir %{gl_incdir}
236 %dir %{gl_pcdir}
237 %endif
238 %{gl_incdir}/KHR
239
240 %files libEGL
241 %defattr(644,root,root,755)
242 %attr(755,root,root) %{gl_libdir}/libEGL.so.*.*.*
243 %attr(755,root,root) %solink %{gl_libdir}/libEGL.so.1
244 %dir %{_datadir}/glvnd/egl_vendor.d
245
246 %files libEGL-devel
247 %defattr(644,root,root,755)
248 %attr(755,root,root) %{gl_libdir}/libEGL.so
249 %{gl_incdir}/EGL
250 %{gl_pcdir}/egl.pc
251
252 %files libGL
253 %defattr(644,root,root,755)
254 %attr(755,root,root) %{gl_libdir}/libGL.so.*.*.*
255 %attr(755,root,root) %solink %{gl_libdir}/libGL.so.1
256 %attr(755,root,root) %{gl_libdir}/libGL.so
257
258 %attr(755,root,root) %{_libdir}/libGLX.so.*.*.*
259 %attr(755,root,root) %ghost %{_libdir}/libGLX.so.0
260
261 %attr(755,root,root) %{_libdir}/libOpenGL.so.*.*.*
262 %attr(755,root,root) %ghost %{_libdir}/libOpenGL.so.0
263
264 %files libGL-devel
265 %defattr(644,root,root,755)
266 %attr(755,root,root) %{_libdir}/libGLX.so
267 %attr(755,root,root) %{_libdir}/libOpenGL.so
268 %{gl_incdir}/GL
269 %{gl_pcdir}/gl.pc
270 %{_pkgconfigdir}/glx.pc
271 %{_pkgconfigdir}/opengl.pc
272
273 %files libGLES
274 %defattr(644,root,root,755)
275 %attr(755,root,root) %{gl_libdir}/libGLESv1_CM.so.*.*.*
276 %attr(755,root,root) %solink %{gl_libdir}/libGLESv1_CM.so.1
277 %attr(755,root,root) %{gl_libdir}/libGLESv2.so.*.*.*
278 %attr(755,root,root) %solink %{gl_libdir}/libGLESv2.so.2
279
280 %files libGLES-devel
281 %defattr(644,root,root,755)
282 %attr(755,root,root) %{gl_libdir}/libGLESv1_CM.so
283 %attr(755,root,root) %{gl_libdir}/libGLESv2.so
284 %{gl_incdir}/GLES
285 %{gl_incdir}/GLES2
286 %{gl_incdir}/GLES3
287 %{gl_pcdir}/glesv1_cm.pc
288 %{gl_pcdir}/glesv2.pc
This page took 0.075667 seconds and 3 git commands to generate.