From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <gentoo-commits+bounces-1197527-garchives=archives.gentoo.org@lists.gentoo.org>
Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by finch.gentoo.org (Postfix) with ESMTPS id B5429138359
	for <garchives@archives.gentoo.org>; Tue, 18 Aug 2020 10:14:01 +0000 (UTC)
Received: from pigeon.gentoo.org (localhost [127.0.0.1])
	by pigeon.gentoo.org (Postfix) with SMTP id C44E9E088F;
	Tue, 18 Aug 2020 10:14:00 +0000 (UTC)
Received: from smtp.gentoo.org (woodpecker.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by pigeon.gentoo.org (Postfix) with ESMTPS id A1131E088F
	for <gentoo-commits@lists.gentoo.org>; Tue, 18 Aug 2020 10:14:00 +0000 (UTC)
Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
	(No client certificate requested)
	by smtp.gentoo.org (Postfix) with ESMTPS id 911F534F4CB
	for <gentoo-commits@lists.gentoo.org>; Tue, 18 Aug 2020 10:13:59 +0000 (UTC)
Received: from localhost.localdomain (localhost [IPv6:::1])
	by oystercatcher.gentoo.org (Postfix) with ESMTP id 4E842328
	for <gentoo-commits@lists.gentoo.org>; Tue, 18 Aug 2020 10:13:58 +0000 (UTC)
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Content-Transfer-Encoding: 8bit
Content-type: text/plain; charset=UTF-8
Reply-To: gentoo-dev@lists.gentoo.org, "Andreas Sturmlechner" <asturm@gentoo.org>
Message-ID: <1597745621.b91a3525b936c1510e18570acb34edac890e7cff.asturm@gentoo>
Subject: [gentoo-commits] repo/gentoo:master commit in: media-libs/ilmbase/, media-libs/ilmbase/files/
X-VCS-Repository: repo/gentoo
X-VCS-Files: media-libs/ilmbase/files/ilmbase-2.5.2-musl.patch media-libs/ilmbase/ilmbase-2.5.2.ebuild
X-VCS-Directories: media-libs/ilmbase/files/ media-libs/ilmbase/
X-VCS-Committer: asturm
X-VCS-Committer-Name: Andreas Sturmlechner
X-VCS-Revision: b91a3525b936c1510e18570acb34edac890e7cff
X-VCS-Branch: master
Date: Tue, 18 Aug 2020 10:13:58 +0000 (UTC)
Precedence: bulk
List-Post: <mailto:gentoo-commits@lists.gentoo.org>
List-Help: <mailto:gentoo-commits+help@lists.gentoo.org>
List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org>
List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org>
List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org>
X-BeenThere: gentoo-commits@lists.gentoo.org
X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply
X-Archives-Salt: c8070730-4dbf-4c64-8a8c-1b34d8a765a7
X-Archives-Hash: 26590c1e5e9e13bb513d71d63d593b7a

commit:     b91a3525b936c1510e18570acb34edac890e7cff
Author:     Bernd Waibel <waebbl <AT> gmail <DOT> com>
AuthorDate: Mon Aug 17 20:16:16 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Aug 18 10:13:41 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b91a3525

media-libs/ilmbase: fix build against musl

Reported-by: tonemgub <AT> cool.fr.nf <tonemgub@cool.fr.nf>
Closes: https://bugs.gentoo.org/737474
Package-Manager: Portage-3.0.2, Repoman-2.3.23
Signed-off-by: Bernd Waibel <waebbl <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/17152
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-libs/ilmbase/files/ilmbase-2.5.2-musl.patch | 50 +++++++++++++++++++++++
 media-libs/ilmbase/ilmbase-2.5.2.ebuild           |  2 +
 2 files changed, 52 insertions(+)

diff --git a/media-libs/ilmbase/files/ilmbase-2.5.2-musl.patch b/media-libs/ilmbase/files/ilmbase-2.5.2-musl.patch
new file mode 100644
index 00000000000..80f11e44c12
--- /dev/null
+++ b/media-libs/ilmbase/files/ilmbase-2.5.2-musl.patch
@@ -0,0 +1,50 @@
+From c7af102e6bce6638add2f38576ffe9c6741ba768 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Niklas=20Hamb=C3=BCchen?= <mail@nh2.me>
+Date: Thu, 30 Jul 2020 02:21:07 +0200
+Subject: [PATCH] IexMathFpu.cpp: Fix build on non-glibc (e.g. musl libc).
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Originally from:
+https://github.com/void-linux/void-packages/blob/80bbc168faa25448bd3399f4df331b836e74b85c/srcpkgs/ilmbase/patches/musl-_fpstate.patch
+
+Fixes error:
+
+    IlmBase/IexMath/IexMathFpu.cpp: In function ‘void Iex_2_4::FpuControl::restoreControlRegs(const ucontext_t&, bool)’:
+    IlmBase/IexMath/IexMathFpu.cpp:284:38: error: ‘struct _fpstate’ has no member named ‘cw’; did you mean ‘cwd’?
+      284 |     setCw ((ucon.uc_mcontext.fpregs->cw & cwRestoreMask) | cwRestoreVal);
+          |                                      ^~
+          |                                      cwd
+    IlmBase/IexMath/IexMathFpu.cpp:287:20: error: ‘struct Iex_2_4::FpuControl::_fpstate_64’ has no member named ‘magic’
+      287 |     setMxcsr (kfp->magic == 0 ? kfp->mxcsr : 0, clearExceptions);
+          |                    ^~~~~
+
+Signed-off-by: Niklas Hambüchen <mail@nh2.me>
+---
+ IlmBase/IexMath/IexMathFpu.cpp | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/IlmBase/IexMath/IexMathFpu.cpp b/IlmBase/IexMath/IexMathFpu.cpp
+index ceed658e0..439329e50 100644
+--- a/IexMath/IexMathFpu.cpp
++++ b/IexMath/IexMathFpu.cpp
+@@ -281,10 +281,18 @@ restoreControlRegs (const ucontext_t & ucon, bool clearExceptions)
+ inline void
+ restoreControlRegs (const ucontext_t & ucon, bool clearExceptions)
+ {
++#if defined(__GLIBC__) || defined(__i386__)
+     setCw ((ucon.uc_mcontext.fpregs->cw & cwRestoreMask) | cwRestoreVal);
++#else
++    setCw ((ucon.uc_mcontext.fpregs->cwd & cwRestoreMask) | cwRestoreVal);
++#endif
+     
+     _fpstate * kfp = reinterpret_cast<_fpstate *> (ucon.uc_mcontext.fpregs);
++#if defined(__GLIBC__) || defined(__i386__)
+     setMxcsr (kfp->magic == 0 ? kfp->mxcsr : 0, clearExceptions);
++#else
++    setMxcsr (kfp->mxcsr, clearExceptions);
++#endif
+ }
+ 
+ #endif

diff --git a/media-libs/ilmbase/ilmbase-2.5.2.ebuild b/media-libs/ilmbase/ilmbase-2.5.2.ebuild
index 47154bbc258..3e9e28c4411 100644
--- a/media-libs/ilmbase/ilmbase-2.5.2.ebuild
+++ b/media-libs/ilmbase/ilmbase-2.5.2.ebuild
@@ -22,6 +22,8 @@ S="${WORKDIR}/openexr-${PV}/IlmBase"
 
 MULTILIB_WRAPPED_HEADERS=( /usr/include/OpenEXR/IlmBaseConfigInternal.h )
 
+PATCHES=( "${FILESDIR}"/${P}-musl.patch )
+
 multilib_src_configure() {
 	local mycmakeargs=(
 		-DBUILD_TESTING=$(usex test)