Hello community, here is the log from the commit of package glslang for openSUSE:Leap:15.2 checked in at 2020-03-06 12:38:33 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Leap:15.2/glslang (Old) and /work/SRC/openSUSE:Leap:15.2/.glslang.new.26092 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glslang" Fri Mar 6 12:38:33 2020 rev:12 rq:779733 version:8.13.3559+git20 Changes: -------- --- /work/SRC/openSUSE:Leap:15.2/glslang/glslang.changes 2020-01-15 15:04:09.777864494 +0100 +++ /work/SRC/openSUSE:Leap:15.2/.glslang.new.26092/glslang.changes 2020-03-06 12:40:15.082719785 +0100 @@ -1,0 +2,179 @@ +Mon Feb 3 10:09:18 UTC 2020 - Antonio Larrosa <[email protected]> + +- Fix build when _lto_cflags is not defined (as in SLE/Leap) + +------------------------------------------------------------------- +Sun Jan 19 11:38:09 UTC 2020 - Jan Engelhardt <[email protected]> + +- Update to snapshot 8.13.3559+git20 (b0ada803) + * SPIR-V: Aggressively prune unreachable merge, continue target. + * INTEL_shader_integer_functions2: Add basic extension + tracking, add compiler front-end support, add SPIR-V + generation. + * Add support for ARB_sample_shading, ARB_texture_multisample, + ARB_uniform_buffer_object, ARB_gpu_shader_fp64. + * SPV/Vulkan: Add support for Vulkan 1.2, which defaults to + SPIR-V 1.5. + +------------------------------------------------------------------- +Thu Nov 7 08:25:53 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to release 7.13.3496 + * GL_NV_integer_cooperative_matrix support + * Add support for GL_ARB_explicit_uniform_location + * SPV 1.5: Switch to the 1.5 header, for SPIR-V 1.5. + * Add GL_EXT_shader_subgroup_extended_types support + * SPV_KHR_physical_storage_buffer/SPV: + Add GL_EXT_buffer_reference_uvec2 + * Emit SPV_EXT_physical_storage_buffer, not the KHR form. + * Promote SPV_EXT_physical_storage_buffer to KHR when required. + +------------------------------------------------------------------- +Mon Oct 14 21:01:23 UTC 2019 - Jan Engelhardt <[email protected]> + +- Drop unused static libraries, functions of libOGLCompilerDLL and + libOSDependent are actually present in libglslang already. + [boo#1153950] + +------------------------------------------------------------------- +Sat Sep 7 15:57:52 UTC 2019 - Jan Engelhardt <[email protected]> + +- Bump SOVER as needed. + +------------------------------------------------------------------- +Wed Aug 21 07:23:09 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to new upstream release 7.12.3352 + * Add interface symbol and uniform symbol location auto mapping + for OpenGL shader. + * Handle SPIR-V type mismatch when constructing a composite. + * Implement GL_EXT_demote_to_helper_invocation. + * Avoid generating 8/16-bit constants when 8/16-bit arithmetic + extensions are not enabled. + * Add support for SPV_KHR_shader_clock. + +------------------------------------------------------------------- +Fri Aug 2 07:00:29 UTC 2019 - Martin Liška <[email protected]> + +- Use FAT LTO objects in order to provide proper static library. + +------------------------------------------------------------------- +Fri Jun 28 07:50:03 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to new snapshot 7.11.3276.git10 (4162de4) + * Add Float16/Int8/Int16 capabilities for private variables and + function parameters. + * Use spvValidatorOptionsSetBeforeHlslLegalization for + pre-legalized HLSL. + * Add support for GL_NV_shader_sm_builtins. + * Add gl_SemanticsVolatile to GL_KHR_memory_scope_semantics, + and make volatile-qualified atomics generate + MemorySemanticsVolatile when using the Vulkan memory model. + * Add missing GL_ARB_shader_ballot builtins to Geometry and + Tessellation shaders. + * SPV: Add a switch for favoring non-NaN operands in min, max, + and clamp. +- Remove nodate.diff (upstreamed) + +------------------------------------------------------------------- +Wed Jun 5 10:31:35 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to new snapshot 7.11.3214.git16 (2f4a8dfd) + * GLSL: Fix tessellation control shader bounding box support. + * GLSL: Add error check for an argument dropping the + "restrict" qualifier. + * Add support for GL_EXT_buffer_reference2. + * SPV: Move to the SPIR-V 1.4 header. + * Support GL_ARB_fragment_shader_interlock. + +------------------------------------------------------------------- +Sat Mar 16 18:40:53 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to new upstream snapshot 7.11.3113.git55 (f925eefb) + to be in line with spirv-headers. + * Implement GL_NV_cooperative_matrix + * Fixup leak of TString + * Add option to reflect all block members, inactive or active. + * Add option to reflect buffer blocks & variables separately to + uniforms. + * Reflect array stride, top-level array stride, and block + member count. + * Reflect pipeline outputs as well as inputs, optionally from + other stages. + * Add an option to report array variables with trailing [0] + suffix. + * Include array index in reflected uniform names more + consistently. + * Add options to control how reflection information is built + * Move TObjectReflection into public interface to clean up + reflection. + +------------------------------------------------------------------- +Tue Feb 19 09:48:37 UTC 2019 - Jan Engelhardt <[email protected]> + +- Update to new upstream release 7.11.3113 + * Implement GL_EXT_scalar_block_layout + * GLSL: Increase supported sizes of XBF strides and offsets + * Update to newer SPIRV-Tools, including VK_EXT_scalar_block_layout + * Implement GL_EXT_fragment_invocation_density + * SPV: Generate OpArrayLength with no signedness + * SPV: For GLSL only, bitcast OpArrayLength result back to int + * Rename GL_KHX_shader_explicit_arithmetic_types to + GL_EXT_shader_explicit_arithmetic_types + * Add support for GL_EXT_YUV_target + +------------------------------------------------------------------- +Tue Dec 4 09:10:17 UTC 2018 - Jan Engelhardt <[email protected]> + +- Update to new upstream release 7.10.2984 + * Updated type conversion rules for HLSL frontend + * HLSL: implemented c register handling + * HLSL: fix invalid spir-v vector * scalar for float1 + +------------------------------------------------------------------- +Mon Nov 12 16:12:41 UTC 2018 - Jan Engelhardt <[email protected]> + +- Update to new upstream release 7.9.2933 + * Add a SPIRV-Tools validator + * GLSL: Remove use of "__" in the implementation of keywords + having "__". + * Add GL_EXT_shader_atomic_int64 + * Add ES 320 support and additional error checks for + SPV_NV_mesh_shader. + +------------------------------------------------------------------- +Fri Aug 24 07:02:34 UTC 2018 - [email protected] + +- Update to new upstream release 7.8.2853 + * Link/SPV: Correct symbol IDs on merging ASTs to a single coherent space. + * Add missing OpExtension SPV_EXT_descriptor_indexing for dynamic indexing + capabilities. + * GLSL/Vulkan: Warn about arrays of arrays of resources that need bindings. + * GLSL/SPV: Implement SPV_EXT_descriptor_indexing and + GL_EXT_nonuniform_qualifier. + * Implement GL_NV_shader_subgroup_partitioned. + * Add support for GL_NV_shader_noperspective_interpolation. +- Add ver.diff. + +------------------------------------------------------------------- +Thu Mar 8 00:39:46 UTC 2018 - [email protected] + +- Update to 6.2.2604 + * SPV: Implement Vulkan 1.1 features and extensions. + +------------------------------------------------------------------- +Wed Feb 7 22:51:46 UTC 2018 - [email protected] + +- Update to new snapshot 3.0.g1817 + * HLSL: Include built-in processing for vertex input and fragment output flattening. + * HLSL: Flatten structs for all non-arrayed I/O interfaces. + * SPV: Implement extension SPV_EXT_shader_stencil_export + * HLSL: handle clip and cull distance input builtin type conversion + * SPV: 1st pass implementation of SPV_EXT_shader_viewport_index_layer. + * HLSL: add geometry stage support for clip/cull distance + * Add support for GL_OES_EGL_image_external_essl3 + * Implement the extension GL_AMD_shader_fragment_mask + * Add implementation of SPV_EXT_fragment_fully_covered + * GLSL: Implement GL_EXT_control_flow_attributes. + +------------------------------------------------------------------- Old: ---- glslang-3.0.g1516.tar.xz nodate.diff New: ---- glslang-8.13.3559+git20.tar.xz ver.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glslang.spec ++++++ --- /var/tmp/diff_new_pack.aAXdQ1/_old 2020-03-06 12:40:16.618720718 +0100 +++ /var/tmp/diff_new_pack.aAXdQ1/_new 2020-03-06 12:40:16.650720738 +0100 @@ -1,7 +1,7 @@ # # spec file for package glslang # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,40 +12,55 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -%define version_unconverted 3.0.g1516 +# lname needs a bump for every change in commit (_service) +%define version_unconverted 8.13.3559+git20 +%define lname libglslang-suse9 Name: glslang -Version: 3.0.g1516 +Version: 8.13.3559+git20 Release: 0 Summary: OpenGL and OpenGL ES shader front end and validator License: BSD-3-Clause Group: Development/Libraries/C and C++ -Url: https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/ +URL: https://www.khronos.org/opengles/sdk/tools/Reference-Compiler/ +#Git-URL: https://github.com/KhronosGroup/glslang Source: %name-%version.tar.xz -Patch1: nodate.diff +Patch1: ver.diff BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: bison BuildRequires: cmake >= 2.8 +BuildRequires: fdupes BuildRequires: gcc-c++ +BuildRequires: python3-base %description -glslang is the official reference compiler front end for the OpenGL -ES and OpenGL shading languages. It implements a strict -interpretation of the specifications for these languages. +glslang is a compiler front end for the OpenGL ES and OpenGL shading +languages. It implements a strict interpretation of the +specifications for these languages. + +%package -n %lname +Summary: OpenGL and OpenGL ES shader front end implementation +Group: System/Libraries + +%description -n %lname +glslang is a compiler front end for the OpenGL ES and OpenGL shading +languages. It implements a strict interpretation of the +specifications for these languages. %package devel Summary: OpenGL and OpenGL ES shader front end and validator Group: Development/Libraries/C and C++ +Requires: %lname = %version %description devel -glslang is the official reference compiler front end for the OpenGL -ES and OpenGL shading languages. It implements a strict -interpretation of the specifications for these languages. +glslang is a compiler front end for the OpenGL ES and OpenGL shading +languages. It implements a strict interpretation of the +specifications for these languages. spirv-remap is a utility to improve compression of SPIR-V binary files via entropy reduction, plus optional stripping of debug @@ -56,16 +71,19 @@ compressor's dictionary can find better cross module commonality. %prep -%setup -q -%patch -P 1 -p1 +%autosetup -p1 %build -%cmake +%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects +# Trim -Wl,--no-undefined for now (https://github.com/KhronosGroup/glslang/issues/1484) +%cmake -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed -Wl,-z,now" make %{?_smp_mflags} %install -b="%buildroot" +%global _lto_cflags %{_lto_cflags} -ffat-lto-objects %cmake_install +b="%buildroot" +find "$b" -type f -name "*.a" -print -delete mkdir -p "$b/%_includedir" cp -a SPIRV glslang "$b/%_includedir/" find "$b/%_includedir/" -type f ! -iname "*.h" -a ! -iname "*.hpp" -print -delete @@ -73,12 +91,31 @@ find "$b/%_includedir/" -type f -exec chmod a-x "{}" "+" cp build/StandAlone/libglslang-default-resource-limits.so "$b/%_libdir/" +# 3rd party programs use -lOGLCompiler (because pristine glslang ships .a files), +# so satisfy them under our shared build. +ln -s libglslang.so "$b/%_libdir/libOGLCompiler.so" +ln -s libglslang.so "$b/%_libdir/libOSDependent.so" +%fdupes %buildroot/%_prefix + +%post -n %lname -p /sbin/ldconfig +%postun -n %lname -p /sbin/ldconfig + +%files -n %lname +%defattr(-,root,root) +%_libdir/*.so.suse9* + %files devel %defattr(-,root,root) %_bindir/gls* %_bindir/spirv* -%_libdir/*.a +%_libdir/cmake/ %_libdir/*resource*.so +%_libdir/libHLSL.so +%_libdir/libOGLCompiler.so +%_libdir/libOSDependent.so +%_libdir/libSPIRV.so +%_libdir/libSPVRemapper.so +%_libdir/libglslang.so %_includedir/* %changelog ++++++ _service ++++++ --- /var/tmp/diff_new_pack.aAXdQ1/_old 2020-03-06 12:40:17.054720984 +0100 +++ /var/tmp/diff_new_pack.aAXdQ1/_new 2020-03-06 12:40:17.078720998 +0100 @@ -1,9 +1,11 @@ <services> <service name="tar_scm" mode="disabled"> <param name="scm">git</param> - <param name="url">git://github.com/KhronosGroup/glslang</param> - <param name="parent-tag">3.0</param> - <param name="versionformat">@[email protected]@TAG_OFFSET@</param> + <param name="url">https://github.com/KhronosGroup/glslang</param> + <!-- minor part also in glslang/Include/revision.h (and sometimes out of date too) --> + <param name="revision">b0ada803</param> + <param name="parent-tag">8.13.3559</param> + <param name="versionformat">8.13.3559+git@TAG_OFFSET@</param> </service> <service name="recompress" mode="disabled"> <param name="file">*.tar</param> ++++++ ver.diff ++++++ From: Jan Engelhardt <[email protected]> Date: 2018-08-25 15:28:25.894943233 +0200 Unversioned libraries suck! I loosely remember someone or something suggested that something like semver is in place. Diffing 7.10.2984 to 7.11.3113 however shows `nm -CD` differences on libSPIRV.so. There is no ABI stability to expect here. -T spv::Builder::createLoad(unsigned int, spv::MemoryAccessMask, spv::Scope) +T spv::Builder::createLoad(unsigned int, spv::MemoryAccessMask, spv::Scope, unsigned int) --- SPIRV/CMakeLists.txt | 2 ++ StandAlone/CMakeLists.txt | 1 + glslang/CMakeLists.txt | 1 + hlsl/CMakeLists.txt | 1 + 4 files changed, 5 insertions(+) Index: glslang-8.13.3559+git20/SPIRV/CMakeLists.txt =================================================================== --- glslang-8.13.3559+git20.orig/SPIRV/CMakeLists.txt +++ glslang-8.13.3559+git20/SPIRV/CMakeLists.txt @@ -34,6 +34,7 @@ set(SPVREMAP_HEADERS doc.h) add_library(SPIRV ${LIB_TYPE} ${SOURCES} ${HEADERS}) +set_target_properties(SPIRV PROPERTIES SOVERSION suse9) set_property(TARGET SPIRV PROPERTY FOLDER glslang) set_property(TARGET SPIRV PROPERTY POSITION_INDEPENDENT_CODE ON) target_include_directories(SPIRV PUBLIC @@ -42,6 +43,7 @@ target_include_directories(SPIRV PUBLIC if (ENABLE_SPVREMAPPER) add_library(SPVRemapper ${LIB_TYPE} ${SPVREMAP_SOURCES} ${SPVREMAP_HEADERS}) + set_target_properties(SPVRemapper PROPERTIES SOVERSION suse9) set_property(TARGET SPVRemapper PROPERTY FOLDER glslang) set_property(TARGET SPVRemapper PROPERTY POSITION_INDEPENDENT_CODE ON) endif() Index: glslang-8.13.3559+git20/StandAlone/CMakeLists.txt =================================================================== --- glslang-8.13.3559+git20.orig/StandAlone/CMakeLists.txt +++ glslang-8.13.3559+git20/StandAlone/CMakeLists.txt @@ -1,5 +1,6 @@ add_library(glslang-default-resource-limits ${CMAKE_CURRENT_SOURCE_DIR}/ResourceLimits.cpp) +set_target_properties(glslang-default-resource-limits PROPERTIES SOVERSION suse9) set_property(TARGET glslang-default-resource-limits PROPERTY FOLDER glslang) set_property(TARGET glslang-default-resource-limits PROPERTY POSITION_INDEPENDENT_CODE ON) Index: glslang-8.13.3559+git20/glslang/CMakeLists.txt =================================================================== --- glslang-8.13.3559+git20.orig/glslang/CMakeLists.txt +++ glslang-8.13.3559+git20/glslang/CMakeLists.txt @@ -79,6 +79,7 @@ set(HEADERS glslang_pch(SOURCES MachineIndependent/pch.cpp) add_library(glslang ${LIB_TYPE} ${BISON_GLSLParser_OUTPUT_SOURCE} ${SOURCES} ${HEADERS}) +set_target_properties(glslang PROPERTIES SOVERSION suse9) set_property(TARGET glslang PROPERTY FOLDER glslang) set_property(TARGET glslang PROPERTY POSITION_INDEPENDENT_CODE ON) target_link_libraries(glslang OGLCompiler OSDependent) Index: glslang-8.13.3559+git20/hlsl/CMakeLists.txt =================================================================== --- glslang-8.13.3559+git20.orig/hlsl/CMakeLists.txt +++ glslang-8.13.3559+git20/hlsl/CMakeLists.txt @@ -20,6 +20,7 @@ set(HEADERS glslang_pch(SOURCES pch.cpp) add_library(HLSL ${LIB_TYPE} ${SOURCES} ${HEADERS}) +set_target_properties(HLSL PROPERTIES SOVERSION suse9) set_property(TARGET HLSL PROPERTY FOLDER hlsl) set_property(TARGET HLSL PROPERTY POSITION_INDEPENDENT_CODE ON)
