summaryrefslogtreecommitdiff
path: root/media-libs/glm
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/glm')
-rw-r--r--media-libs/glm/Manifest1
-rw-r--r--media-libs/glm/glm-1.0.0-r1.ebuild69
2 files changed, 70 insertions, 0 deletions
diff --git a/media-libs/glm/Manifest b/media-libs/glm/Manifest
index 96036fd0e229..a50ed8b4c57e 100644
--- a/media-libs/glm/Manifest
+++ b/media-libs/glm/Manifest
@@ -6,5 +6,6 @@ AUX glm.pc.in 149 BLAKE2B 9a34ca2590ef006315e004fa6ba0b08469c9da348d8354d0ab6a7e
DIST glm-0.9.9.8.tar.gz 4368032 BLAKE2B 41e4d4a9fbd75c6c6717e43b6a6ae09bb7da3b4b2ee7c5b04308f3aa875b306638b638aca3e457c039845c489fcf0716a080ec2166bf5e9db93c25944f4ba81a SHA512 9484b0c12175414237c5b9486a2990099b1cb727e442f25ecda18b081aa661f7e92a44481f642989553cd3da7992a773441ee5688991bd539ce19fb66a5ce9e8
DIST glm-1.0.0.tar.gz 4523789 BLAKE2B 66c26067085bd5878dc1f6e473c1c8449d2a609351ababd8f893010983b9e20dae8e7cb2c9a4469b7e46592b7d350fda75e2975676b8696288065a7b776a21a5 SHA512 62e22002a6369a54e1f0ee2885a65f2780af7d2a446573e5387b81518f5dc7e8076053837cb99ae850a0166ce8b0f077bed009e8986d9884d01c456ce467553f
EBUILD glm-0.9.9.8-r1.ebuild 1597 BLAKE2B fc44edeb119342ada690a31fe3e7f627b0ed61f9deba507dcdf7e1484a252da5d2bd9a59526683bfbe5678f58b916b86595211ca531fef18247f8f12eff558a9 SHA512 6e78dbd03da031c414ed0bcde42041a662fdd25764d41afc33d7b323b88d55abfdabf657c9d4ee7212f2ecdb87afdb0f8d2202d6858b39746df982038e9f697b
+EBUILD glm-1.0.0-r1.ebuild 1678 BLAKE2B b7f190ac3a3259d4a1e6c2b2641a98672c73a483fd5c34d719747aa6b941b61aab9649e2b0aaa98c3739ab62fcda3e92d6f1f796082c5f245edf31aaacb6d1c6 SHA512 ad7e8ded6ab3a536d90e2ed435bb7669a77471625fdf9e96066652c8f49b59f43ae89cf237099a8ada5589cf40a6d9ba198b1bcc0c708af8af974fc3f9512834
EBUILD glm-1.0.0.ebuild 1604 BLAKE2B aed7c52cc7febd2ce83cb053db385c1971808c21493f1e62ef0480634a112b9744eb09f4c5286538705ffabc261120b1de2c4540d24f2e15bb728e94d2b48c84 SHA512 05e62696467b88bba905bc7f486247b2835b72800ec5026127c0f8884563f60b8437dd5305114d59fcedbe71a3ec13ef020210d97a50b568da279261cbb73dde
MISC metadata.xml 545 BLAKE2B 90098d29455b2202bfce4c4ba4eb53499bbd348d477ad554d6c9561dad4ca9b3083f729dfe2f94224b5ce1b4f515ed0cd4121663c264d57bf8829e6e9c1b245f SHA512 2327ea232b899c7b8d2bf50ed3dba7cfc347c4aa9e31dfa2de50ce5815ef5105da921937081e4b1fb38b1406e65d585a50e3705d78fac39ec54e624bb27c617d
diff --git a/media-libs/glm/glm-1.0.0-r1.ebuild b/media-libs/glm/glm-1.0.0-r1.ebuild
new file mode 100644
index 000000000000..1f037d446d41
--- /dev/null
+++ b/media-libs/glm/glm-1.0.0-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+DESCRIPTION="OpenGL Mathematics"
+HOMEPAGE="http://glm.g-truc.net/"
+SRC_URI="https://github.com/g-truc/glm/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( HappyBunny MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="test cpu_flags_x86_sse2 cpu_flags_x86_sse3 cpu_flags_x86_avx cpu_flags_x86_avx2"
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.9.9.6-simd.patch
+ "${FILESDIR}"/${P}-clang.patch
+ "${FILESDIR}"/${PN}-0.9.9.8-big-endian-tests.patch
+)
+
+DOCS=( manual.md readme.md )
+
+src_configure() {
+ # Header-only library
+ local mycmakeargs=(
+ -DGLM_BUILD_INSTALL=ON
+ -DGLM_BUILD_LIBRARY=OFF
+ -DGLM_BUILD_TESTS=$(usex test)
+ )
+
+ if use test; then
+ # See https://github.com/g-truc/glm/pull/1087
+ # https://bugs.gentoo.org/818235
+ test-flag-CXX -fno-ipa-modref && append-cxxflags -fno-ipa-modref
+
+ mycmakeargs+=(
+ -DGLM_TEST_ENABLE=ON
+ -DGLM_TEST_ENABLE_SIMD_SSE2="$(usex cpu_flags_x86_sse2 ON OFF)"
+ -DGLM_TEST_ENABLE_SIMD_SSE3="$(usex cpu_flags_x86_sse3 ON OFF)"
+ -DGLM_TEST_ENABLE_SIMD_AVX="$(usex cpu_flags_x86_avx ON OFF)"
+ -DGLM_TEST_ENABLE_SIMD_AVX2="$(usex cpu_flags_x86_avx2 ON OFF)"
+ )
+ fi
+
+ cmake_src_configure
+
+ sed \
+ -e "s:@CMAKE_INSTALL_PREFIX@:${EPREFIX}/usr:" \
+ -e "s:@GLM_VERSION@:$(ver_cut 1-3):" \
+ "${FILESDIR}"/glm.pc.in \
+ > "${BUILD_DIR}/glm.pc" || die
+}
+
+src_compile() {
+ # Header-only library
+ if use test; then
+ cmake_src_compile
+ fi
+}
+
+src_install() {
+ cmake_src_install
+
+ insinto /usr/share/pkgconfig
+ doins "${BUILD_DIR}/glm.pc"
+}