Gentoo Archives: gentoo-commits

From: Ionen Wolkens <ionen@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: x11-drivers/nvidia-drivers/
Date: Sun, 25 Sep 2022 22:36:05
Message-Id: 1664145291.b936a2e117ce7f7be01fefa5cfda2de31bd5789d.ionen@gentoo
1 commit: b936a2e117ce7f7be01fefa5cfda2de31bd5789d
2 Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
3 AuthorDate: Sun Sep 25 22:26:54 2022 +0000
4 Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org>
5 CommitDate: Sun Sep 25 22:34:51 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b936a2e1
7
8 x11-drivers/nvidia-drivers: adjust clang, recognize KERNEL_CC/LD
9
10 Still feels a bit crude (ideally this should be handled by the
11 linux-mod eclass), but recognizing some env var will let users
12 adjust themselves to some extend for now (e.g. to select different
13 clang version).
14
15 Also keep current CC value if it's clang, albeit not checking
16 tc-ld-is-lld given -fuse-ld=lld means nothing here.
17
18 Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org>
19
20 x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild | 8 +++++---
21 x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild | 8 +++++---
22 x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild | 8 +++++---
23 x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild | 8 +++++---
24 x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild | 8 +++++---
25 x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild | 8 +++++---
26 6 files changed, 30 insertions(+), 18 deletions(-)
27
28 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild
29 index 7a9cab0fed5d..2ad4e5070ba9 100644
30 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild
31 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-390.154.ebuild
32 @@ -118,17 +118,19 @@ pkg_setup() {
33 BUILD_TARGETS="modules"
34
35 if linux_chkconfig_present CC_IS_CLANG; then
36 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
37 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
38 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
39
40 - BUILD_PARAMS+=' CC=${CHOST}-clang'
41 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
42 if linux_chkconfig_present LD_IS_LLD; then
43 - BUILD_PARAMS+=' LD=ld.lld'
44 + : "${KERNEL_LD:=ld.lld}"
45 if linux_chkconfig_present LTO_CLANG_THIN; then
46 # kernel enables cache by default leading to sandbox violations
47 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
48 fi
49 fi
50 fi
51 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
52
53 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
54 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"
55
56 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild
57 index dbd9393ea0bf..1a33c461bb33 100644
58 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild
59 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-470.141.03.ebuild
60 @@ -120,17 +120,19 @@ pkg_setup() {
61 BUILD_TARGETS="modules"
62
63 if linux_chkconfig_present CC_IS_CLANG; then
64 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
65 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
66 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
67
68 - BUILD_PARAMS+=' CC=${CHOST}-clang'
69 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
70 if linux_chkconfig_present LD_IS_LLD; then
71 - BUILD_PARAMS+=' LD=ld.lld'
72 + : "${KERNEL_LD:=ld.lld}"
73 if linux_chkconfig_present LTO_CLANG_THIN; then
74 # kernel enables cache by default leading to sandbox violations
75 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
76 fi
77 fi
78 fi
79 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
80
81 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
82 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"
83
84 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild
85 index 50cb0bbc6344..f90467ba3060 100644
86 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild
87 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-510.85.02.ebuild
88 @@ -123,17 +123,19 @@ pkg_setup() {
89 BUILD_TARGETS="modules"
90
91 if linux_chkconfig_present CC_IS_CLANG; then
92 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
93 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
94 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
95
96 - BUILD_PARAMS+=' CC=${CHOST}-clang'
97 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
98 if linux_chkconfig_present LD_IS_LLD; then
99 - BUILD_PARAMS+=' LD=ld.lld'
100 + : "${KERNEL_LD:=ld.lld}"
101 if linux_chkconfig_present LTO_CLANG_THIN; then
102 # kernel enables cache by default leading to sandbox violations
103 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
104 fi
105 fi
106 fi
107 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
108
109 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
110 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"
111
112 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild
113 index 353d32365a63..92a3dc232374 100644
114 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild
115 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.49.15.ebuild
116 @@ -132,17 +132,19 @@ pkg_setup() {
117 BUILD_TARGETS="modules"
118
119 if linux_chkconfig_present CC_IS_CLANG; then
120 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
121 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
122 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
123
124 - BUILD_PARAMS+=' CC=${CHOST}-clang'
125 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
126 if linux_chkconfig_present LD_IS_LLD; then
127 - BUILD_PARAMS+=' LD=ld.lld'
128 + : "${KERNEL_LD:=ld.lld}"
129 if linux_chkconfig_present LTO_CLANG_THIN; then
130 # kernel enables cache by default leading to sandbox violations
131 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
132 fi
133 fi
134 fi
135 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
136
137 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
138 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"
139
140 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild
141 index b90995aadf68..7e9da0275ad5 100644
142 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild
143 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.65.01.ebuild
144 @@ -132,17 +132,19 @@ pkg_setup() {
145 BUILD_TARGETS="modules"
146
147 if linux_chkconfig_present CC_IS_CLANG; then
148 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
149 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
150 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
151
152 - BUILD_PARAMS+=' CC=${CHOST}-clang'
153 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
154 if linux_chkconfig_present LD_IS_LLD; then
155 - BUILD_PARAMS+=' LD=ld.lld'
156 + : "${KERNEL_LD:=ld.lld}"
157 if linux_chkconfig_present LTO_CLANG_THIN; then
158 # kernel enables cache by default leading to sandbox violations
159 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
160 fi
161 fi
162 fi
163 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
164
165 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
166 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"
167
168 diff --git a/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild b/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild
169 index 66022f11b591..b8881ceb9cd5 100644
170 --- a/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild
171 +++ b/x11-drivers/nvidia-drivers/nvidia-drivers-515.76.ebuild
172 @@ -132,17 +132,19 @@ pkg_setup() {
173 BUILD_TARGETS="modules"
174
175 if linux_chkconfig_present CC_IS_CLANG; then
176 - ewarn "Warning: building ${PN} with a clang-built kernel is experimental"
177 + ewarn "Warning: clang-built kernel detected, using clang for modules (experimental)"
178 + ewarn "Can use KERNEL_CC and KERNEL_LD environment variables to override if needed."
179
180 - BUILD_PARAMS+=' CC=${CHOST}-clang'
181 + tc-is-clang || : "${KERNEL_CC:=${CHOST}-clang}"
182 if linux_chkconfig_present LD_IS_LLD; then
183 - BUILD_PARAMS+=' LD=ld.lld'
184 + : "${KERNEL_LD:=ld.lld}"
185 if linux_chkconfig_present LTO_CLANG_THIN; then
186 # kernel enables cache by default leading to sandbox violations
187 BUILD_PARAMS+=' ldflags-y=--thinlto-cache-dir= LDFLAGS_MODULE=--thinlto-cache-dir='
188 fi
189 fi
190 fi
191 + BUILD_PARAMS+=' ${KERNEL_CC:+CC="${KERNEL_CC}"} ${KERNEL_LD:+LD="${KERNEL_LD}"}'
192
193 if kernel_is -gt ${NV_KERNEL_MAX/./ }; then
194 ewarn "Kernel ${KV_MAJOR}.${KV_MINOR} is either known to break this version of ${PN}"