. "${GRIMOIRE}/MESON_FUNCTIONS" SPELL="graphene" VERSION="1.9.2" SOURCE_HASH="sha256:2ea0566ef746d6ca4709ae9fa6a7567178516d12a6be0cd27fd8a43f714e3dbc:UPSTREAM_HASH" SOURCE="${SPELL}-${VERSION}.tar.xz" SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELL}-${VERSION}" SOURCE_URL[0]="${GNOME_URL}/sources/${SPELL}/${VERSION%.*}/${SOURCE}" SOURCE_URL[1]="https://github.com/ebassi/${SPELL}/releases/download/${VERSION}/${SOURCE}" LICENSE[0]="MIT" WEB_SITE="https://ebassi.github.io/graphene/" ENTERED="20190122" SHORT="a thin layer of types for graphic libraries" cat << EOF Graphene provides common types needed to handle 3D transformations: * 2D points * 3D points * triangles * rectangles * quads * quaternions * euler angles * vectors (2, 3, or 4-sized) * matrices * planes * 3D boxes * spheres * frustums Graphene also provides its low-level SIMD vector and matrix types, which are used to implement the API above. All types can be placed on the stack, but provide allocation/free functions for working on the heap as well. The contents of all structure types, unless noted otherwise, should be considered private, and should never be accessed directly. EOF