Lines 174-184
pkg_setup() {
Link Here
|
174 |
|
174 |
|
175 |
src_prepare() { |
175 |
src_prepare() { |
176 |
if use tools; then |
176 |
if use tools; then |
177 |
cp "${DISTDIR}"/nvml.h-${PV} "${S}"/nvidia-settings-${PV}/src/nvml.h || die |
177 |
cp "${DISTDIR}"/nvml.h-${PV} "${WORKDIR}"/nvidia-settings-${PV}/src/nvml.h || die |
178 |
sed -i -e 's|-lnvidia-ml|-L../../ &|g' nvidia-settings-${PV}/src/Makefile || die |
178 |
sed -i -e 's|-lnvidia-ml|-L../../ &|g' "${WORKDIR}"/nvidia-settings-${PV}/src/Makefile || die |
179 |
fi |
179 |
fi |
180 |
|
180 |
|
181 |
eapply "${FILESDIR}"/${P}-profiles-rc.patch |
181 |
use kernel_linux && eapply "${FILESDIR}"/${P}-profiles-rc.patch |
182 |
|
182 |
|
183 |
if use pax_kernel; then |
183 |
if use pax_kernel; then |
184 |
ewarn "Using PAX patches is not supported. You will be asked to" |
184 |
ewarn "Using PAX patches is not supported. You will be asked to" |
Lines 205-211
src_compile() {
Link Here
|
205 |
fi |
205 |
fi |
206 |
|
206 |
|
207 |
if use tools; then |
207 |
if use tools; then |
208 |
emake -C "${S}"/nvidia-settings-${PV}/src \ |
208 |
emake -C "${WORKDIR}"/nvidia-settings-${PV}/src \ |
209 |
AR="$(tc-getAR)" \ |
209 |
AR="$(tc-getAR)" \ |
210 |
CC="$(tc-getCC)" \ |
210 |
CC="$(tc-getCC)" \ |
211 |
LIBDIR="$(get_libdir)" \ |
211 |
LIBDIR="$(get_libdir)" \ |
Lines 214-220
src_compile() {
Link Here
|
214 |
DO_STRIP= \ |
214 |
DO_STRIP= \ |
215 |
build-xnvctrl |
215 |
build-xnvctrl |
216 |
|
216 |
|
217 |
emake -C "${S}"/nvidia-settings-${PV}/src \ |
217 |
emake -C "${WORKDIR}"/nvidia-settings-${PV}/src \ |
218 |
CC="$(tc-getCC)" \ |
218 |
CC="$(tc-getCC)" \ |
219 |
GTK3_AVAILABLE=$(usex gtk3 1 0) \ |
219 |
GTK3_AVAILABLE=$(usex gtk3 1 0) \ |
220 |
LD="$(tc-getCC)" \ |
220 |
LD="$(tc-getCC)" \ |
Lines 283-300
src_install() {
Link Here
|
283 |
elif use kernel_FreeBSD; then |
283 |
elif use kernel_FreeBSD; then |
284 |
if use x86-fbsd; then |
284 |
if use x86-fbsd; then |
285 |
insinto /boot/modules |
285 |
insinto /boot/modules |
286 |
doins "${S}/src/nvidia.kld" |
286 |
doins "${S}/src/nvidia/nvidia.kld" |
287 |
fi |
287 |
fi |
288 |
|
288 |
|
289 |
exeinto /boot/modules |
289 |
exeinto /boot/modules |
290 |
doexe "${S}/src/nvidia.ko" |
290 |
doexe "${S}/src/nvidia/nvidia.ko" |
291 |
fi |
291 |
fi |
292 |
|
292 |
|
293 |
# NVIDIA kernel <-> userspace driver config lib |
293 |
# NVIDIA kernel <-> userspace driver config lib |
294 |
donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER} |
294 |
use kernel_linux && donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER} |
295 |
|
295 |
|
296 |
# NVIDIA framebuffer capture library |
296 |
# NVIDIA framebuffer capture library |
297 |
donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER} |
297 |
use kernel_linux && donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER} |
298 |
|
298 |
|
299 |
# NVIDIA video encode/decode <-> CUDA |
299 |
# NVIDIA video encode/decode <-> CUDA |
300 |
if use kernel_linux; then |
300 |
if use kernel_linux; then |
Lines 312-318
src_install() {
Link Here
|
312 |
/usr/$(get_libdir)/opengl/nvidia/extensions |
312 |
/usr/$(get_libdir)/opengl/nvidia/extensions |
313 |
|
313 |
|
314 |
# Xorg nvidia.conf |
314 |
# Xorg nvidia.conf |
315 |
if has_version '>=x11-base/xorg-server-1.16'; then |
315 |
if use kernel_linux && has_version '>=x11-base/xorg-server-1.16'; then |
316 |
insinto /usr/share/X11/xorg.conf.d |
316 |
insinto /usr/share/X11/xorg.conf.d |
317 |
newins {,50-}nvidia-drm-outputclass.conf |
317 |
newins {,50-}nvidia-drm-outputclass.conf |
318 |
fi |
318 |
fi |
Lines 343-349
src_install() {
Link Here
|
343 |
# Helper Apps |
343 |
# Helper Apps |
344 |
exeinto /opt/bin/ |
344 |
exeinto /opt/bin/ |
345 |
|
345 |
|
346 |
if use X; then |
346 |
if use kernel_linux && use X; then |
347 |
doexe ${NV_OBJ}/nvidia-xconfig |
347 |
doexe ${NV_OBJ}/nvidia-xconfig |
348 |
|
348 |
|
349 |
insinto /etc/vulkan/icd.d |
349 |
insinto /etc/vulkan/icd.d |
Lines 372-378
src_install() {
Link Here
|
372 |
fi |
372 |
fi |
373 |
|
373 |
|
374 |
if use tools; then |
374 |
if use tools; then |
375 |
emake -C "${S}"/nvidia-settings-${PV}/src/ \ |
375 |
emake -C "${WORKDIR}"/nvidia-settings-${PV}/src/ \ |
376 |
DESTDIR="${D}" \ |
376 |
DESTDIR="${D}" \ |
377 |
GTK3_AVAILABLE=$(usex gtk3 1 0) \ |
377 |
GTK3_AVAILABLE=$(usex gtk3 1 0) \ |
378 |
LIBDIR="${D}/usr/$(get_libdir)" \ |
378 |
LIBDIR="${D}/usr/$(get_libdir)" \ |
Lines 383-400
src_install() {
Link Here
|
383 |
install |
383 |
install |
384 |
|
384 |
|
385 |
if use static-libs; then |
385 |
if use static-libs; then |
386 |
dolib.a "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a |
386 |
dolib.a "${WORKDIR}"/nvidia-settings-${PV}/src/libXNVCtrl/libXNVCtrl.a |
387 |
|
387 |
|
388 |
insinto /usr/include/NVCtrl |
388 |
insinto /usr/include/NVCtrl |
389 |
doins "${S}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h |
389 |
doins "${WORKDIR}"/nvidia-settings-${PV}/src/libXNVCtrl/*.h |
390 |
fi |
390 |
fi |
391 |
|
391 |
|
392 |
insinto /usr/share/nvidia/ |
392 |
insinto /usr/share/nvidia/ |
393 |
doins nvidia-application-profiles-${PV}-key-documentation |
393 |
if use kernel_FreeBSD; then |
|
|
394 |
doins ${NV_DOC}/nvidia-application-profiles-key-documentation |
395 |
else |
396 |
doins nvidia-application-profiles-${PV}-key-documentation |
397 |
fi |
394 |
|
398 |
|
395 |
insinto /etc/nvidia |
399 |
insinto /etc/nvidia |
396 |
newins \ |
400 |
if use kernel_FreeBSD; then |
397 |
nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc |
401 |
doins ${NV_OBJ}/nvidia-application-profiles-rc |
|
|
402 |
else |
403 |
newins \ |
404 |
nvidia-application-profiles-${PV}-rc nvidia-application-profiles-rc |
405 |
fi |
398 |
|
406 |
|
399 |
# There is no icon in the FreeBSD tarball. |
407 |
# There is no icon in the FreeBSD tarball. |
400 |
use kernel_FreeBSD || \ |
408 |
use kernel_FreeBSD || \ |
Lines 437-465
src_install-libs() {
Link Here
|
437 |
if use X; then |
445 |
if use X; then |
438 |
NV_GLX_LIBRARIES=( |
446 |
NV_GLX_LIBRARIES=( |
439 |
"libEGL.so.1 ${GL_ROOT}" |
447 |
"libEGL.so.1 ${GL_ROOT}" |
440 |
"libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
448 |
"libGL.so.${NV_SOVER} ${GL_ROOT}" |
441 |
"libGL.so.$(usex compat ${NV_SOVER} 1.0.0) ${GL_ROOT}" |
|
|
442 |
"libGLESv1_CM.so.1 ${GL_ROOT}" |
449 |
"libGLESv1_CM.so.1 ${GL_ROOT}" |
443 |
"libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
|
|
444 |
"libGLESv2.so.2 ${GL_ROOT}" |
450 |
"libGLESv2.so.2 ${GL_ROOT}" |
445 |
"libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
|
|
446 |
"libGLX.so.0 ${GL_ROOT}" |
447 |
"libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
448 |
"libGLdispatch.so.0 ${GL_ROOT}" |
449 |
"libOpenCL.so.1.0.0 ${CL_ROOT}" |
450 |
"libOpenGL.so.0 ${GL_ROOT}" |
451 |
"libcuda.so.${NV_SOVER}" |
452 |
"libnvcuvid.so.${NV_SOVER}" |
453 |
"libnvidia-compiler.so.${NV_SOVER}" |
454 |
"libnvidia-eglcore.so.${NV_SOVER}" |
451 |
"libnvidia-eglcore.so.${NV_SOVER}" |
455 |
"libnvidia-encode.so.${NV_SOVER}" |
|
|
456 |
"libnvidia-fatbinaryloader.so.${NV_SOVER}" |
457 |
"libnvidia-fbc.so.${NV_SOVER}" |
458 |
"libnvidia-glcore.so.${NV_SOVER}" |
452 |
"libnvidia-glcore.so.${NV_SOVER}" |
459 |
"libnvidia-glsi.so.${NV_SOVER}" |
453 |
"libnvidia-glsi.so.${NV_SOVER}" |
460 |
"libnvidia-ifr.so.${NV_SOVER}" |
|
|
461 |
"libnvidia-opencl.so.${NV_SOVER}" |
462 |
"libnvidia-ptxjitcompiler.so.${NV_SOVER}" |
463 |
"libvdpau_nvidia.so.${NV_SOVER}" |
454 |
"libvdpau_nvidia.so.${NV_SOVER}" |
464 |
) |
455 |
) |
465 |
|
456 |
|
Lines 485-490
src_install-libs() {
Link Here
|
485 |
|
476 |
|
486 |
if use kernel_linux; then |
477 |
if use kernel_linux; then |
487 |
NV_GLX_LIBRARIES+=( |
478 |
NV_GLX_LIBRARIES+=( |
|
|
479 |
"libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
480 |
"libGLESv1_CM_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
481 |
"libGLESv2_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
482 |
"libGLX.so.0 ${GL_ROOT}" |
483 |
"libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}" |
484 |
"libGLdispatch.so.0 ${GL_ROOT}" |
485 |
"libOpenCL.so.1.0.0 ${CL_ROOT}" |
486 |
"libOpenGL.so.0 ${GL_ROOT}" |
487 |
"libcuda.so.${NV_SOVER}" |
488 |
"libnvcuvid.so.${NV_SOVER}" |
489 |
"libnvidia-compiler.so.${NV_SOVER}" |
490 |
"libnvidia-encode.so.${NV_SOVER}" |
491 |
"libnvidia-fatbinaryloader.so.${NV_SOVER}" |
492 |
"libnvidia-fbc.so.${NV_SOVER}" |
493 |
"libnvidia-ifr.so.${NV_SOVER}" |
494 |
"libnvidia-opencl.so.${NV_SOVER}" |
495 |
"libnvidia-ptxjitcompiler.so.${NV_SOVER}" |
488 |
"libnvidia-ml.so.${NV_SOVER}" |
496 |
"libnvidia-ml.so.${NV_SOVER}" |
489 |
"tls/libnvidia-tls.so.${NV_SOVER}" |
497 |
"tls/libnvidia-tls.so.${NV_SOVER}" |
490 |
) |
498 |
) |