Name: vulkan Version: 1.0.3 Release: 2%{?dist} Summary: Vulkan loader and validation layers Group: System Environment/Libraries License: MIT URL: http://www.khronos.org/ # https://github.com/nwnk/Vulkan-LoaderAndValidationLayers/tree/sdk-1.0.3-fedora Source0: vulkan.tar.xz # https://github.com/KhronosGroup/glslang Source1: glslang.tar.xz BuildRequires: bison BuildRequires: cmake BuildRequires: ImageMagick-devel BuildRequires: libpciaccess-devel BuildRequires: python BuildRequires: systemd-devel #Requires: Requires: vulkan-filesystem %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 devel Summary: vulkan development package Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel Development headers for vulkan applications. %package filesystem Summary: vulkan filesystem package Group: System Environment/Base #BuildArch: noarch %description filesystem Filesystem for vulkan. %prep %setup -q -n %{name} -b1 # python 2.7 is fine, which is good, since rhel7 doesn't have python3 sed -i 's/\/python/' *.py */*.py CMakeLists.txt # sigh inttypes sed -i 's/inttypes.h/cinttypes/' layers/*.{cpp,h} *.py %build # first, glslang pushd %{_builddir}/glslang rm -rf build ; mkdir build ; cd build %cmake .. make %{?_smp_mflags} make install DESTDIR=$(pwd)/install cd install ln -s usr/* . popd # and finally, loader, layers, and demo clients %cmake . make %{?_smp_mflags} %install make install DESTDIR=%{buildroot}/usr # XXX upstream mkdir -p %{buildroot}{%{_includedir},%{_bindir}} mkdir -p %{buildroot}%{_datadir}/vulkan/{explicit_layer,implicit_layer}.d cd include ; cp -rp vulkan %{buildroot}%{_includedir} ; cd .. install demos/vulkaninfo %{buildroot}%{_bindir}/vulkaninfo for i in layers/linux/*.json ; do sed 's@./@@' $i > %{buildroot}%{_datadir}/vulkan/explicit_layer.d/$(basename $i) done # bleh rm -f %{buildroot}/%{_datadir}/vulkan/explicit_layer.d/*implicit* mkdir -p %{buildroot}%{_sysconfdir}/vulkan/icd.d %files %doc README.md LICENSE.txt %{_bindir}/* %{_datadir}/vulkan/explicit_layer.d/*.json #{_datadir}/vulkan/implicit_layer.d/*.json %{_libdir}/liblayer_utils.so %{_libdir}/libVkLayer*.so %{_libdir}/libvulkan.so.1* %files devel %{_includedir}/vulkan %{_libdir}/libvulkan.so %files filesystem %dir %{_sysconfdir}/vulkan %dir %{_sysconfdir}/vulkan/icd.d %dir %{_datadir}/vulkan %dir %{_datadir}/vulkan/explicit_layer.d %dir %{_datadir}/vulkan/implicit_layer.d %changelog * Tue Feb 16 2016 Adam Jackson - 1.0.3-2 - 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 - 1.0.3-1 - Initial packaging