summaryrefslogtreecommitdiff
path: root/dev-cpp/highway
diff options
context:
space:
mode:
Diffstat (limited to 'dev-cpp/highway')
-rw-r--r--dev-cpp/highway/Manifest4
-rw-r--r--dev-cpp/highway/highway-1.2.0.ebuild38
-rw-r--r--dev-cpp/highway/highway-1.3.0.ebuild92
-rw-r--r--dev-cpp/highway/highway-1.4.0.ebuild101
-rw-r--r--dev-cpp/highway/highway-9999.ebuild101
-rw-r--r--dev-cpp/highway/metadata.xml17
6 files changed, 353 insertions, 0 deletions
diff --git a/dev-cpp/highway/Manifest b/dev-cpp/highway/Manifest
new file mode 100644
index 000000000000..87f509d43851
--- /dev/null
+++ b/dev-cpp/highway/Manifest
@@ -0,0 +1,4 @@
+DIST highway-1.2.0.tar.gz 2234665 BLAKE2B b92f699c0f2f15fd9d223cf9546125b68a5c12ba9c84f8a3a990129f40bc56a266858e4f99eebe34e47c9904bd9164a138de1af8d405911d4b03bea67532489a SHA512 e94b9cc51c81157ccd6bf4d6163445b1acc1a2667dc2650d1c4aea0a5021989c08dafcb92564fcbecb9445ab2f1779051260be2f5b29c3932803b8a42ed2f824
+DIST highway-1.3.0.tar.gz 3634890 BLAKE2B c8db95b003c1d00e87b42f3d7bf06005873c225ef950f7cb32057f6f690f219a400dcf68220a0dbbb72cdb12f13afabcd9c1b8e9c7e5eb007734bfe4b617c347 SHA512 8b9f4fdc4fa60b6817417959853f5b55bf86aec9d35fc6664dda15179cc55e0a9940f3a46011a84b95263ba342dc47ca1cb93b04481ff4b63d724cce1815d7c6
+DIST highway-1.4.0.tgz 3691557 BLAKE2B 54508ce397d10e719e7c90b9a5421b4fa0263b260f27e266bf43d3213724d7bb7dfa81a4e6df88f8a012d2e851d67e7f70c27851c38b78ac98f380e35aea7e5e SHA512 f3859e5ec2afde7798407a7eef46a48418e4b3b26dc48d5802930aaba040bd627403d0c0e8bae7d43cdd29b3bd5a9abcc2f0c528067eae444195aea46f6669a9
+DIST highway-1.4.0.tgz.asc 228 BLAKE2B 35c691dfe64de52159f1fe3a8e1e066f22d6fb736b48387d821c3b033787c3ad0afce41e31608f09602d7896e060176070598731d1b1afa31ce1e44d2827c131 SHA512 1841c9b62578eeaa7cc4ec8cec2b72a3af0315ab49c8dfb3fa69585b59e0207707957ac374ff3f23e0e8ffbbf9101f359b9ff787cba7b27a0abba220b5a09002
diff --git a/dev-cpp/highway/highway-1.2.0.ebuild b/dev-cpp/highway/highway-1.2.0.ebuild
new file mode 100644
index 000000000000..bc6c50f0fe84
--- /dev/null
+++ b/dev-cpp/highway/highway-1.2.0.ebuild
@@ -0,0 +1,38 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib
+
+DESCRIPTION="Performance-portable, length-agnostic SIMD with runtime dispatch"
+HOMEPAGE="https://github.com/google/highway"
+
+if [[ "${PV}" == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/google/highway.git"
+else
+ SRC_URI="https://github.com/google/highway/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~sparc x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="cpu_flags_arm_neon test"
+
+DEPEND="test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"
+
+RESTRICT="!test? ( test )"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DHWY_CMAKE_ARM7=$(usex cpu_flags_arm_neon)
+ -DBUILD_TESTING=$(usex test)
+ -DHWY_ENABLE_TESTS=$(usex test)
+ -DHWY_WARNINGS_ARE_ERRORS=OFF
+ )
+
+ use test && mycmakeargs+=( "-DHWY_SYSTEM_GTEST=ON" )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/highway/highway-1.3.0.ebuild b/dev-cpp/highway/highway-1.3.0.ebuild
new file mode 100644
index 000000000000..644152cc7493
--- /dev/null
+++ b/dev-cpp/highway/highway-1.3.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib toolchain-funcs
+
+DESCRIPTION="Performance-portable, length-agnostic SIMD with runtime dispatch"
+HOMEPAGE="https://github.com/google/highway"
+
+if [[ "${PV}" == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/google/highway.git"
+else
+ SRC_URI="https://github.com/google/highway/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~sparc x86"
+fi
+
+LICENSE="Apache-2.0"
+SLOT="0"
+IUSE="cpu_flags_arm_neon test"
+
+DEPEND="test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"
+BDEPEND="|| ( >=sys-devel/binutils-2.44:* llvm-core/lld sys-devel/native-cctools )"
+
+RESTRICT="!test? ( test )"
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils, but we don't have a nice way of checking
+ # the gas version.
+ #
+ # Convert this:
+ # ```
+ # GNU assembler (Gentoo 2.44 p1) 2.44
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.44
+ # ```
+ local ver=$($(tc-getAS) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # Check borrowed from sys-apps/pciutils (see bug #966644).
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 44 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.44) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer (g)as using binutils-config."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DHWY_CMAKE_ARM7=$(usex cpu_flags_arm_neon)
+ -DBUILD_TESTING=$(usex test)
+ -DHWY_ENABLE_TESTS=$(usex test)
+ -DHWY_WARNINGS_ARE_ERRORS=OFF
+ )
+
+ use test && mycmakeargs+=( "-DHWY_SYSTEM_GTEST=ON" )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/highway/highway-1.4.0.ebuild b/dev-cpp/highway/highway-1.4.0.ebuild
new file mode 100644
index 000000000000..e26cb7d0d0ae
--- /dev/null
+++ b/dev-cpp/highway/highway-1.4.0.ebuild
@@ -0,0 +1,101 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib toolchain-funcs
+
+DESCRIPTION="Performance-portable, length-agnostic SIMD with runtime dispatch"
+HOMEPAGE="https://github.com/google/highway"
+
+if [[ "${PV}" == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/google/highway.git"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/janwassenberg.asc
+ inherit verify-sig
+
+ # XXX: Drop rename after 1.4.0
+ SRC_URI="
+ https://github.com/google/highway/releases/download/${PV}/${P}.tar.gz -> ${P}.tgz
+ verify-sig? ( https://github.com/google/highway/releases/download/${PV}/${P}.tar.gz.asc -> ${P}.tgz.asc )
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-janwassenberg )"
+fi
+
+LICENSE="|| ( Apache-2.0 BSD ) CC0-1.0"
+SLOT="0"
+IUSE="cpu_flags_arm_neon test"
+
+DEPEND="test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"
+BDEPEND+=" || ( >=sys-devel/binutils-2.44:* llvm-core/lld sys-devel/native-cctools )"
+
+RESTRICT="!test? ( test )"
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils, but we don't have a nice way of checking
+ # the gas version.
+ #
+ # Convert this:
+ # ```
+ # GNU assembler (Gentoo 2.44 p1) 2.44
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.44
+ # ```
+ local ver=$($(tc-getAS) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # Check borrowed from sys-apps/pciutils (see bug #966644).
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 44 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.44) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer (g)as using binutils-config."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DHWY_CMAKE_ARM7=$(usex cpu_flags_arm_neon)
+ -DBUILD_TESTING=$(usex test)
+ -DHWY_ENABLE_TESTS=$(usex test)
+ -DHWY_WARNINGS_ARE_ERRORS=OFF
+ )
+
+ use test && mycmakeargs+=( "-DHWY_SYSTEM_GTEST=ON" )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/highway/highway-9999.ebuild b/dev-cpp/highway/highway-9999.ebuild
new file mode 100644
index 000000000000..e26cb7d0d0ae
--- /dev/null
+++ b/dev-cpp/highway/highway-9999.ebuild
@@ -0,0 +1,101 @@
+# Copyright 2021-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake-multilib toolchain-funcs
+
+DESCRIPTION="Performance-portable, length-agnostic SIMD with runtime dispatch"
+HOMEPAGE="https://github.com/google/highway"
+
+if [[ "${PV}" == *9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/google/highway.git"
+else
+ VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/janwassenberg.asc
+ inherit verify-sig
+
+ # XXX: Drop rename after 1.4.0
+ SRC_URI="
+ https://github.com/google/highway/releases/download/${PV}/${P}.tar.gz -> ${P}.tgz
+ verify-sig? ( https://github.com/google/highway/releases/download/${PV}/${P}.tar.gz.asc -> ${P}.tgz.asc )
+ "
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+ BDEPEND="verify-sig? ( sec-keys/openpgp-keys-janwassenberg )"
+fi
+
+LICENSE="|| ( Apache-2.0 BSD ) CC0-1.0"
+SLOT="0"
+IUSE="cpu_flags_arm_neon test"
+
+DEPEND="test? ( dev-cpp/gtest[${MULTILIB_USEDEP}] )"
+BDEPEND+=" || ( >=sys-devel/binutils-2.44:* llvm-core/lld sys-devel/native-cctools )"
+
+RESTRICT="!test? ( test )"
+
+check_binutils_version() {
+ if [[ -z ${I_KNOW_WHAT_I_AM_DOING} ]] && ! tc-ld-is-gold && ! tc-ld-is-lld ; then
+ # Okay, hopefully it's Binutils, but we don't have a nice way of checking
+ # the gas version.
+ #
+ # Convert this:
+ # ```
+ # GNU assembler (Gentoo 2.44 p1) 2.44
+ # Copyright (C) 2022 Free Software Foundation, Inc.
+ # This program is free software; you may redistribute it under the terms of
+ # the GNU General Public License version 3 or (at your option) a later version.
+ # This program has absolutely no warranty.
+ # ```
+ #
+ # into...
+ # ```
+ # 2.44
+ # ```
+ local ver=$($(tc-getAS) --version 2>&1 | head -n 1 | rev | cut -d' ' -f1 | rev)
+
+ if ! [[ ${ver} =~ [0-9].[0-9][0-9] ]] ; then
+ # Skip if unrecognised format so we don't pass something
+ # odd into ver_cut.
+ return
+ fi
+
+ ver_major=$(ver_cut 1 "${ver}")
+ ver_minor=$(ver_cut 2 "${ver}")
+
+ # Check borrowed from sys-apps/pciutils (see bug #966644).
+ if [[ ${ver_major} -eq 2 && ${ver_minor} -lt 44 ]] ; then
+ eerror "Old version of binutils activated! ${P} cannot be built with an old version."
+ eerror "Please follow these steps:"
+ eerror "1. Select a newer binutils (>= 2.44) using binutils-config"
+ eerror " (If no such version is installed, run emerge -v1 sys-devel/binutils)"
+ eerror "2. Run: . /etc/profile"
+ eerror "3. Try emerging again with: emerge -v1 ${CATEGORY}/${P}"
+ eerror "4. Complete your world upgrade if you were performing one."
+ eerror "5. Perform a depclean (emerge -acv)"
+ eerror "\tYou MUST depclean after every world upgrade in future!"
+ die "Old binutils found! Change to a newer (g)as using binutils-config."
+ fi
+ fi
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_binutils_version
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DHWY_CMAKE_ARM7=$(usex cpu_flags_arm_neon)
+ -DBUILD_TESTING=$(usex test)
+ -DHWY_ENABLE_TESTS=$(usex test)
+ -DHWY_WARNINGS_ARE_ERRORS=OFF
+ )
+
+ use test && mycmakeargs+=( "-DHWY_SYSTEM_GTEST=ON" )
+
+ cmake_src_configure
+}
diff --git a/dev-cpp/highway/metadata.xml b/dev-cpp/highway/metadata.xml
new file mode 100644
index 000000000000..a13cb75ef4ae
--- /dev/null
+++ b/dev-cpp/highway/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person" proxied="yes">
+ <email>dnovomesky@gmail.com</email>
+ <name>Daniel Novomesky</name>
+ </maintainer>
+ <maintainer type="project" proxied="proxy">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription>
+ Highway is a C++ library for SIMD (Single Instruction, Multiple Data),
+ i.e. applying the same operation to multiple 'lanes' using a single CPU instruction.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>