]> git.pld-linux.org Git - packages/vulkan-loader.git/blob - vulkan-loader.spec
nearly done…
[packages/vulkan-loader.git] / vulkan-loader.spec
1 #
2 # Conditional build:
3 %bcond_with     tests           # build with tests (doesn't work)
4 #
5 %define tag     windows-rt-%{version}
6 Summary:        Vulkan API loader
7 Name:           vulkan-loader
8 Version:        1.0.3.0
9 Release:        0.1
10 License:        MIT-like
11 Group:          Applications
12 Source0:        https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/archive/%{tag}/%{name}-%{version}.tar.gz
13 # Source0-md5:  0691d2d79cf62902df2973bbdf594028
14 Patch0:         system_glslang.patch
15 URL:            https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers
16 #BuildRequires: LunarGLASS-devel
17 BuildRequires:  cmake
18 BuildRequires:  glslang-devel
19 BuildRequires:  python3
20 BuildRequires:  python3-modules
21 BuildRequires:  spirv-tools-devel
22 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
23
24 %description
25 Common loader for Vulkan API drivers.
26
27 %package -n vulkan-layers
28 Summary:        Validation layers for Vulkan
29 Group:          Development/Libraries
30 Requires:       %{name} = %{version}-%{release}
31
32 %description -n vulkan-layers
33 Validation layers for Vulkan.
34
35 %package -n vulkan-devel
36 Summary:        Header files for the Vulkan API
37 Summary(pl.UTF-8):      Pliki nagłówkowe API Vulkan
38 Group:          Development/Libraries
39 Requires:       %{name} = %{version}-%{release}
40
41 %description -n vulkan-devel
42 Header files for the Vulkan API.
43
44 %description -n vulkan-devel -l pl.UTF-8
45 Pliki nagłówkowe API Vulkan.
46
47 %package demos
48 Summary:        Vulkan demos
49 Group:          Development/Libraries
50 Requires:       %{name} = %{version}-%{release}
51
52 %description demos
53 Vulkan demos.
54
55 %package utils
56 Summary:        Vulkan loader utilities
57 Group:          Development/Libraries
58 Requires:       %{name} = %{version}-%{release}
59
60 %description utils
61 Vulkan loader utilities.
62
63 %prep
64 %setup -qn Vulkan-LoaderAndValidationLayers-%{tag}
65 %patch0 -p1
66
67 %build
68 install -d build
69 cd build
70 %cmake \
71         %{?with_tests:-DBUILD_TESTS=ON} \
72         %{!?with_tests:-DBUILD_TESTS=OFF} \
73                 ../
74 %{__make}
75
76 %install
77 rm -rf $RPM_BUILD_ROOT
78 install -d $RPM_BUILD_ROOT{%{_datadir},%{_sysconfdir}}/vulkan/icd.d \
79 $RPM_BUILD_ROOT{%{_datadir},%{_sysconfdir}}/vulkan/{explicit,implicit}_layer.d \
80         $RPM_BUILD_ROOT{%{_bindir},%{_libdir}/vulkan/layer} \
81         $RPM_BUILD_ROOT%{_includedir}/vulkan \
82         $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
83
84
85 cd build
86 %{__make} install
87
88 cp -p loader/libvulkan.so.1.0.3 $RPM_BUILD_ROOT%{_libdir}
89 ln -s libvulkan.so.1.0.3 $RPM_BUILD_ROOT%{_libdir}/libvulkan.so
90 ln -s libvulkan.so.1.0.3 $RPM_BUILD_ROOT%{_libdir}/libvulkan.so.1
91
92 cp -p demos/vulkaninfo $RPM_BUILD_ROOT%{_bindir}/vulkaninfo
93 cp -p demos/tri $RPM_BUILD_ROOT%{_bindir}/vulkan-tri
94 cp -p demos/cube $RPM_BUILD_ROOT%{_bindir}/vulkan-cube
95
96 cp -p install_staging/*.so $RPM_BUILD_ROOT%{_libdir}/vulkan/layer
97 for f in layers/*.json ; do
98 sed -e's@"library_path": "./@"library_path": "%{_libdir}/vulkan/layer/@' $f > $RPM_BUILD_ROOT%{_datadir}/vulkan/explicit_layer.d/$(basename $f)
99 done
100
101 cp -p libs/vkjson/libvkjson.a $RPM_BUILD_ROOT%{_libdir}
102 cp -p libs/vkjson/vkjson_{info,unittest} $RPM_BUILD_ROOT%{_bindir}
103
104 cd ..
105
106 cp -p libs/vkjson/vkjson.h $RPM_BUILD_ROOT%{_includedir}
107 cp -p include/vulkan/* $RPM_BUILD_ROOT%{_includedir}/vulkan
108
109 cp -p demos/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
110
111 %clean
112 rm -rf $RPM_BUILD_ROOT
113
114 %post   -p /sbin/ldconfig
115 %postun -p /sbin/ldconfig
116
117 %files
118 %defattr(644,root,root,755)
119 %doc LICENSE.txt
120 %doc loader/{README.md,LoaderAndLayerInterface.md,LinuxICDs.txt}
121 %dir %{_sysconfdir}/vulkan
122 %dir %{_sysconfdir}/vulkan/icd.d
123 %dir %{_sysconfdir}/vulkan/explicit_layer.d
124 %dir %{_sysconfdir}/vulkan/implicit_layer.d
125 %dir %{_datadir}/vulkan
126 %dir %{_datadir}/vulkan/icd.d
127 %dir %{_datadir}/vulkan/explicit_layer.d
128 %dir %{_datadir}/vulkan/implicit_layer.d
129 %{_libdir}/libvulkan.so.1.*.*
130 %ghost %{_libdir}/libvulkan.so.1
131 %dir %{_libdir}/vulkan
132
133 %files demos
134 %defattr(644,root,root,755)
135 %attr(755,root,root) %{_bindir}/vulkan-tri
136 %attr(755,root,root) %{_bindir}/vulkan-cube
137
138 %files utils
139 %defattr(644,root,root,755)
140 %attr(755,root,root) %{_bindir}/vulkaninfo
141 %attr(755,root,root) %{_bindir}/vkjson_info
142 %attr(755,root,root) %{_bindir}/vkjson_unittest
143
144 %files -n vulkan-layers
145 %defattr(644,root,root,755)
146 %doc LICENSE.txt layers/README.md
147 %dir %{_libdir}/vulkan/layer
148 %{_libdir}/vulkan/layer/*.so
149 %{_datadir}/vulkan/explicit_layer.d/*.json
150
151 %files -n vulkan-devel
152 %defattr(644,root,root,755)
153 %doc LICENSE.txt README.md
154 %{_libdir}/libvulkan.so
155 %{_libdir}/libvkjson.a
156 %{_includedir}/vulkan
157 %{_includedir}/vkjson.h
158 %{_examplesdir}/%{name}-%{version}
This page took 0.39547 seconds and 4 git commands to generate.