blob: 661542af720eb8ad44905b4f19e38255bd98bfb3 (
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
|
%if 0%{?rhel} && 0%{?rhel} <= 7
%global _wayland OFF
%else
%global _wayland ON
%endif
%global __requires_exclude ^libVkLayer_utils.so
%global srcname Vulkan-LoaderAndValidationLayers
Name: vulkan
Version: 1.0.65.1
Release: 3%{?dist}
Summary: Vulkan loader and validation layers
License: ASL 2.0
URL: https://github.com/KhronosGroup
Source0: %url/%{srcname}/archive/sdk-%{version}.tar.gz#/%{srcname}-sdk-%{version}.tar.gz
Patch0: 0003-layers-Don-t-set-an-rpath.patch
Patch1: 0008-demos-Don-t-build-tri-or-cube.patch
BuildRequires: gcc-c++
BuildRequires: bison
BuildRequires: cmake3
BuildRequires: /usr/bin/chrpath
BuildRequires: python%{python3_pkgversion}
BuildRequires: glslang-devel
BuildRequires: spirv-headers-devel
BuildRequires: spirv-tools-devel
BuildRequires: pkgconfig(libsystemd)
BuildRequires: pkgconfig(pciaccess)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcb)
BuildRequires: pkgconfig(xrandr)
%if 0%{?fedora} || 0%{?rhel} > 7
BuildRequires: pkgconfig(wayland-client)
BuildRequires: pkgconfig(wayland-cursor)
BuildRequires: pkgconfig(wayland-server)
BuildRequires: pkgconfig(wayland-egl)
Recommends: mesa-vulkan-drivers
%endif
Requires: vulkan-filesystem = %{version}-%{release}
%description
Vulkan is a new generation graphics and compute API that provides
high-efficiency, cross-platform access to modern GPUs used in a wide variety of
devices from PCs and consoles to mobile phones and embedded platforms.
This package contains the reference ICD loader and validation layers for
Vulkan.
%package demos
Summary: Vulkan demo package
Requires: %{name}%{?_isa} = %{version}-%{release}
%description demos
Vulkan demo package contains vulkaninfo and vulkan-smoketest.
%package devel
Summary: Vulkan development package
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
Development headers for Vulkan applications.
%package filesystem
Summary: Vulkan filesystem package
BuildArch: noarch
%description filesystem
Filesystem for Vulkan.
%prep
%setup -q -n %{srcname}-sdk-%{version}
%patch0 -p1
%patch1 -p1
# fix spurious-executable-perm
chmod 0644 README.md
# fix wrong-script-end-of-line-encoding
sed -i 's/\r//' README.md
# sigh inttypes
sed -i 's/inttypes.h/cinttypes/' layers/*.{cpp,h}
%build
mkdir -p build/
pushd build/
%cmake3 -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_SKIP_RPATH:BOOL=yes \
-DBUILD_VKJSON=OFF \
-DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_datadir} \
-DBUILD_WSI_MIR_SUPPORT=OFF \
-DBUILD_WSI_WAYLAND_SUPPORT=%{_wayland} ..
%make_build
popd
%install
pushd build/
%make_install
install -p -m 0755 icd/libVkICD_mock_icd.so %{buildroot}%{_libdir}/libVkICD_mock_icd.so
popd
# create the filesystem
mkdir -p %{buildroot}%{_sysconfdir}/vulkan/{explicit,implicit}_layer.d/ \
%{buildroot}%{_datadir}/vulkan/{explicit,implicit}_layer.d/ \
%{buildroot}{%{_sysconfdir},%{_datadir}}/vulkan/icd.d
# rename smoketest
mv %{buildroot}%{_bindir}/smoketest %{buildroot}%{_bindir}/vulkan-smoketest
# remove RPATH
chrpath -d %{buildroot}%{_bindir}/vulkaninfo
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%license LICENSE.txt COPYRIGHT.txt
%doc README.md CONTRIBUTING.md
%{_datadir}/vulkan/explicit_layer.d/*.json
%{_libdir}/libVkLayer_*.so
%{_libdir}/libvulkan.so.*
%files demos
%{_bindir}/vulkaninfo
%{_bindir}/vulkan-smoketest
%files devel
%{_includedir}/vulkan/
%{_libdir}/pkgconfig/vulkan.pc
%{_libdir}/libvulkan.so
%{_libdir}/libVkICD_mock_icd.so
%{_datadir}/vulkan/icd.d/VkICD_mock_icd.json
%files filesystem
%dir %{_sysconfdir}/vulkan/
%dir %{_sysconfdir}/vulkan/explicit_layer.d/
%dir %{_sysconfdir}/vulkan/icd.d/
%dir %{_sysconfdir}/vulkan/implicit_layer.d/
%dir %{_datadir}/vulkan/
%dir %{_datadir}/vulkan/explicit_layer.d/
%dir %{_datadir}/vulkan/icd.d/
%dir %{_datadir}/vulkan/implicit_layer.d/
%changelog
* Tue Jan 02 2018 Leigh Scott <leigh123linux@googlemail.com> - 1.0.65.1-3
- Add build require glslang-devel, spirv-tools-devel and spirv-headers-devel
* Tue Dec 19 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.65.1-2
- Move VkICD_mock to devel
* Tue Dec 19 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.65.1-1
- Update to 1.0.65.1
* Wed Nov 22 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-7
- Redo conditionals
* Thu Nov 16 2017 Merlin Mathesius <mmathesi@redhat.com> - 1.0.61.1-6
- Additional spec file conditional fix
* Tue Oct 31 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-5
- Add small compile fix
* Tue Oct 31 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-4
- Fix vulkan requires
- Move demos to sub-package
* Tue Oct 31 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-3
- Remove epel conditionals
- Remove vulkan git conditionals
- Use cmake macro for everything
* Fri Oct 06 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-2
- Add upstream fix for 32bit TEXTREL issue (like anyone gives a damn)
* Thu Sep 21 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.1-1
- Update to 1.0.61.1 release (rhbz 1493425)
* Tue Sep 19 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.61.0-1
- Update to 1.0.61.0 release
* Mon Aug 14 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.57.0-1
- Update to 1.0.57.0 release
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.54.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.54.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Jul 22 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.54.0-2
- Cleanup cmake commands
* Sat Jul 22 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.54.0-1
- Update to 1.0.54.0 release
- Use build requires cmake3 for epel build
- Build layers for epel
* Fri Jun 16 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.51.0-1
- Update to 1.0.51.0 release
* Mon May 15 2017 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.0.46.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_27_Mass_Rebuild
* Fri Apr 14 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.46.0-2
- Fix epel build
* Fri Apr 14 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.46.0-1
- Update to 1.0.46.0 release
* Sat Apr 01 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.42.2-1
- Update to 1.0.42.2 release
* Fri Mar 03 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.42.0-1
- Update to 1.0.42.0 release
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.0.39.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Tue Jan 31 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.39.1-1
- Update to 1.0.39.1 release
* Tue Jan 24 2017 Leigh Scott <leigh123linux@googlemail.com> - 1.0.39.0-1
- Update to 1.0.39.0 release
- Add build requires libXrandr-devel
* Fri Dec 16 2016 leigh scott <leigh123linux@googlemail.com> - 1.0.37.0-1
- Update to 1.0.37.0 release
- Disable Mir as it's lame ubuntu rubbish
* Fri Dec 02 2016 leigh scott <leigh123linux@googlemail.com> - 1.0.34.0-0.1.gitd4cd34f
- Update to latest git
* Thu Dec 01 2016 leigh scott <leigh123linux@googlemail.com> - 1.0.30.0-2
- Fix VkLayer undefined symbol: util_GetExtensionProperties
* Sat Oct 15 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.30.0-1
- Update to 1.0.30.0 release
* Mon Oct 10 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-4
- Build with wayland support (rhbz 1383115)
* Tue Sep 27 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-3
- Move unversioned libraries
- Disable vkjson build
- Fix license tag
* Sun Sep 11 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-2
- Make layers conditional.
* Sun Sep 11 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-1
- Update to 1.0.26.0 release
* Thu Sep 08 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-0.3.gitfbb8667
- Clean up
* Thu Sep 08 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-0.2.gitfbb8667
- Change build requires python3
- Use release for cmake
- Make build verbose
* Wed Sep 07 2016 Leigh Scott <leigh123linux@googlemail.com> - 1.0.26.0-0.1.gitfbb8667
- Update to latest git
* Tue Feb 16 2016 Igor Gnatenko <i.gnatenko.brain@gmail.com> - 1.0.3-0.1.git1affe90
- Add ldconfig in post/postun
- Use upstream tarball from commit + patches
- Fix versioning. In fact it was never released
- Fixup mixing of spaces/tabs
- Remove rpath from vulkaninfo
- Make filesystem subpkg noarch (it is really noarch)
- BuildRequire gcc and gcc-c++ explicitly
- Require main pkg with isa tag
- Fix perms and perm of README.md
- Use %%license tag
* Tue Feb 16 2016 Adam Jackson <ajax@redhat.com> - 1.0.3-0
- Update loader to not build cube or tri. Drop bundled LunarGLASS and llvm
since they're only needed for those demos.
* Tue Feb 16 2016 Adam Jackson <ajax@redhat.com> - 1.0.3-0
- Initial packaging
|