Skip to content

Commit

Permalink
net-p2p/xmrig: Fix build with clang15 on i386
Browse files Browse the repository at this point in the history
Upstream issue: xmrig/xmrig#3212
  • Loading branch information
ehaupt committed Feb 19, 2023
1 parent fd4899a commit 4cfb257
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 2 deletions.
2 changes: 0 additions & 2 deletions net-p2p/xmrig/Makefile
Expand Up @@ -12,8 +12,6 @@ LICENSE_FILE= ${WRKSRC}/LICENSE

BROKEN_powerpc64= fails to compile: g++9: error: unrecognized command line option '-maes'; did you mean '-mads'?
BROKEN_riscv64= fails to compile: /nxb-bin/usr/lib/clang/11.0.0/include/cpuid.h:11:2: error: this header is for x86 only
# See: https://github.com/xmrig/xmrig/issues/3212
BROKEN_FreeBSD_14_i386= fails to compile with llvm15 on i386

USES= cmake compiler:c++11-lang ssl
USE_GITHUB= yes
Expand Down
11 changes: 11 additions & 0 deletions net-p2p/xmrig/files/patch-src_crypto_cn_CryptoNight__x86.h
@@ -0,0 +1,11 @@
--- src/crypto/cn/CryptoNight_x86.h.orig 2023-02-02 04:51:11 UTC
+++ src/crypto/cn/CryptoNight_x86.h
@@ -80,7 +80,7 @@ static inline void do_skein_hash(const uint8_t *input,
void (* const extra_hashes[4])(const uint8_t *, size_t, uint8_t *) = {do_blake_hash, do_groestl_hash, do_jh_hash, do_skein_hash};


-#if defined(__i386__) || defined(_M_IX86)
+#if (defined(__i386__) || defined(_M_IX86)) && !(defined(__clang__) && defined(__clang_major__) && (__clang_major__ >= 15))
static inline int64_t _mm_cvtsi128_si64(__m128i a)
{
return ((uint64_t)(uint32_t)_mm_cvtsi128_si32(a) | ((uint64_t)(uint32_t)_mm_cvtsi128_si32(_mm_srli_si128(a, 4)) << 32));

0 comments on commit 4cfb257

Please sign in to comment.