Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package glm for openSUSE:Factory checked in at 2021-06-24 18:22:07 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/glm (Old) and /work/SRC/openSUSE:Factory/.glm.new.2625 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "glm" Thu Jun 24 18:22:07 2021 rev:13 rq:900939 version:0.9.9.8 Changes: -------- --- /work/SRC/openSUSE:Factory/glm/glm.changes 2019-04-28 19:58:48.010958582 +0200 +++ /work/SRC/openSUSE:Factory/.glm.new.2625/glm.changes 2021-06-24 18:22:13.720893220 +0200 @@ -1,0 +2,62 @@ +Sat Jun 19 11:49:32 UTC 2021 - Luigi Baldoni <[email protected]> + +- Update to version 0.9.9.8 + Features: + * Added GLM_EXT_vector_intX* and GLM_EXT_vector_uintX* + extensions + * Added GLM_EXT_matrix_intX* and GLM_EXT_matrix_uintX* + extensions + Improvements: + * Added clamp, repeat, mirrorClamp and mirrorRepeat function + to GLM_EXT_scalar_commond and GLM_EXT_vector_commond + extensions with tests + Fixes: + * Fixed unnecessary warnings from matrix_projection.inl + * Fixed quaternion slerp overload which interpolates with + extra spins + * Fixed for glm::length using arch64 + * Fixed singularity check for quatLookAt + version 0.9.9.7 + Improvements: + * Improved Neon support with more functions optimized + * Added CMake GLM interface + * Added fma implementation based on std::fma + * Added missing quat constexpr + * Added GLM_FORCE_QUAT_DATA_WXYZ to store quat data as w,x,y,z + instead of x,y,z,w + Fixes: + * Fixed equal ULP variation when using negative sign + * Fixed for intersection ray/plane and added related tests + * Fixed ARM 64bit detection + * Fixed GLM_EXT_matrix_clip_space warnings + * Fixed Wimplicit-int-float-conversion warnings with clang 10+ + * Fixed EXT_matrix_clip_space perspectiveFov + version 0.9.9.6 + Features: + * Added Neon support to glm + * Added SYCL support + * Added EXT_scalar_integer extension with power of two and + multiple scalar functions + * Added EXT_vector_integer extension with power of two and + multiple vector functions + Improvements: + * Added missing genType check for bitCount and bitfieldReverse + Fixes: + * Fixed for g++6 where -std=c++1z sets __cplusplus to 201500 + instead of 201402 + * Fixed hash hashes qua instead of tquat + * Fixed .natvis as structs renamed + * Fixed ldexp and frexp declaration + * Fixed missing const to quaternion conversion operators + * Fixed EXT_scalar_ulp and EXT_vector_ulp API coding style + * Fixed quaternion componant order: w, {x, y, z} + * Fixed GLM_HAS_CXX11_STL broken on Clang with Linux + * Fixed Clang or GCC build due to wrong GLM_HAS_IF_CONSTEXPR + definition + * Fixed CUDA 9 build +- Drop glm-cmake-config.patch (no longer applies) +- Add glm-0.9.9.8-install.patch (courtesy of Fedora), + glm-0.9.9.8-pkgconfig.patch and + glm-0.9.9.8-fix_tests_big-endian.patch + +------------------------------------------------------------------- Old: ---- glm-0.9.9.5.tar.gz glm-cmake-config.patch New: ---- glm-0.9.9.8-fix_tests_big-endian.patch glm-0.9.9.8-install.patch glm-0.9.9.8-pkgconfig.patch glm-0.9.9.8.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ glm.spec ++++++ --- /var/tmp/diff_new_pack.2kRZb0/_old 2021-06-24 18:22:15.012894653 +0200 +++ /var/tmp/diff_new_pack.2kRZb0/_new 2021-06-24 18:22:15.012894653 +0200 @@ -1,7 +1,7 @@ # # spec file for package glm # -# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,21 +12,25 @@ # 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/ # Name: glm -Version: 0.9.9.5 +Version: 0.9.9.8 Release: 0 Summary: Header only C++ mathematics library for graphics -License: MIT AND GPL-2.0-only +License: GPL-2.0-only AND MIT Group: Development/Libraries/C and C++ -Url: https://glm.g-truc.net/ +URL: https://glm.g-truc.net/ #Git-Clone: https://github.com/g-truc/glm.git Source: https://github.com/g-truc/%{name}/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz -# PATCH-FIX-OPENSUSE glm-cmake-config.patch -- Fix cmake config location -Patch1: glm-cmake-config.patch +# PATCH-FIX-OPENSUSE glm-0.9.9.8-install.patch +Patch2: glm-0.9.9.8-install.patch +# PATCH-FIX-OPENSUSE glm-0.9.9.8-pkgconfig.patch add pkgconfig file -- [email protected] +Patch3: glm-0.9.9.8-pkgconfig.patch +# PATCH-FIX-UPSTREAM glm-0.9.9.8-fix_tests_big-endian.patch +Patch4: glm-0.9.9.8-fix_tests_big-endian.patch BuildRequires: cmake BuildRequires: fdupes BuildRequires: gcc-c++ @@ -62,8 +66,7 @@ This package provides the documentation for GLM library. %prep -%setup -q -%patch1 -p1 +%autosetup -p1 %build %cmake \ @@ -80,8 +83,8 @@ %ctest %files devel -%{_includedir}/glm/ -%{_libdir}/cmake/%{name}/ +%{_includedir}/glm +%{_libdir}/cmake/%{name} %{_libdir}/pkgconfig/%{name}.pc %files doc ++++++ glm-0.9.9.8-fix_tests_big-endian.patch ++++++ >From 06ce42e72324b32b1f4c37c646e99950c2bd5f6b Mon Sep 17 00:00:00 2001 From: Max Rees <[email protected]> Date: Sun, 15 Mar 2020 15:13:27 -0400 Subject: [PATCH] Fix test suite on big endian platforms --- glm/gtc/packing.inl | 55 ++++++++++++++++++++++++++++++++++++++++ test/gtc/gtc_packing.cpp | 3 ++- 2 files changed, 57 insertions(+), 1 deletion(-) diff --git a/glm/gtc/packing.inl b/glm/gtc/packing.inl index 8c906e16c..b1c99a507 100644 --- a/glm/gtc/packing.inl +++ b/glm/gtc/packing.inl @@ -9,6 +9,9 @@ #include "../detail/type_half.hpp" #include <cstring> #include <limits> +extern "C" { +#include <endian.h> +} namespace glm{ namespace detail @@ -183,9 +186,15 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 3; uint y : 3; uint z : 2; +#else + uint z : 2; + uint y : 3; + uint x : 3; +#endif } data; uint8 pack; }; @@ -194,8 +203,13 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 4; uint y : 4; +#else + uint y : 4; + uint x : 4; +#endif } data; uint8 pack; }; @@ -204,10 +218,17 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 4; uint y : 4; uint z : 4; uint w : 4; +#else + uint w : 4; + uint z : 4; + uint y : 4; + uint x : 4; +#endif } data; uint16 pack; }; @@ -216,9 +237,15 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 5; uint y : 6; uint z : 5; +#else + uint z : 5; + uint y : 6; + uint x : 5; +#endif } data; uint16 pack; }; @@ -227,10 +254,17 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 5; uint y : 5; uint z : 5; uint w : 1; +#else + uint w : 1; + uint z : 5; + uint y : 5; + uint x : 5; +#endif } data; uint16 pack; }; @@ -239,10 +273,17 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 10; uint y : 10; uint z : 10; uint w : 2; +#else + uint w : 2; + uint z : 10; + uint y : 10; + uint x : 10; +#endif } data; uint32 pack; }; @@ -251,10 +292,17 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN int x : 10; int y : 10; int z : 10; int w : 2; +#else + int w : 2; + int z : 10; + int y : 10; + int x : 10; +#endif } data; uint32 pack; }; @@ -263,10 +311,17 @@ namespace detail { struct { +#if BYTE_ORDER == LITTLE_ENDIAN uint x : 9; uint y : 9; uint z : 9; uint w : 5; +#else + uint w : 5; + uint z : 9; + uint y : 9; + uint x : 9; +#endif } data; uint32 pack; }; diff --git a/test/gtc/gtc_packing.cpp b/test/gtc/gtc_packing.cpp index df5b3bb1a..fbaaa5bcc 100644 --- a/test/gtc/gtc_packing.cpp +++ b/test/gtc/gtc_packing.cpp @@ -4,6 +4,7 @@ #include <glm/ext/vector_relational.hpp> #include <cstdio> #include <vector> +#include <arpa/inet.h> void print_bits(float const& s) { @@ -156,7 +157,7 @@ int test_U3x10_1x2() glm::u8vec4 const v0(0xff, 0x77, 0x0, 0x33); glm::uint32 const p0 = *reinterpret_cast<glm::uint32 const*>(&v0[0]); - glm::uint32 const r0 = 0x330077ff; + glm::uint32 const r0 = htonl(0xff770033); Error += p0 == r0 ? 0 : 1; ++++++ glm-0.9.9.8-install.patch ++++++ >From 02f26a88537b0b02dd0df77fc858e9449c7e3847 Mon Sep 17 00:00:00 2001 From: Krzysztof Kurek <[email protected]> Date: Sat, 30 Jan 2021 21:08:48 +0100 Subject: [PATCH] Add installation support from PR #1054 This is based on commit 887827b762111a8e6b4765513b4be212fa6a5426, discovered from https://github.com/g-truc/glm/pull/1054 --- CMakeLists.txt | 16 ++++++++++++++-- cmake/glm/glmConfig-version.cmake | 11 ----------- cmake/glm/glmConfig.cmake | 22 ---------------------- glm/CMakeLists.txt | 10 +++++++++- manual.md | 21 ++++++++++++++++++++- 5 files changed, 43 insertions(+), 37 deletions(-) delete mode 100644 cmake/glm/glmConfig-version.cmake delete mode 100644 cmake/glm/glmConfig.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 843e7546..642a5fde 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,13 +3,25 @@ cmake_policy(VERSION 3.2) set(GLM_VERSION "0.9.9") project(glm VERSION ${GLM_VERSION} LANGUAGES CXX) -enable_testing() +message(STATUS "GLM: Version " ${GLM_VERSION}) add_subdirectory(glm) add_library(glm::glm ALIAS glm) if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}) -add_subdirectory(test) + include(CPack) + install(DIRECTORY glm DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} PATTERN "CMakeLists.txt" EXCLUDE) + install(EXPORT glm FILE glmConfig.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glm NAMESPACE glm::) + include(CMakePackageConfigHelpers) + write_basic_package_version_file("glmConfigVersion.cmake" COMPATIBILITY AnyNewerVersion) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glmConfigVersion.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glm) + + include(CTest) + if(BUILD_TESTING) + add_subdirectory(test) + endif() endif(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR}) + + diff --git a/cmake/glm/glmConfig-version.cmake b/cmake/glm/glmConfig-version.cmake deleted file mode 100644 index 6e63a4a3..00000000 --- a/cmake/glm/glmConfig-version.cmake +++ /dev/null @@ -1,11 +0,0 @@ -if(${PACKAGE_FIND_VERSION_MAJOR} EQUAL 0) - if (${PACKAGE_FIND_VERSION} VERSION_LESS ${GLM_VERSION}) - set(PACKAGE_VERSION_COMPATIBLE 1) - endif() - if(${PACKAGE_FIND_VERSION} VERSION_EQUAL ${GLM_VERSION}) - set(PACKAGE_VERSION_EXACT 1) - endif() -else() - set(PACKAGE_VERSION_UNSUITABLE 1) -endif() - diff --git a/cmake/glm/glmConfig.cmake b/cmake/glm/glmConfig.cmake deleted file mode 100644 index 4fba5116..00000000 --- a/cmake/glm/glmConfig.cmake +++ /dev/null @@ -1,22 +0,0 @@ -cmake_minimum_required(VERSION 3.2 FATAL_ERROR) -cmake_policy(VERSION 3.2) - -set(GLM_VERSION 0.9.9) - -get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -if (_IMPORT_PREFIX STREQUAL "/") - set(_IMPORT_PREFIX "") -endif() - -# Set the old GLM_INCLUDE_DIRS variable for backwards compatibility -set(GLM_INCLUDE_DIRS ${_IMPORT_PREFIX}) - -add_library(glm::glm INTERFACE IMPORTED) -set_target_properties(glm::glm PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${GLM_INCLUDE_DIRS}) - -mark_as_advanced(glm_DIR) -set(_IMPORT_PREFIX) - diff --git a/glm/CMakeLists.txt b/glm/CMakeLists.txt index 4ff51c81..cee0d2e7 100644 --- a/glm/CMakeLists.txt +++ b/glm/CMakeLists.txt @@ -43,7 +43,15 @@ source_group("SIMD Files" FILES ${SIMD_INLINE}) source_group("SIMD Files" FILES ${SIMD_HEADER}) add_library(glm INTERFACE) -target_include_directories(glm INTERFACE ../) + +include(GNUInstallDirs) + +target_include_directories(glm INTERFACE + $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}> + $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}> +) + +install(TARGETS glm EXPORT glm) if(BUILD_STATIC_LIBS) add_library(glm_static STATIC ${ROOT_TEXT} ${ROOT_MD} ${ROOT_NAT} diff --git a/manual.md b/manual.md index a7f6956f..d53df3d7 100644 --- a/manual.md +++ b/manual.md @@ -277,7 +277,26 @@ GLM does not depend on external libraries or headers such as `<GL/gl.h>`, [`<GL/ ### <a name="section1_5"></a> 1.5. Finding GLM with CMake -GLM packages a `glmConfig.cmake` and `glmConfig-version.cmake` in the root of the repository and the release archives. To find GLM with CMake you can pass `-Dglm_DIR=<path to glm root>/cmake/glm/` when running CMake. You can then either add `${GLM_INCLUDE_DIRS}` to your target's include directories, or link against the imported `glm::glm` target. +When installed, GLM provides the CMake package configuration files `glmConfig.cmake` and `glmConfigVersion.cmake`. + +To use these configurations files, you may need to set the `glm_DIR` variable to the directory containing the configuration files `<installation prefix>/lib/cmake/glm/`. + +Use the `find_package` CMake command to load the configurations into your project. Lastly, either link your executable against the `glm::glm` target or add `${GLM_INCLUDE_DIRS}` to your target's include directories: + +```cmake +set(glm_DIR <installation prefix>/lib/cmake/glm) # if necessary +find_package(glm REQUIRED) +target_link_libraries(<your executable> glm::glm) +``` + +To use GLM as a submodule in a project instead, use `add_subdirectory` to expose the same target, or add the directory to your target's + +```cmake +add_subdirectory(glm) +target_link_libraries(<your executable> glm::glm) +# or +target_include_directories(<your executable> glm) +``` --- <div style="page-break-after: always;"> </div> -- 2.29.2 ++++++ glm-0.9.9.8-pkgconfig.patch ++++++ Index: glm-0.9.9.8/CMakeLists.txt =================================================================== --- glm-0.9.9.8.orig/CMakeLists.txt +++ glm-0.9.9.8/CMakeLists.txt @@ -17,6 +17,9 @@ if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_ write_basic_package_version_file("glmConfigVersion.cmake" COMPATIBILITY AnyNewerVersion) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glmConfigVersion.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/glm) + configure_file(glm.pc.in glm.pc @ONLY) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/glm.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) + include(CTest) if(BUILD_TESTING) add_subdirectory(test) Index: glm-0.9.9.8/glm.pc.in =================================================================== --- /dev/null +++ glm-0.9.9.8/glm.pc.in @@ -0,0 +1,7 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +includedir=${prefix}/include + +Name: GLM +Description: OpenGL Mathematics +Version: @GLM_VERSION@ +Cflags: -I${includedir} ++++++ glm-0.9.9.5.tar.gz -> glm-0.9.9.8.tar.gz ++++++ ++++ 300037 lines of diff (skipped)
