|
%if "%distro_section" == "tainted" |
|
|
%global build_plf 1 |
|
|
%else |
|
|
%global build_plf 0 |
|
|
%endif |
|
|
|
|
1 |
# (cg) Cheater... |
# (cg) Cheater... |
2 |
%define Werror_cflags %nil |
%define Werror_cflags %nil |
3 |
|
|
6 |
|
|
7 |
# https://cgit.freedesktop.org/mesa/mesa/commit/?h=13.0&id=3bb0415ab96f74183f7aa58c1a543448653ccb3e |
# https://cgit.freedesktop.org/mesa/mesa/commit/?h=13.0&id=3bb0415ab96f74183f7aa58c1a543448653ccb3e |
8 |
%define git 0 |
%define git 0 |
9 |
%define git_branch 17.1 |
%define git_branch 18.0 |
10 |
|
|
11 |
%define opengl_ver 4.5 |
%define opengl_ver 4.5 |
12 |
|
|
13 |
# define version, RC & release |
# define version, RC & release |
14 |
%define main_version 17.2.3 |
%define main_version 18.3.1 |
15 |
#define relc 5 |
#define relc 1 |
16 |
%define rel 1 |
%define rel 3 |
17 |
|
|
18 |
%define release %mkrel %{?relc:0.rc%{relc}.}%{rel} |
%define release %mkrel %{?relc:0.rc%{relc}.}%{rel} |
19 |
|
|
37 |
%define gbmname gbm |
%define gbmname gbm |
38 |
%define waylandeglname wayland-egl |
%define waylandeglname wayland-egl |
39 |
%define xaname xatracker |
%define xaname xatracker |
40 |
%define vulkanname vulkan |
%define vulkanname mesavulkan |
41 |
|
|
42 |
%define d3dmajor 1 |
%define d3dmajor 1 |
43 |
%define eglmajor 1 |
%define eglmajor 1 |
62 |
%define libwaylandeglname %mklibname %{waylandeglname} %{waylandeglmajor} |
%define libwaylandeglname %mklibname %{waylandeglname} %{waylandeglmajor} |
63 |
%define libosmesaname %mklibname osmesa %{osmesamajor} |
%define libosmesaname %mklibname osmesa %{osmesamajor} |
64 |
%define libxaname %mklibname %{xaname} %{xamajor} |
%define libxaname %mklibname %{xaname} %{xamajor} |
|
%define libvulkanname %mklibname %{vulkanname} |
|
65 |
|
|
66 |
%define dridrivers %mklibname dri-drivers |
%define dridrivers %mklibname dri-drivers |
67 |
|
|
68 |
|
%define vulkandrivers %mklibname %{vulkanname}-drivers |
69 |
|
%define vulkandevel %mklibname %{vulkanname} -d |
70 |
|
|
71 |
|
%define khrdevel %mklibname mesakhr -d |
72 |
%define osmesadevel %mklibname osmesa -d |
%define osmesadevel %mklibname osmesa -d |
73 |
|
|
74 |
# Architecture-independent Virtual provides: |
# Architecture-independent Virtual provides: |
83 |
%define libwaylandeglname_virt lib%{waylandeglname} |
%define libwaylandeglname_virt lib%{waylandeglname} |
84 |
%define libxaname_virt lib%{xaname} |
%define libxaname_virt lib%{xaname} |
85 |
|
|
|
%define oldlibglname %mklibname MesaGL 1 |
|
|
|
|
86 |
%define mesasrcdir %{_prefix}/src/Mesa/ |
%define mesasrcdir %{_prefix}/src/Mesa/ |
87 |
|
|
88 |
# (akien) Not adding on arm as it would break the build there |
%define with_vaapi 1 |
89 |
%define enable_vulkan 0 |
|
90 |
%ifarch %{ix86} x86_64 |
%ifarch %{ix86} x86_64 |
91 |
%define enable_vulkan 1 |
%define vulkan_drivers --with-vulkan-drivers=intel,radeon |
92 |
|
%else |
93 |
|
%define vulkan_drivers --with-vulkan-drivers=radeon |
94 |
|
%endif |
95 |
|
|
96 |
|
|
97 |
|
%ifarch %{arm} aarch64 |
98 |
|
%define with_etnaviv 1 |
99 |
|
%define with_freedreno 1 |
100 |
|
%define with_vc4 1 |
101 |
%endif |
%endif |
102 |
|
|
103 |
%define base_drivers swrast,nouveau,radeon,r200 |
%define base_drivers swrast,nouveau,radeon,r200 |
104 |
%ifarch %{ix86} x86_64 |
%ifarch %{ix86} x86_64 |
105 |
%define platform_drivers ,i915,i965 |
%define platform_drivers ,i915,i965 |
106 |
|
%define gallium_platform_drivers ,svga |
107 |
%endif |
%endif |
108 |
|
|
109 |
|
%define with_wayland_egl 0 |
110 |
|
|
111 |
%define dri_drivers --with-dri-drivers=%{?base_drivers}%{?platform_drivers} |
%define dri_drivers --with-dri-drivers=%{?base_drivers}%{?platform_drivers} |
112 |
|
|
113 |
Name: mesa |
Name: mesa |
128 |
BuildRequires: pkgconfig(expat) >= 2.0.1 |
BuildRequires: pkgconfig(expat) >= 2.0.1 |
129 |
BuildRequires: gccmakedep |
BuildRequires: gccmakedep |
130 |
BuildRequires: x11-proto-devel >= 7.3 |
BuildRequires: x11-proto-devel >= 7.3 |
131 |
BuildRequires: pkgconfig(libdrm) >= 2.4.60 |
BuildRequires: pkgconfig(libdrm) >= 2.4.91 |
132 |
BuildRequires: pkgconfig(xcb-dri3) |
BuildRequires: pkgconfig(xcb-dri3) |
133 |
BuildRequires: pkgconfig(xcb-present) >= 1.11 |
BuildRequires: pkgconfig(xcb-present) >= 1.11 |
134 |
BuildRequires: pkgconfig(xext) >= 1.1.1 |
BuildRequires: pkgconfig(xext) >= 1.1.1 |
135 |
BuildRequires: pkgconfig(xxf86vm) >= 1.1.0 |
BuildRequires: pkgconfig(xxf86vm) >= 1.1.0 |
136 |
BuildRequires: pkgconfig(xi) >= 1.3 |
BuildRequires: pkgconfig(xi) >= 1.3 |
137 |
|
BuildRequires: pkgconfig(xrandr) |
138 |
BuildRequires: pkgconfig(talloc) |
BuildRequires: pkgconfig(talloc) |
139 |
BuildRequires: libxml2-python |
BuildRequires: python2-libxml2 |
140 |
BuildRequires: python-mako |
BuildRequires: python2-mako |
141 |
|
BuildRequires: python3-libxml2 |
142 |
|
BuildRequires: python3-mako |
143 |
BuildRequires: makedepend |
BuildRequires: makedepend |
144 |
BuildRequires: bison |
BuildRequires: bison |
145 |
BuildRequires: flex |
BuildRequires: flex |
146 |
BuildRequires: pkgconfig(libelf) |
BuildRequires: pkgconfig(libelf) |
147 |
BuildRequires: llvm-devel >= 3.9.1-5 |
BuildRequires: llvm-devel >= 3.9.1-5 |
148 |
BuildRequires: pkgconfig(libudev) |
BuildRequires: pkgconfig(libudev) |
149 |
|
%if 0%{?with_vaapi} |
150 |
BuildRequires: pkgconfig(libva) |
BuildRequires: pkgconfig(libva) |
151 |
|
%endif |
152 |
BuildRequires: pkgconfig(vdpau) |
BuildRequires: pkgconfig(vdpau) |
153 |
BuildRequires: wayland-devel |
BuildRequires: pkgconfig(wayland-client) |
154 |
%if %{enable_vulkan} |
BuildRequires: pkgconfig(wayland-server) |
155 |
|
BuildRequires: pkgconfig(wayland-protocols) |
156 |
BuildRequires: libgcrypt-devel |
BuildRequires: libgcrypt-devel |
|
%endif |
|
157 |
BuildRequires: pkgconfig(wayland-protocols) >= 1.8 |
BuildRequires: pkgconfig(wayland-protocols) >= 1.8 |
158 |
|
|
159 |
URL: http://www.mesa3d.org |
URL: http://www.mesa3d.org |
166 |
%endif |
%endif |
167 |
Source3: make-git-snapshot.sh |
Source3: make-git-snapshot.sh |
168 |
|
|
169 |
# Instructions to setup your repository clone |
Patch000: fix-linking.patch |
|
# git://git.freedesktop.org/git/mesa/mesa |
|
|
# git checkout mesa_7_5_branch |
|
|
# git branch mdv-cherry-picks |
|
|
# git am ../02??-*.patch |
|
|
# git branch mdv-redhat |
|
|
# git am ../03??-*.patch |
|
|
# git branch mdv-patches |
|
|
# git am ../09??-*.patch |
|
|
# In order to update to the branch via patches, issue this command: |
|
|
# git format-patch --start-number 100 mesa_7_5_1..mesa_7_5_branch | sed 's/^0\([0-9]\+\)-/Patch\1: 0\1-/' |
|
|
|
|
|
# Cherry picks |
|
|
# git format-patch --start-number 200 mesa_7_5_branch..mdv-cherry-picks |
|
|
|
|
|
# Patches "liberated" from Fedora: |
|
|
# http://pkgs.fedoraproject.org/cgit/rpms/mesa.git/ |
|
|
# git format-patch --start-number 300 mdv-cherry-picks..mdv-redhat |
|
170 |
|
|
171 |
# Patches from ChromiumOS |
# mesa staging/18.3 branch from 1 |
172 |
# http://git.chromium.org/gitweb/?p=chromiumos/overlays/chromiumos-overlay.git;a=tree;f=media-libs/mesa/files;hb=HEAD |
Patch001: 0001-docs-add-sha256-checksums-for-18.3.1.patch |
173 |
|
#Patch002: 0002-bin-get-pick-list.sh-rework-handing-of-sha-nominatio.patch |
174 |
|
#Patch003: 0003-bin-get-pick-list.sh-warn-when-commit-lists-invalid-.patch |
175 |
|
Patch004: 0004-freedreno-drm-fix-memory-leak.patch |
176 |
|
Patch005: 0005-v3d-Fix-a-leak-of-the-transfer-helper-on-screen-dest.patch |
177 |
|
Patch006: 0006-vc4-Fix-a-leak-of-the-transfer-helper-on-screen-dest.patch |
178 |
|
Patch007: 0007-v3d-Fix-a-leak-of-the-disassembled-instruction-strin.patch |
179 |
|
Patch008: 0008-loader-free-error-state-when-checking-the-drawable-t.patch |
180 |
|
Patch009: 0009-mesa-st-nir-fix-missing-nir_compact_varyings.patch |
181 |
|
#Patch010: 0010-cherry-ignore-meson-libfreedreno-depends-upon-libdrm.patch |
182 |
|
Patch011: 0011-radv-switch-on-EOP-when-primitive-restart-is-enabled.patch |
183 |
|
Patch012: 0012-virgl-wrap-vertex-element-state-in-a-struct.patch |
184 |
|
Patch013: 0013-virgl-work-around-bad-assumptions-in-virglrenderer.patch |
185 |
|
Patch014: 0014-glx-mandate-xf86vidmode-only-for-drm-dri-platforms.patch |
186 |
|
Patch015: 0015-radv-xfb-fix-counter-buffer-bounds-checks.patch |
187 |
|
Patch016: 0016-pci_ids-add-new-vega10-pci-ids.patch |
188 |
|
Patch017: 0017-pci_ids-add-new-vega20-pci-id.patch |
189 |
|
Patch018: 0018-v3d-Make-sure-that-a-thrsw-doesn-t-split-a-multop-fr.patch |
190 |
|
Patch019: 0019-v3d-Add-missing-flagging-of-SYNCB-as-a-TSY-op.patch |
191 |
|
Patch020: 0020-clover-Fix-build-after-clang-r348827.patch |
192 |
|
Patch021: 0021-nir-constant_folding-Fix-source-bit-size-logic.patch |
193 |
|
Patch022: 0022-radv-don-t-set-surf_index-for-stencil-only-images.patch |
194 |
|
Patch023: 0023-i965-vec4-dce-Don-t-narrow-the-write-mask-if-the-fla.patch |
195 |
|
Patch024: 0024-meson-Fix-ppc64-little-endian-detection.patch |
196 |
|
Patch025: 0025-meson-Add-support-for-gnu-hurd.patch |
197 |
|
Patch026: 0026-meson-Add-toggle-for-glx-direct.patch |
198 |
|
Patch027: 0027-Revert-nir-lower_indirect-Bail-early-if-modes-0.patch |
199 |
|
Patch028: 0028-meson-Fix-typo.patch |
200 |
|
Patch029: 0029-meson-Fix-libsensors-detection.patch |
201 |
|
Patch030: 0030-nir-properly-clear-the-entry-sources-in-copy_prop_va.patch |
202 |
|
Patch031: 0031-nir-properly-find-the-entry-to-keep-in-copy_prop_var.patch |
203 |
|
Patch032: 0032-meson-don-t-require-glx-egl-gbm-with-gallium-drivers.patch |
204 |
|
Patch033: 0033-pipe-loader-meson-reference-correct-library.patch |
205 |
|
Patch034: 0034-TODO-glx-meson-build-dri-based-glx-tests-only-with-D.patch |
206 |
|
Patch035: 0035-glx-meson-drop-includes-from-a-link-only-library.patch |
207 |
|
Patch036: 0036-glx-meson-wire-up-the-dispatch-index-check-test.patch |
208 |
|
Patch037: 0037-glx-test-meson-assorted-include-fixes.patch |
209 |
|
Patch038: 0038-pci_ids-add-new-VegaM-pci-id.patch |
210 |
|
Patch039: 0039-st-nine-Fix-volumetexture-dtor-on-ctor-failure.patch |
211 |
|
Patch040: 0040-st-nine-Bind-src-not-dst-in-nine_context_box_upload.patch |
212 |
|
Patch041: 0041-st-nine-Add-src-reference-to-nine_context_range_uplo.patch |
213 |
|
Patch042: 0042-anv-don-t-do-partial-resolve-on-layer-0.patch |
214 |
|
Patch043: 0043-gallium-ttn-Fix-setup-of-outputs_written.patch |
215 |
|
Patch044: 0044-virgl-vtest-fix-front-buffer-flush-with-protocol-ver.patch |
216 |
|
Patch045: 0045-meson-Override-C-standard-to-gnu-11-when-building-wi.patch |
217 |
|
Patch046: 0046-radv-Do-a-cache-flush-if-needed-before-reading-predi.patch |
218 |
|
Patch047: 0047-tgsi-scan-fix-loop-exit-point-in-tgsi_scan_tess_ctrl.patch |
219 |
|
Patch048: 0048-tgsi-scan-correctly-walk-instructions-in-tgsi_scan_t.patch |
220 |
|
Patch049: 0049-egl-haiku-Fix-reference-to-disp-vs-dpy.patch |
221 |
|
Patch050: 0050-meson-Error-out-if-building-nouveau-and-using-LLVM-w.patch |
222 |
|
Patch051: 0051-i965-include-draw_params-derived_draw_params-for-VF-.patch |
223 |
|
Patch052: 0052-i965-add-CS-stall-on-VF-invalidation-workaround.patch |
224 |
|
Patch053: 0053-nir-remove-dead-code-from-copy_prop_vars.patch |
225 |
|
Patch054: 0054-intel-blorp-Be-more-conservative-about-copying-clear.patch |
226 |
|
Patch055: 0055-radv-Implement-buffer-stores-with-less-than-4-compon.patch |
227 |
|
Patch056: 0056-anv-android-Do-not-reject-storage-images.patch |
228 |
|
Patch057: 0057-glsl-correct-typo-in-GLSL-compilation-error-message.patch |
229 |
|
Patch058: 0058-radv-Fix-rasterization-precision-bits.patch |
230 |
|
Patch059: 0059-spirv-Fix-matrix-parameters-in-function-calls.patch |
231 |
|
Patch060: 0060-spirv-Handle-any-bit-size-in-vector_insert-extract.patch |
232 |
|
Patch061: 0061-anv-apply_pipeline_layout-Set-the-cursor-in-lower_re.patch |
233 |
|
Patch062: 0062-spirv-Sign-extend-array-indices.patch |
234 |
|
Patch063: 0063-anv-explictly-specify-format-for-blorp-ccs-mcs-op.patch |
235 |
|
Patch064: 0064-anv-flush-fast-clear-colors-into-compressed-surfaces.patch |
236 |
|
Patch065: 0065-autotools-Remove-tegra-vdpau-driver.patch |
237 |
|
Patch066: 0066-ac-nir-radv-radeonsi-nir-use-correct-indices-for-int.patch |
238 |
|
Patch067: 0067-radeonsi-Fix-use-of-1-or-2-component-GL_DOUBLE-vbo-s.patch |
239 |
|
Patch068: 0068-st-mesa-don-t-leak-pipe_surface-if-pipe_context-is-n.patch |
240 |
|
Patch069: 0069-intel-fs-Handle-source-modifiers-in-lower_integer_mu.patch |
241 |
|
Patch070: 0070-intel-fs-Implement-quad-swizzles-on-ICL.patch |
242 |
|
Patch071: 0071-intel-fs-Fix-bug-in-lower_simd_width-while-splitting.patch |
243 |
|
Patch072: 0072-intel-eu-gen7-Fix-brw_MOV-with-DF-destination-and-st.patch |
244 |
|
Patch073: 0073-intel-fs-Respect-CHV-BXT-regioning-restrictions-in-c.patch |
245 |
|
Patch074: 0074-glsl-linker-specify-proper-direction-in-location-ali.patch |
246 |
|
Patch075: 0075-intel-peephole_ffma-Fix-swizzle-propagation.patch |
247 |
|
Patch076: 0076-nv50-ir-fix-use-after-free-in-ConstantFolding-visit.patch |
248 |
|
Patch077: 0077-meson-link-LLVM-native-component-when-LLVM-is-availa.patch |
249 |
|
Patch078: 0078-ac-split-16-bit-ssbo-loads-that-may-not-be-dword-ali.patch |
250 |
|
|
251 |
# Mageia/Mandriva patches |
# mesa master branch from 201 |
|
# git format-patch --start-number 900 mdv-redhat..mdv-patches |
|
252 |
|
|
253 |
#------------------------------------------------------------------------------ |
#------------------------------------------------------------------------------ |
254 |
|
|
263 |
%package -n %{libglname} |
%package -n %{libglname} |
264 |
Summary: Files for Mesa (GL and GLX libs) |
Summary: Files for Mesa (GL and GLX libs) |
265 |
Group: System/Libraries |
Group: System/Libraries |
|
Obsoletes: %{oldlibglname} < 6.4 |
|
|
Provides: %{oldlibglname} = %{version}-%{release} |
|
266 |
Provides: %{libglname_virt} = %{version}-%{release} |
Provides: %{libglname_virt} = %{version}-%{release} |
267 |
Requires: %{dridrivers} >= %{version}-%{release} |
Requires: %{dridrivers} >= %{version}-%{release} |
|
%if %{build_plf} |
|
|
Requires: %mklibname txc-dxtn |
|
|
%endif |
|
268 |
|
|
269 |
# (anssi) Forces the upgrade of x11-server-common to happen before |
# (anssi) Forces the upgrade of x11-server-common to happen before |
270 |
# alternatives removal, which allows x11-server-common to grab the symlink. |
# alternatives removal, which allows x11-server-common to grab the symlink. |
297 |
Summary: Development files for Mesa (OpenGL compatible 3D lib) |
Summary: Development files for Mesa (OpenGL compatible 3D lib) |
298 |
Group: Development/C |
Group: Development/C |
299 |
Requires: %{libglname} = %{version}-%{release} |
Requires: %{libglname} = %{version}-%{release} |
300 |
|
Requires: %{khrdevel} = %{version}-%{release} |
301 |
Provides: lib%{glname}-devel = %{version}-%{release} |
Provides: lib%{glname}-devel = %{version}-%{release} |
302 |
Provides: %{glname}-devel = %{version}-%{release} |
Provides: %{glname}-devel = %{version}-%{release} |
303 |
Provides: GL-devel |
Provides: GL-devel |
|
Obsoletes: %{oldlibglname}-devel < 6.4 |
|
|
Provides: %{oldlibglname}-devel = %{version}-%{release} |
|
304 |
Provides: libMesaGL-devel = %{version}-%{release} |
Provides: libMesaGL-devel = %{version}-%{release} |
305 |
Provides: MesaGL-devel = %{version}-%{release} |
Provides: MesaGL-devel = %{version}-%{release} |
306 |
Provides: libgl-devel |
Provides: libgl-devel |
314 |
Summary: Development files for Mesa (EGL libs) |
Summary: Development files for Mesa (EGL libs) |
315 |
Group: Development/C |
Group: Development/C |
316 |
Requires: %{libeglname} = %{version}-%{release} |
Requires: %{libeglname} = %{version}-%{release} |
317 |
|
Requires: %{khrdevel} = %{version}-%{release} |
318 |
Provides: EGL-devel |
Provides: EGL-devel |
319 |
Provides: lib%{eglname}-devel |
Provides: lib%{eglname}-devel |
320 |
Provides: %{eglname}-devel |
Provides: %{eglname}-devel |
321 |
Provides: libegl-devel |
Provides: libegl-devel |
322 |
|
|
323 |
|
%package -n %{khrdevel} |
324 |
|
Summary: Mesa Khronos development headers |
325 |
|
Group: Development/C |
326 |
|
Provides: mesakhr-devel = %{version}-%{release} |
327 |
|
|
328 |
%package -n %{libosmesaname} |
%package -n %{libosmesaname} |
329 |
Summary: Mesa offscreen rendering library |
Summary: Mesa offscreen rendering library |
330 |
Group: System/Libraries |
Group: System/Libraries |
357 |
Summary: Development files for glesv1 libs |
Summary: Development files for glesv1 libs |
358 |
Group: Development/C |
Group: Development/C |
359 |
Requires: %{libglesv1name} = %{version}-%{release} |
Requires: %{libglesv1name} = %{version}-%{release} |
360 |
|
Requires: %{khrdevel} = %{version}-%{release} |
361 |
Provides: lib%{glesv1name}-devel |
Provides: lib%{glesv1name}-devel |
362 |
Provides: %{glesv1name}-devel |
Provides: %{glesv1name}-devel |
363 |
Provides: libglesv1-devel |
Provides: libglesv1-devel |
371 |
Summary: Development files for glesv2 libs |
Summary: Development files for glesv2 libs |
372 |
Group: Development/C |
Group: Development/C |
373 |
Requires: %{libglesv2name} = %{version}-%{release} |
Requires: %{libglesv2name} = %{version}-%{release} |
374 |
Requires: %{libeglname}-devel = %{version}-%{release} |
Requires: %{khrdevel} = %{version}-%{release} |
375 |
Provides: lib%{glesv2name}-devel |
Provides: lib%{glesv2name}-devel |
376 |
Provides: %{glesv2name}-devel |
Provides: %{glesv2name}-devel |
377 |
Provides: libglesv2-devel |
Provides: libglesv2-devel |
388 |
Provides: lib%{gbmname}-devel |
Provides: lib%{gbmname}-devel |
389 |
Provides: %{gbmname}-devel |
Provides: %{gbmname}-devel |
390 |
|
|
391 |
|
%if %{?with_wayland_egl} |
392 |
%package -n %{libwaylandeglname} |
%package -n %{libwaylandeglname} |
393 |
Summary: Files for Mesa (Wayland EGL libs) |
Summary: Files for Mesa (Wayland EGL libs) |
394 |
Group: System/Libraries |
Group: System/Libraries |
400 |
Requires: %{libwaylandeglname} = %{version}-%{release} |
Requires: %{libwaylandeglname} = %{version}-%{release} |
401 |
Provides: lib%{waylandeglname}-devel |
Provides: lib%{waylandeglname}-devel |
402 |
Provides: %{waylandeglname}-devel |
Provides: %{waylandeglname}-devel |
403 |
|
%endif |
404 |
|
|
405 |
%package -n %{_lib}vdpau-driver-nouveau |
%package -n %{_lib}vdpau-driver-nouveau |
406 |
Summary: VDPAU plugin for nouveau driver |
Summary: VDPAU plugin for nouveau driver |
438 |
Provides: lib%{xaname}-devel |
Provides: lib%{xaname}-devel |
439 |
Provides: %{libxaname}-devel |
Provides: %{libxaname}-devel |
440 |
|
|
441 |
%if %{enable_vulkan} |
%package -n %{vulkandrivers} |
442 |
%package -n %{libvulkanname}_intel |
Summary: Mesa Vulkan driver for Intel and Radeon GPUs |
|
Summary: Mesa vulkan driver for Intel GPU |
|
|
Group: System/Libraries |
|
|
|
|
|
%package -n %{libvulkanname}_radeon |
|
|
Summary: Mesa vulkan driver for Radeon GPU |
|
443 |
Group: System/Libraries |
Group: System/Libraries |
444 |
|
%ifarch %{ix86} x86_64 |
445 |
|
Obsoletes: %{_lib}vulkan_intel < 18.3.0-4 |
446 |
|
Provides: %{_lib}vulkan_intel = %{version}-%{release} |
447 |
|
%endif |
448 |
|
Obsoletes: %{_lib}vulkan_radeon < 18.3.0-4 |
449 |
|
Provides: %{_lib}vulkan_radeon = %{version}-%{release} |
450 |
|
|
451 |
%package -n %{libvulkanname}-devel |
%package -n %{vulkandevel} |
452 |
Summary: Mesa's Vulkan development files |
Summary: Mesa's Vulkan development files for Intel and Radeon drivers |
453 |
Group: Development/C |
Group: Development/C |
454 |
Requires: %{libvulkanname}_intel = %{version}-%{release} |
Requires: %{vulkandrivers} = %{version}-%{release} |
455 |
Provides: libvulkan-devel |
Obsoletes: %{_lib}vulkan-devel < 0:18.3.0-4 |
456 |
Provides: libvulkan_intel-devel |
Provides: %{vulkanname}-devel = %{version}-%{release} |
|
%endif |
|
457 |
|
|
458 |
%package common-devel |
%package common-devel |
459 |
Summary: Meta package for mesa devel |
Summary: Meta package for mesa devel |
473 |
|
|
474 |
%description |
%description |
475 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
|
%if %{build_plf} |
|
|
|
|
|
This package is in the "tainted" section because it enables some |
|
|
OpenGL extentions that are covered by software patents. |
|
|
%endif |
|
476 |
|
|
477 |
%description common-devel |
%description common-devel |
478 |
Mesa common metapackage devel |
Mesa common metapackage devel |
489 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
490 |
GL and GLX parts. |
GL and GLX parts. |
491 |
|
|
|
%if %{build_plf} |
|
|
This package is in the "tainted" section because it enables some |
|
|
OpenGL extentions that are covered by software patents. |
|
|
%endif |
|
|
|
|
492 |
%description -n %{dridrivers} |
%description -n %{dridrivers} |
493 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
494 |
DRI drivers. |
DRI drivers. |
504 |
|
|
505 |
This package provides the OpenGL ES library version 1. |
This package provides the OpenGL ES library version 1. |
506 |
|
|
507 |
|
%description -n %{khrdevel} |
508 |
|
Mesa Khronos development headers. |
509 |
|
|
510 |
%description -n %{libosmesaname} |
%description -n %{libosmesaname} |
511 |
Mesa offscreen rendering libraries for rendering OpenGL into |
Mesa offscreen rendering libraries for rendering OpenGL into |
512 |
application-allocated blocks of memory. |
application-allocated blocks of memory. |
547 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
548 |
GBM (Graphics Buffer Manager) development parts. |
GBM (Graphics Buffer Manager) development parts. |
549 |
|
|
550 |
|
%if %{?with_wayland_egl} |
551 |
%description -n %{libwaylandeglname} |
%description -n %{libwaylandeglname} |
552 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
553 |
Wayland EGL platform parts. |
Wayland EGL platform parts. |
555 |
%description -n %{libwaylandeglname}-devel |
%description -n %{libwaylandeglname}-devel |
556 |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
Mesa is an OpenGL %{opengl_ver} compatible 3D graphics library. |
557 |
Wayland EGL platform development parts. |
Wayland EGL platform development parts. |
558 |
|
%endif |
559 |
|
|
560 |
%description -n %{libxaname} |
%description -n %{libxaname} |
561 |
This packages provides the xa shared library used by gallium. |
This packages provides the xa shared library used by gallium. |
579 |
This packages provides a VPDAU plugin to enable video acceleration |
This packages provides a VPDAU plugin to enable video acceleration |
580 |
with the radeonsi driver. |
with the radeonsi driver. |
581 |
|
|
582 |
%if %{enable_vulkan} |
%description -n %{vulkandrivers} |
583 |
%description -n %{libvulkanname}_intel |
This package contains the Vulkan parts for Mesa's Intel and Radeon drivers. |
|
This package contains the Vulkan parts for Mesa's Intel driver. |
|
|
|
|
|
%description -n %{libvulkanname}_radeon |
|
|
This package contains the Vulkan parts for Mesa's Radeon driver. |
|
584 |
|
|
585 |
%description -n %{libvulkanname}-devel |
%description -n %{vulkandevel} |
586 |
This package contains the development files for Mesa's Vulkan implementation. |
This package contains the development files for Mesa's Vulkan implementation. |
|
%endif |
|
587 |
|
|
588 |
#------------------------------------------------------------------------------ |
#------------------------------------------------------------------------------ |
589 |
|
|
598 |
automake --add-missing |
automake --add-missing |
599 |
|
|
600 |
%configure2_5x \ |
%configure2_5x \ |
|
%if %{enable_vulkan} |
|
|
--with-vulkan-drivers=intel,radeon \ |
|
|
%endif |
|
601 |
--enable-gallium-osmesa \ |
--enable-gallium-osmesa \ |
602 |
--with-dri-driverdir=%{_libdir}/dri \ |
--with-dri-driverdir=%{_libdir}/dri \ |
603 |
--enable-egl \ |
--enable-egl \ |
605 |
--enable-gles2 \ |
--enable-gles2 \ |
606 |
--disable-xvmc \ |
--disable-xvmc \ |
607 |
--enable-vdpau \ |
--enable-vdpau \ |
608 |
--enable-va \ |
%{?with_vaapi:--enable-va} \ |
609 |
--with-platforms=x11,wayland,drm \ |
--with-platforms=x11,drm,surfaceless,wayland \ |
610 |
--enable-shared-glapi \ |
--enable-shared-glapi \ |
611 |
--enable-gbm \ |
--enable-gbm \ |
612 |
--enable-glx \ |
--enable-glx \ |
613 |
--enable-glx-tls \ |
--enable-glx-tls \ |
|
%if %{build_plf} |
|
614 |
--enable-texture-float=yes \ |
--enable-texture-float=yes \ |
|
%endif |
|
615 |
--enable-llvm \ |
--enable-llvm \ |
616 |
--enable-dri \ |
--enable-dri \ |
617 |
--enable-xa \ |
--enable-xa \ |
618 |
--enable-nine \ |
--enable-nine \ |
619 |
--with-gallium-drivers=r300,r600,radeonsi,nouveau,svga,swrast,virgl \ |
--with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast,%{?with_freedreno:freedreno,}%{?with_etnaviv:etnaviv,imx,}%{?with_vc4:vc4,}virgl%{?gallium_platform_drivers} \ |
620 |
|
%{?vulkan_drivers} \ |
621 |
%{?dri_drivers} |
%{?dri_drivers} |
622 |
# end of configure options |
# end of configure options |
623 |
|
|
648 |
# remove .la files |
# remove .la files |
649 |
find %{buildroot} -name '*.la' -delete |
find %{buildroot} -name '*.la' -delete |
650 |
|
|
651 |
|
# remove libwayland-egl on F28+ where it's built as part of wayland source package |
652 |
|
%if !%{?with_wayland_egl} |
653 |
|
rm -f %{buildroot}%{_libdir}/libwayland-egl.so* |
654 |
|
rm -f %{buildroot}%{_libdir}/pkgconfig/wayland-egl.pc |
655 |
|
%endif |
656 |
|
|
657 |
|
%ifnarch %{ix86} x86_64 |
658 |
|
# To have something to package for mesavulkan-devel on arm/aarch64 for now |
659 |
|
mkdir %{buildroot}%{_includedir}/vulkan |
660 |
|
%endif |
661 |
|
|
662 |
#------------------------------------------------------------------------------ |
#------------------------------------------------------------------------------ |
663 |
|
|
664 |
%files |
%files |
665 |
%config(noreplace) %{_sysconfdir}/drirc |
/usr/share/drirc.d/ |
666 |
|
|
667 |
%files -n %{dridrivers} |
%files -n %{dridrivers} |
668 |
%dir %{_libdir}/dri |
%dir %{_libdir}/dri |
696 |
%{_libdir}/libgbm.so.%{gbmmajor} |
%{_libdir}/libgbm.so.%{gbmmajor} |
697 |
%{_libdir}/libgbm.so.%{gbmmajor}.* |
%{_libdir}/libgbm.so.%{gbmmajor}.* |
698 |
|
|
699 |
|
%if %{?with_wayland_egl} |
700 |
%files -n %{libwaylandeglname} |
%files -n %{libwaylandeglname} |
701 |
%{_libdir}/libwayland-egl.so.%{waylandeglmajor} |
%{_libdir}/libwayland-egl.so.%{waylandeglmajor} |
702 |
%{_libdir}/libwayland-egl.so.%{waylandeglmajor}.* |
%{_libdir}/libwayland-egl.so.%{waylandeglmajor}.* |
703 |
|
%endif |
704 |
|
|
705 |
%files -n %{libxaname} |
%files -n %{libxaname} |
706 |
%{_libdir}/libxatracker.so.%{xamajor}{,.*} |
%{_libdir}/libxatracker.so.%{xamajor}{,.*} |
724 |
|
|
725 |
%files -n %{libeglname}-devel |
%files -n %{libeglname}-devel |
726 |
%{_includedir}/EGL |
%{_includedir}/EGL |
|
%{_includedir}/KHR |
|
727 |
%{_libdir}/libEGL.so |
%{_libdir}/libEGL.so |
728 |
%{_libdir}/pkgconfig/egl.pc |
%{_libdir}/pkgconfig/egl.pc |
729 |
|
|
730 |
|
%files -n %{khrdevel} |
731 |
|
%{_includedir}/KHR |
732 |
|
|
733 |
%files -n %{osmesadevel} |
%files -n %{osmesadevel} |
734 |
%dir %{_includedir}/GL |
%dir %{_includedir}/GL |
735 |
%{_includedir}/GL/osmesa.h |
%{_includedir}/GL/osmesa.h |
760 |
%{_includedir}/gbm.h |
%{_includedir}/gbm.h |
761 |
%{_libdir}/pkgconfig/gbm.pc |
%{_libdir}/pkgconfig/gbm.pc |
762 |
|
|
763 |
|
%if %{?with_wayland_egl} |
764 |
%files -n %{libwaylandeglname}-devel |
%files -n %{libwaylandeglname}-devel |
765 |
%{_libdir}/libwayland-egl.so |
%{_libdir}/libwayland-egl.so |
766 |
%{_libdir}/pkgconfig/wayland-egl.pc |
%{_libdir}/pkgconfig/wayland-egl.pc |
767 |
|
%endif |
768 |
|
|
769 |
%files -n %{libxaname}-devel |
%files -n %{libxaname}-devel |
770 |
%{_libdir}/libxatracker.so |
%{_libdir}/libxatracker.so |
785 |
%files -n %{_lib}vdpau-driver-radeonsi |
%files -n %{_lib}vdpau-driver-radeonsi |
786 |
%{_libdir}/vdpau/libvdpau_radeonsi.so.* |
%{_libdir}/vdpau/libvdpau_radeonsi.so.* |
787 |
|
|
788 |
%if %{enable_vulkan} |
%files -n %{vulkandrivers} |
|
%files -n %{libvulkanname}_intel |
|
789 |
%dir %{_datadir}/vulkan |
%dir %{_datadir}/vulkan |
790 |
%dir %{_datadir}/vulkan/icd.d |
%dir %{_datadir}/vulkan/icd.d |
791 |
|
%ifarch %{ix86} x86_64 |
792 |
%{_datadir}/vulkan/icd.d/intel_icd*.json |
%{_datadir}/vulkan/icd.d/intel_icd*.json |
|
# (akien) No lib major? |
|
793 |
%{_libdir}/libvulkan_intel.so |
%{_libdir}/libvulkan_intel.so |
794 |
|
%endif |
|
%files -n %{libvulkanname}_radeon |
|
|
%dir %{_datadir}/vulkan |
|
|
%dir %{_datadir}/vulkan/icd.d |
|
795 |
%{_datadir}/vulkan/icd.d/radeon_icd*.json |
%{_datadir}/vulkan/icd.d/radeon_icd*.json |
|
# (akien) No lib major? |
|
796 |
%{_libdir}/libvulkan_radeon.so |
%{_libdir}/libvulkan_radeon.so |
797 |
|
|
798 |
%files -n %{libvulkanname}-devel |
%files -n %{vulkandevel} |
799 |
%{_includedir}/vulkan/ |
%dir %{_includedir}/vulkan |
800 |
|
%ifarch %{ix86} x86_64 |
801 |
|
%{_includedir}/vulkan/vulkan_intel.h |
802 |
%endif |
%endif |