commit: 4b914dcad9bf86d5f5c7d9c1384f9c9ee28170f8
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 27 10:02:19 2022 +0000
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
CommitDate: Tue Dec 27 11:11:14 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4b914dca
x11-drivers/nvidia-drivers: adjust flags for kernel-open
linux-mod_src_compile normally does not use *FLAGS, but the
kernel blob is a different story and it fails quite easily.
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
x11-drivers/nvidia-drivers/nvidia-drivers-515.86.01.ebuild | 8 ++++++++
x11-drivers/nvidia-drivers/nvidia-drivers-525.47.04.ebuild | 8 ++++++++
x11-drivers/nvidia-drivers/nvidia-drivers-525.60.13.ebuild | 8 ++++++++
3 files changed, 24 insertions(+)
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.86.01.ebuild
b/x11-drivers/nvidia-drivers/nvidia-drivers-515.86.01.ebuild
index c8a19fc25b38..97648a86e8c4 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.86.01.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.86.01.ebuild
@@ -337,7 +337,15 @@ src_compile() {
fi
fi
+ local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS}
o_ldflags=${LDFLAGS}
+ if use kernel-open; then
+ # building the nvidia "blob" fails with lto, and also
need
+ # to strip in case of a different toolchain for the
kernel
+ filter-lto
+ strip-unsupported-flags
+ fi
linux-mod_src_compile
+ CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags}
fi
emake "${NV_ARGS[@]}" -C nvidia-modprobe
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-525.47.04.ebuild
b/x11-drivers/nvidia-drivers/nvidia-drivers-525.47.04.ebuild
index 3d6e9c685aea..bdab775a8f7b 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-525.47.04.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-525.47.04.ebuild
@@ -334,7 +334,15 @@ src_compile() {
fi
fi
+ local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS}
o_ldflags=${LDFLAGS}
+ if use kernel-open; then
+ # building the nvidia "blob" fails with lto, and also
need
+ # to strip in case of a different toolchain for the
kernel
+ filter-lto
+ strip-unsupported-flags
+ fi
linux-mod_src_compile
+ CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags}
fi
emake "${NV_ARGS[@]}" -C nvidia-modprobe
diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-525.60.13.ebuild
b/x11-drivers/nvidia-drivers/nvidia-drivers-525.60.13.ebuild
index 6060ff5b02d2..b3d834f2d113 100644
--- a/x11-drivers/nvidia-drivers/nvidia-drivers-525.60.13.ebuild
+++ b/x11-drivers/nvidia-drivers/nvidia-drivers-525.60.13.ebuild
@@ -333,7 +333,15 @@ src_compile() {
fi
fi
+ local o_cflags=${CFLAGS} o_cxxflags=${CXXFLAGS}
o_ldflags=${LDFLAGS}
+ if use kernel-open; then
+ # building the nvidia "blob" fails with lto, and also
need
+ # to strip in case of a different toolchain for the
kernel
+ filter-lto
+ strip-unsupported-flags
+ fi
linux-mod_src_compile
+ CFLAGS=${o_cflags} CXXFLAGS=${o_cxxflags} LDFLAGS=${o_ldflags}
fi
emake "${NV_ARGS[@]}" -C nvidia-modprobe