| Index | index by Group | index by Distribution | index by Vendor | index by creation date | index by Name | Mirrors | Help | Search |
| Name: libgraphene-1_0-0 | Distribution: openSUSE:Factory:zSystems |
| Version: 1.10.8 | Vendor: openSUSE |
| Release: 1.12 | Build date: Fri Mar 18 18:29:48 2022 |
| Group: System/Libraries | Build host: reproducible |
| Size: 130048 | Source RPM: graphene-1.10.8-1.12.src.rpm |
| Packager: https://bugs.opensuse.org | |
| Url: https://ebassi.github.io/graphene/ | |
| Summary: Thin type layer for graphic libraries | |
When creating graphic libraries you most likely end up dealing with points and rectangles. If you're particularly unlucky, you may end up dealing with affine matrices and 2D transformations. If you're writing a graphic library with 3D transformations, though, you are going to hit the jackpot: 4x4 matrices, projections, transformations, vectors, and quaternions. This library provides types and their relative API; it does not deal with windowing system surfaces, drawing, scene graphs, or input. You're supposed to do that yourself, in your own canvas implementation, which is the whole point of writing the library in the first place.
MIT
* Fri Mar 18 2022 Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 1.10.8:
+ ray:
- simplify NaN checking.
- Improve intersection
+ Build fixes.
+ SIMD:
- Make reciprocal operations 0-safe.
- Add simplified scalar reciprocal.
+ tests:
- Fix installed introspection test.
- Add ray intersection unit.
+ Fix detection of AArch64.
+ Documentation fixes.
* Thu Apr 15 2021 Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 1.10.6:
+ Hide GRAPHENE_SIMD_S from the introspection data.
+ Nudge ray axis when intersecting a box.
- Changes from version 1.10.4:
+ Add ARM NEON support when building with Visual Studio.
+ Build fix on ARM64 Windows.
+ Drop deprecated "python3" Meson module.
+ Fix detection of non-intersecting boxes.
+ Only enable SSE2 on x86_64.
+ Use the compiler-appropriate alignment attributes.
+ Change introspection option to a yielding feature.
- Change -Dintrospection=true meson parameter to
- Dintrospection=enabled: follow upstream build system changes.
- Wrap -Dsse2=true meson parameter into %ifarch x86_64: 32bit
builds for example do not support sse2 (likely boo#1184678).
* Thu Jan 28 2021 Bjørn Lie <bjorn.lie@gmail.com>
- Pass conditional Darm_neon=false instead of Darm-neon=true to
meson, fix build for armv7.
- Stop passing Dbenchmarks=true, no longer recognized nor used.
* Tue Jun 23 2020 Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 1.10.2:
+ Disable SSE on 32bit builds on Windows with MSVC
+ Add more documentation on the conventions used by matrix
operations
+ Fix Euler angles/matrix conversion
+ Various bugs fixed.
* Tue May 05 2020 Dominique Leuenberger <dimstar@opensuse.org>
- Use %{_libexecdir} instead of %{_prefix}/lib: follow the package
installer definition.
* Mon Sep 09 2019 Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 1.10.0:
+ API additions, mostly driven by Gthree:
- Add graphene_matrix_decompose().
- Add intersection methods to graphene_ray_t.
- graphene_triangle_init_from_float().
- graphene_triangle_get_uv().
+ Fix graphene_ray_transform().
+ Documentation fixes.
* Fri Sep 06 2019 luke@ljones.dev
- Update to version 1.9.6:
+ Add radians based initialisers for graphene_euler_t.
+ Use pragma once for the header inclusion guard.
+ Remove unused function (#159)
+ Add multiply(), scale(), and add() operators to
graphene_quaternion_t.
+ Add lerp() operator to all vector types.
+ Add graphene_plane_transform()
+ Documentation updates for graphene_ray_t.
+ Fix graphene_box_get_center() and.
graphene_box_get_bounding_sphere() (#165)
+ Ensure that we detect empty or infinite boxes in the.
graphene_box_t API.
- Changes from version 1.9.4:
+ Graphene now uses an ancillary library called µTest for its
test suite; this means it's possible to build and run the test
suite without necessarily depending on GLib.
+ the conversion of the Euler angles type to and from matrices and.
quaternions has been rewritten from scratch, and should not only
be finally correct, but it should also cover more use cases—namely
the "proper" Euler angles as well as the Tait–Bryan angles.
+ the ARM NEON implementation of the SIMD types has been improved,
fixed, and tested, so it's not marked as experimental any more.
+ Require Meson ≥ 0.50.1.
+ Fix graphene_quaternion_equal() to consider the orientation, not
just the component equality.
+ Fix graphene_quaternion_slerp() to always interpolate along the
shortest path.
+ Re-implement the conversion of graphene_euler_t to and from
graphene_matrix_t and graphene_quaternion_t.
+ Add graphene_rectangle_get_area()
+ Document restrictions of graphene_rect_round(), and deprecate the function.
+ Add graphene_rect_round_extents()
+ Port the test suite from GLib's testing utilities to µTest.
+ Remove internal floating point comparisons.
+ Improve the NEON extensions detection code.
+ Fix comparison operators for graphene_simd4f_t on ARM using the
NEON extensions.
+ Remove the "experimental" compiler warning from the ARM NEON
implementation of graphene_simd4f_t.
- Changes from version 1.9.2:
+ Add graphene_rect_scale() method.
+ Fix warning from Meson by dropping unnecessary argument to.
configure_file()
+ Clean up arguments of pkgconfig.generate()
+ Add equality operators to graphene_matrix_t.
+ Add getters for translation components of a graphene_matrix_t.
+ Use darwin_versions argument instead of rolling our own.
+ Add GRAPHENE_RECT_INIT_ZERO
* Mon Mar 25 2019 Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 1.8.6:
+ Bug fixes, bug fixes everywhere! Also: documentation changes to
clarify what we do behind the veil of the various matrix
multiplication functions. Hopefully, this should help people
using Graphene especially when it comes to integration with
other libraries.
+ Fix matrix multiplication when the result matrix is also one of
the operands.
+ Fix check when converting a 4x4 matrix into an affine
transformation matrix.
+ Fix interpolation between matrices with a perspective
component.
+ Documentation fixes for matrix/matrix and matrix/vector
multiplication operators.
- Changes from version 1.8.4:
+ Mostly a bug fixing release, with an especially glaring bug fix
in the point transformation function of graphene_matrix_t that
was found thanks to GTK 4. Now the function is covered by the
test suite, so it should not regress.
+ Another major fix is the ensuring that we have a description of
the SIMD types through introspection, which means that language
bindings can finally know how big every other structure using
them is. The SIMD API is still not available through
introspection, as it's a pure C convenience.
+ Require Meson ≥ 0.48.0.
+ Fix matrix/point transformation.
+ Build fixes for MSVC.
+ Introspection fixes for bool.
+ Fix the InitOnce checks on Windows.
+ Correctly parse SIMD types for introspection.
+ Build fixes for the pkg-config file.
+ Documentation fixes:
- Clarify matrix/vector/point multiplication.
- Clarify plane description.
- Clarify the units for the matrix skew factors.
- Document use of graphene-gobject with Meson.
* Thu Jun 14 2018 bjorn.lie@gmail.com
- Update to version 1.8.2:
+ The main change is that we've now disabled SIMD optimisations
on 32 bit Intel architectures; there aren't many of those left,
and in general compilers have been less than stellar when
supporting SIMD types on them. This is especially problematic
when it comes to using Graphene types inside other allocated
structures, where SIMD alignment rules break system allocators
on platforms like Windows. To avoid introducing weird bugs, if
you're on 32 bit IA, you're only going to have access to the
scalar SIMD implementation.
* Fri Feb 23 2018 bjorn.lie@gmail.com
- Update to version 1.8.0:
+ No new API, this cycle, but it's time to spin a new stable
release.
+ The major news for this release is that we dropped the
Autotools build from the repository; Graphene is now built
exclusively with Meson.
+ We've added various fixes to the build on macOS, in order to
maintain compatibility with the old Autotools build.
+ The variables in the pkg-config file that expose the SIMD
functionality built inside Graphene have been updated, to
ensure that they can be easily consumed by other projects;
instead of a single string that needs to be split, we now
expose boolean variables for all SIMD implementations.
+ We've also improved the ability to use Graphene as a Meson
sub-project; this allows Meson to check out, build, and depend
on Graphene when building complex projects, like GTK. This is
really useful inside CI pipelines, as it minimises the amount
of separate steps needed when setting up the build.
- Update options passed to meson, following upstream changes:
gtk_doc=true, gobject_types=true, introspection=true,
gcc_vector=true, sse2=true, arm-neon=true, tests=true and
benchmarks=true.
/usr/lib64/libgraphene-1.0.so.0 /usr/lib64/libgraphene-1.0.so.0.1000.8 /usr/share/licenses/libgraphene-1_0-0 /usr/share/licenses/libgraphene-1_0-0/LICENSE.txt
Generated by rpm2html 1.8.1
Fabrice Bellet, Wed Oct 22 23:18:26 2025