--- gentoo/x11-drivers/nvidia-drivers/nvidia-drivers-396.45.ebuild 2018-08-07 07:39:34.000000000 +0000 +++ local/x11-drivers/nvidia-drivers/nvidia-drivers-396.45.ebuild 2018-08-21 22:56:26.069114140 +0000 @@ -303,15 +303,6 @@ # NVIDIA kernel <-> userspace driver config lib donvidia ${NV_OBJ}/libnvidia-cfg.so.${NV_SOVER} - # NVIDIA framebuffer capture library - donvidia ${NV_OBJ}/libnvidia-fbc.so.${NV_SOVER} - - # NVIDIA video encode/decode <-> CUDA - if use kernel_linux; then - donvidia ${NV_OBJ}/libnvcuvid.so.${NV_SOVER} - donvidia ${NV_OBJ}/libnvidia-encode.so.${NV_SOVER} - fi - if use X; then # Xorg DDX driver insinto /usr/$(get_libdir)/xorg/modules/drivers @@ -454,8 +445,25 @@ nv_libdir="${NV_OBJ}"/32 fi + NV_LIBRARIES=( + "libOpenCL.so.1.0.0 ${CL_ROOT}" + "libcuda.so.${NV_SOVER}" + "libnvidia-compiler.so.${NV_SOVER}" + "libnvidia-fatbinaryloader.so.${NV_SOVER}" + "libnvidia-opencl.so.${NV_SOVER}" + "libnvidia-ptxjitcompiler.so.${NV_SOVER}" + ) + + if use kernel_linux; then + NV_LIBRARIES+=( + "libnvcuvid.so.${NV_SOVER}" + "libnvidia-encode.so.${NV_SOVER}" + "libnvidia-ml.so.${NV_SOVER}" + ) + fi + if use X; then - NV_GLX_LIBRARIES=( + NV_LIBRARIES+=( "libEGL.so.$(usex compat ${NV_SOVER} 1.1.0) ${GL_ROOT}" "libEGL_nvidia.so.${NV_SOVER} ${GL_ROOT}" "libGL.so.$(usex compat ${NV_SOVER} 1.7.0) ${GL_ROOT}" @@ -466,55 +474,49 @@ "libGLX.so.0 ${GL_ROOT}" "libGLX_nvidia.so.${NV_SOVER} ${GL_ROOT}" "libGLdispatch.so.0 ${GL_ROOT}" - "libOpenCL.so.1.0.0 ${CL_ROOT}" "libOpenGL.so.0 ${GL_ROOT}" - "libcuda.so.${NV_SOVER}" - "libnvcuvid.so.${NV_SOVER}" - "libnvidia-compiler.so.${NV_SOVER}" "libnvidia-eglcore.so.${NV_SOVER}" - "libnvidia-encode.so.${NV_SOVER}" - "libnvidia-fatbinaryloader.so.${NV_SOVER}" "libnvidia-fbc.so.${NV_SOVER}" "libnvidia-glcore.so.${NV_SOVER}" "libnvidia-glsi.so.${NV_SOVER}" "libnvidia-glvkspirv.so.${NV_SOVER}" "libnvidia-ifr.so.${NV_SOVER}" - "libnvidia-opencl.so.${NV_SOVER}" - "libnvidia-ptxjitcompiler.so.${NV_SOVER}" "libvdpau_nvidia.so.${NV_SOVER}" ) + # Wayland EGL external platform library if use wayland && has_multilib_profile && [[ ${ABI} == "amd64" ]]; then - NV_GLX_LIBRARIES+=( + NV_LIBRARIES+=( "libnvidia-egl-wayland.so.1.0.3" ) fi + # wrapped software rendering libraries for GeForce 8 series if use kernel_linux && has_multilib_profile && [[ ${ABI} == "amd64" ]]; then - NV_GLX_LIBRARIES+=( + NV_LIBRARIES+=( "libnvidia-wfb.so.${NV_SOVER}" ) fi + # thread local storage support for NVIDIA OpenGL libraries if use kernel_FreeBSD; then - NV_GLX_LIBRARIES+=( + NV_LIBRARIES+=( "libnvidia-tls.so.${NV_SOVER}" ) fi if use kernel_linux; then - NV_GLX_LIBRARIES+=( - "libnvidia-ml.so.${NV_SOVER}" + NV_LIBRARIES+=( "tls/libnvidia-tls.so.${NV_SOVER}" ) fi - - for NV_LIB in "${NV_GLX_LIBRARIES[@]}"; do - donvidia "${nv_libdir}"/${NV_LIB} - done fi + + for NV_LIB in "${NV_LIBRARIES[@]}"; do + donvidia "${nv_libdir}"/${NV_LIB} + done } pkg_preinst() {