diff --git a/SPIRV-Tools_staticlib.patch b/SPIRV-Tools_staticlib.patch new file mode 100644 index 0000000..2e4a184 --- /dev/null +++ b/SPIRV-Tools_staticlib.patch @@ -0,0 +1,36 @@ +diff -rupN SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/CMakeLists.txt SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/CMakeLists.txt +--- SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/CMakeLists.txt 2017-09-01 22:28:22.000000000 +0200 ++++ SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/CMakeLists.txt 2017-10-13 10:06:17.033675656 +0200 +@@ -282,7 +282,7 @@ set_source_files_properties( + ${CMAKE_CURRENT_SOURCE_DIR}/software_version.cpp + PROPERTIES OBJECT_DEPENDS "${SPIRV_TOOLS_BUILD_VERSION_INC}") + +-add_library(${SPIRV_TOOLS} ${SPIRV_SOURCES}) ++add_library(${SPIRV_TOOLS} STATIC ${SPIRV_SOURCES}) + spvtools_default_compile_options(${SPIRV_TOOLS}) + target_include_directories(${SPIRV_TOOLS} + PUBLIC ${spirv-tools_SOURCE_DIR}/include +diff -rupN SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/comp/CMakeLists.txt SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/comp/CMakeLists.txt +--- SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/comp/CMakeLists.txt 2017-09-01 22:28:22.000000000 +0200 ++++ SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/comp/CMakeLists.txt 2017-10-13 10:06:25.958201827 +0200 +@@ -12,7 +12,7 @@ + # See the License for the specific language governing permissions and + # limitations under the License. + +-add_library(SPIRV-Tools-comp markv_codec.cpp) ++add_library(SPIRV-Tools-comp STATIC markv_codec.cpp) + + spvtools_default_compile_options(SPIRV-Tools-comp) + target_include_directories(SPIRV-Tools-comp +diff -rupN SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/opt/CMakeLists.txt SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/opt/CMakeLists.txt +--- SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23/source/opt/CMakeLists.txt 2017-09-01 22:28:22.000000000 +0200 ++++ SPIRV-Tools-7e2d26c77b606b21af839b37fd21381c4a669f23-new/source/opt/CMakeLists.txt 2017-10-13 10:06:42.471288632 +0200 +@@ -11,7 +11,7 @@ + # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + # See the License for the specific language governing permissions and + # limitations under the License. +-add_library(SPIRV-Tools-opt ++add_library(SPIRV-Tools-opt STATIC + aggressive_dead_code_elim_pass.h + basic_block.h + block_merge_pass.h diff --git a/vulkan.spec b/vulkan.spec index 46b6800..7e0b418 100644 --- a/vulkan.spec +++ b/vulkan.spec @@ -1,3 +1,5 @@ +%global __requires_exclude ^libVkLayer_utils.so + %global srcname Vulkan-LoaderAndValidationLayers %global commit1 3a21c880500eac21cdf79bef5b80f970a55ac6af @@ -11,7 +13,7 @@ Name: vulkan Version: 1.0.61.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Vulkan loader and validation layers License: ASL 2.0 URL: https://github.com/KhronosGroup @@ -22,7 +24,8 @@ Source3: %url/%{srcname3}/archive/%{commit3}.tar.gz#/%{srcname3}-%{commit Patch0: 0003-layers-Don-t-set-an-rpath.patch Patch1: 0008-demos-Don-t-build-tri-or-cube.patch -Patch2: %url/%{srcname}/commit/560f9cdf78d3d03dbf97be638becd1a7df5fa154.patch#/fix_x86_TEXTREL.patch +Patch2: SPIRV-Tools_staticlib.patch +Patch3: %url/%{srcname}/commit/560f9cdf78d3d03dbf97be638becd1a7df5fa154.patch#/fix_x86_TEXTREL.patch BuildRequires: gcc-c++ BuildRequires: bison @@ -50,6 +53,13 @@ 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} @@ -65,12 +75,20 @@ BuildArch: noarch Filesystem for Vulkan. %prep -%autosetup -p1 -n %{srcname}-sdk-%{version} +%setup -q -n %{srcname}-sdk-%{version} +%patch0 -p1 +%patch1 -p1 +%patch3 -p1 mkdir -p build/ external/glslang/build/install external/spirv-tools/build/ external/spirv-tools/external/spirv-headers tar -xf %{SOURCE1} -C external/glslang --strip 1 tar -xf %{SOURCE2} -C external/spirv-tools/external/spirv-headers --strip 1 tar -xf %{SOURCE3} -C external/spirv-tools --strip 1 + +pushd external/spirv-tools +%patch2 -p1 +popd + # fix spurious-executable-perm chmod 0644 README.md chmod 0644 external/glslang/SPIRV/spirv.hpp @@ -126,12 +144,14 @@ chrpath -d %{buildroot}%{_bindir}/vulkaninfo %files %license LICENSE.txt COPYRIGHT.txt %doc README.md CONTRIBUTING.md -%{_bindir}/vulkaninfo -%{_bindir}/vulkan-smoketest %{_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 @@ -148,6 +168,10 @@ chrpath -d %{buildroot}%{_bindir}/vulkaninfo %dir %{_datadir}/vulkan/implicit_layer.d/ %changelog +* Tue Oct 31 2017 Leigh Scott - 1.0.61.1-4 +- Fix vulkan requires +- Move demos to sub-package + * Tue Oct 31 2017 Leigh Scott - 1.0.61.1-3 - Remove epel conditionals - Remove vulkan git conditionals