diff options
Diffstat (limited to 'dev-cpp/xsimd')
| -rw-r--r-- | dev-cpp/xsimd/Manifest | 1 | ||||
| -rw-r--r-- | dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch | 58 | ||||
| -rw-r--r-- | dev-cpp/xsimd/metadata.xml | 2 | ||||
| -rw-r--r-- | dev-cpp/xsimd/xsimd-13.2.0.ebuild | 2 | ||||
| -rw-r--r-- | dev-cpp/xsimd/xsimd-14.0.0.ebuild | 6 | ||||
| -rw-r--r-- | dev-cpp/xsimd/xsimd-14.2.0.ebuild | 70 |
6 files changed, 134 insertions, 5 deletions
diff --git a/dev-cpp/xsimd/Manifest b/dev-cpp/xsimd/Manifest index 2619e028ad00..480e7e0bd710 100644 --- a/dev-cpp/xsimd/Manifest +++ b/dev-cpp/xsimd/Manifest @@ -1,2 +1,3 @@ DIST xsimd-13.2.0.tar.gz 269287 BLAKE2B 596d348e32cd6cde6112d7dee304d44111db755eb5827c6c55a57c2803a65956ef4660784748c6f127c28c80c62689d9956363bbc49ef9d2edf5f1f8b428af55 SHA512 3825626547b0dd9b58f306bc89e9b3bc6dd778ad3811b7828e50fc16ae102574255b53f2b0714995de2bd6f9eb7b2c5d266a1a24fbfdf5420dc5e94d7dcbb522 DIST xsimd-14.0.0.tar.gz 306182 BLAKE2B 8f17b86916cb7f88d8ba5f67abe063a514aa6707ed465a1a654fdcc9a59080ac27e2ab7b525eb289bfacf83d93a5b2fbddde46a6d99e819fc1dfbe9b1e591e98 SHA512 f1d9bc50482a52a7b1891637c4e054eeafed0503b938ef07050fea8354e215b9483bafb17485b22fca8d715ddd7c79f03af352116487558d610d4e03d7dbcf4e +DIST xsimd-14.2.0.tar.gz 339961 BLAKE2B 7f8253f7a6531d01678a51ec21bd15224a52da1b97ae94f9ba94e6d33aa97664d4e58d087206654a9fff37ef0fc11494296e87bdcc74c4ac2f92f5f2cd6de18f SHA512 5a93511719b5460fa27248d7bbfda61a72fd32d67c9dbffee26686d57b54042957e9ed8a7b55923677122e04f0c2f4ba5f92b54028cfb2f4328d45f2858b3bd6 diff --git a/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch b/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch new file mode 100644 index 000000000000..6dca6f7b84ba --- /dev/null +++ b/dev-cpp/xsimd/files/xsimd-14.2.0-no-march.patch @@ -0,0 +1,58 @@ +We both want to respect the user's CFLAGS, but also, not all of our arches support +-march or -mtune. +--- a/benchmark/CMakeLists.txt ++++ b/benchmark/CMakeLists.txt +@@ -30,7 +30,6 @@ + + if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Intel") + if(NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native") + endif() + + if(NOT MSVC) +--- a/examples/CMakeLists.txt ++++ b/examples/CMakeLists.txt +@@ -26,7 +26,6 @@ + + if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Intel") + if (NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=native -mtune=native") + endif() + if(NOT CMAKE_CXX_COMPILER_ID MATCHES Clang) # We are using clang-cl + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fopenmp") +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -42,8 +42,6 @@ + + # Note: to compile on ARM (or cross compile), you may need to add the following: + # -DTARGET_ARCH="armv8-a -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi" +-set(TARGET_ARCH "native" CACHE STRING "Target architecture arguments") +-string(REGEX MATCH "emulated\\<[0-9]+\\>" TARGET_EMULATED ${TARGET_ARCH}) + + if (TARGET_EMULATED) + message(STATUS "Using emulated target: ${TARGET_EMULATED}") +@@ -100,7 +99,6 @@ + include_directories(/usr/${ARM_ARCH_DIRECTORY}/include/) + if(NOT CMAKE_CXX_FLAGS MATCHES "-march") + message(STATUS "SETTING ARCH TO ${TARGET_ARCH}") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=${TARGET_ARCH}") + endif() + if(ARM_ARCH_DIRECTORY MATCHES "arm-linux-gnueabi") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=neon -mfloat-abi=softfp -target arm-linux-gnueabi") +@@ -110,16 +108,13 @@ + message(STATUS "CMAKE_CXX_FLAGS: ${CMAKE_CXX_FLAGS}") + message(STATUS "CMAKE_CXX_LINK_EXECUTABLE: ${CMAKE_CXX_LINK_EXECUTABLE}") + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "^ppc64" OR ${CMAKE_SYSTEM_PROCESSOR} MATCHES "aarch64") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mcpu=${TARGET_ARCH} -mtune=${TARGET_ARCH}") + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "riscv64") + # Nothing specific + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "powerpc") + # Nothing specific + elseif(${CMAKE_SYSTEM_PROCESSOR} MATCHES "s390x") +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=z14 -mzvector") + elseif(NOT WIN32 AND NOT EMSCRIPTEN) + if(TARGET_ARCH AND NOT CMAKE_CXX_FLAGS MATCHES "-march" AND NOT CMAKE_CXX_FLAGS MATCHES "-arch" AND NOT CMAKE_OSX_ARCHITECTURES) +- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=${TARGET_ARCH}") + endif() + endif() + endif() diff --git a/dev-cpp/xsimd/metadata.xml b/dev-cpp/xsimd/metadata.xml index c1aa073d78a3..0ddba6e66f1e 100644 --- a/dev-cpp/xsimd/metadata.xml +++ b/dev-cpp/xsimd/metadata.xml @@ -8,5 +8,5 @@ <upstream> <doc>https://xsimd.readthedocs.io/en/latest/</doc> </upstream> - <origin>gentoo-staging</origin> + <origin>liguros-repo</origin> </pkgmetadata>
\ No newline at end of file diff --git a/dev-cpp/xsimd/xsimd-13.2.0.ebuild b/dev-cpp/xsimd/xsimd-13.2.0.ebuild index 4a0d3c134b39..dd799720c404 100644 --- a/dev-cpp/xsimd/xsimd-13.2.0.ebuild +++ b/dev-cpp/xsimd/xsimd-13.2.0.ebuild @@ -3,7 +3,7 @@ EAPI=8 -PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_COMPAT=( python3_{11..13} ) inherit cmake python-any-r1 DESCRIPTION="C++ wrappers for SIMD intrinsics" diff --git a/dev-cpp/xsimd/xsimd-14.0.0.ebuild b/dev-cpp/xsimd/xsimd-14.0.0.ebuild index d3103e1cec8b..575c78b432f5 100644 --- a/dev-cpp/xsimd/xsimd-14.0.0.ebuild +++ b/dev-cpp/xsimd/xsimd-14.0.0.ebuild @@ -1,9 +1,9 @@ -# Copyright 2023-2025 Gentoo Authors +# Copyright 2023-2026 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 -PYTHON_COMPAT=( python3_{10..14} ) +PYTHON_COMPAT=( python3_{11..14} ) inherit cmake python-any-r1 DESCRIPTION="C++ wrappers for SIMD intrinsics" @@ -13,7 +13,7 @@ SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="amd64 arm ~arm64 ~hppa ~loong ~ppc ppc64 ~riscv ~s390 ~sparc x86" IUSE="doc test" RESTRICT="!test? ( test )" diff --git a/dev-cpp/xsimd/xsimd-14.2.0.ebuild b/dev-cpp/xsimd/xsimd-14.2.0.ebuild new file mode 100644 index 000000000000..3ab9fac1271e --- /dev/null +++ b/dev-cpp/xsimd/xsimd-14.2.0.ebuild @@ -0,0 +1,70 @@ +# Copyright 2023-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) +inherit cmake python-any-r1 + +DESCRIPTION="C++ wrappers for SIMD intrinsics" +HOMEPAGE="https://github.com/xtensor-stack/xsimd" +SRC_URI="https://github.com/xtensor-stack/${PN}/archive/refs/tags/${PV}.tar.gz + -> ${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="doc test" +RESTRICT="!test? ( test )" + +BDEPEND=" + doc? ( + app-text/doxygen + $(python_gen_any_dep ' + dev-python/breathe[${PYTHON_USEDEP}] + dev-python/sphinx[${PYTHON_USEDEP}] + dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}] + ') + ) + test? ( dev-cpp/doctest )" + +PATCHES=( + "${FILESDIR}"/${PN}-14.0.0-c++17.patch + "${FILESDIR}"/${P}-no-march.patch +) + +python_check_deps() { + python_has_version "dev-python/sphinx[${PYTHON_USEDEP}]" && + python_has_version "dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]" && + python_has_version "dev-python/breathe[${PYTHON_USEDEP}]" + +} + +pkg_setup() { + use doc && python-any-r1_pkg_setup +} + +src_prepare() { + sed -i \ + -e '/fPIC/d' \ + test/CMakeLists.txt \ + || die + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DBUILD_TESTS=$(usex test) + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && emake -C docs html +} + +src_install() { + use doc && HTML_DOCS=( docs/build/html/* ) + cmake_src_install +} |
