commit:     db59e5df68f0dc0d999f07dffb8919b76b784bbf
Author:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 24 21:52:46 2025 +0000
Commit:     Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Mon Feb 24 21:55:26 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=db59e5df

dev-libs/ncnn: fix build with avx512

Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>

 dev-libs/ncnn/files/ncnn-20241226-avx512.patch | 16 ++++++++++++++++
 dev-libs/ncnn/ncnn-20241226.ebuild             |  4 ++++
 2 files changed, 20 insertions(+)

diff --git a/dev-libs/ncnn/files/ncnn-20241226-avx512.patch 
b/dev-libs/ncnn/files/ncnn-20241226-avx512.patch
new file mode 100644
index 000000000000..c4dcf8adb500
--- /dev/null
+++ b/dev-libs/ncnn/files/ncnn-20241226-avx512.patch
@@ -0,0 +1,16 @@
+Quick fix for build with -march that enables avx512f.
+
+This is not where ncnn would include this though, it seems to have
+tendency to put headers not where they're used by in every files
+before including this.
+--- a/src/layer/x86/gemm_int8.h
++++ b/src/layer/x86/gemm_int8.h
+@@ -13,4 +13,8 @@
+ // specific language governing permissions and limitations under the License.
+ 
++#if __AVX512F__
++#include "avx512_mathfun.h"
++#endif
++
+ #if NCNN_RUNTIME_CPU && NCNN_AVX512VNNI && __AVX512F__ && !__AVX512VNNI__
+ void pack_A_tile_int8_avx512vnni(const Mat& A, Mat& AT, int i, int max_ii, 
int k, int max_kk);

diff --git a/dev-libs/ncnn/ncnn-20241226.ebuild 
b/dev-libs/ncnn/ncnn-20241226.ebuild
index 7c8a0a3dd6bc..44bde69b5d13 100644
--- a/dev-libs/ncnn/ncnn-20241226.ebuild
+++ b/dev-libs/ncnn/ncnn-20241226.ebuild
@@ -41,6 +41,10 @@ BDEPEND="
 
 DOCS=( README.md docs/. )
 
+PATCHES=(
+       "${FILESDIR}"/${P}-avx512.patch
+)
+
 pkg_pretend() {
        [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
 }

Reply via email to