Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- HOMEPAGE="http://www.nvidia.com/object/unix.html"
- DESCRIPTION="NVidia Graphics Driver Binary"
- LICENSE = "NVIDIA"
- inherit module
- SRC_URI = "http://us.download.nvidia.com/XFree86/Linux-${NVIDIA_ARCH}/${PV}/NVIDIA-Linux-${NVIDIA_ARCH}-${PV}.run"
- SRC_URI[md5sum] = "35b32baba21089dfe5d960ae89d98cde"
- SRC_URI[sha256sum] = "91be5a20841678d671f32074e2901791fe12c00ce1f3b6b3c4199ce302da85a7"
- LIC_FILES_CHKSUM = "file://LICENSE;md5=60ad17cc726658e8cf73578bea47b85f;sha256=705c87a94e795db7a6da20c9cbfefe5c815649bd77bc821f698b739de66fac1f"
- PROVIDES = "virtual/libgl virtual/libgles1 virtual/libgles2 virtual/egl"
- INSTALLER_NAME="NVIDIA-Linux-${NVIDIA_ARCH}-${PV}"
- COMPATIBLE_HOST = '.*86.*-linux'
- # Get architecture to download the drivers for this arch
- def nvidia_arch(d):
- import bb, re
- arch = bb.data.getVar('TARGET_ARCH', d, 1)
- if re.match("^i.86$", arch):
- arch = "x86"
- return arch
- NVIDIA_ARCH := "${@nvidia_arch(d)}"
- do_install_prepend() {
- # Go to the directory before module installs module
- cd ${WORKDIR}/${INSTALLER_NAME}/kernel
- }
- do_install_append() {
- cd ${WORKDIR}/${INSTALLER_NAME}
- install -d ${D}${libdir}
- install -d ${D}${libdir}/tls
- install -d ${D}${libdir}/vdpau
- #install -d ${D}/usr/share/X11/xorg.conf.d
- #install nvidia.conf ${D}/usr/share/X11/xorg.conf.d
- #install noblank.conf ${D}/usr/share/X11/xorg.conf.d
- #install -d ${D}/lib/modules/4.4.26-yocto-standard/kernel/drivers/video/
- #install nvidia-drm.ko nvidia-modeset.ko nvidia-uvm.ko nvidia.ko ${D}/lib/modules/4.4.26-yocto-standard/kernel/drivers/video/
- install libnvidia-opencl.so.${PV} ${D}${libdir}
- ln -s libnvidia-opencl.so.${PV} ${D}${libdir}/libnvidia-opencl.so
- ln -s libnvidia-opencl.so.${PV} ${D}${libdir}/libnvidia-opencl.so.1
- install libnvidia-gtk2.so.${PV} ${D}${libdir}
- ln -s libnvidia-gtk2.so.${PV} ${D}${libdir}/libnvidia-gtk2.so
- ln -s libnvidia-gtk2.so.${PV} ${D}${libdir}/libnvidia-gtk2.so.1
- install libnvidia-encode.so.${PV} ${D}${libdir}
- ln -s libnvidia-encode.so.${PV} ${D}${libdir}/libnvidia-encode.so
- ln -s libnvidia-encode.so.${PV} ${D}${libdir}/libnvidia-encode.so.1
- install libnvidia-cfg.so.${PV} ${D}${libdir}
- ln -s libnvidia-cfg.so.${PV} ${D}${libdir}/libnvidia-cfg.so
- ln -s libnvidia-cfg.so.${PV} ${D}${libdir}/libnvidia-cfg.so.1
- install libnvidia-glsi.so.${PV} ${D}${libdir}
- ln -s libnvidia-glsi.so.${PV} ${D}${libdir}/libnvidia-glsi.so
- ln -s libnvidia-glsi.so.${PV} ${D}${libdir}/libnvidia-glsi.so.1
- install libnvidia-compiler.so.${PV} ${D}${libdir}
- ln -s libnvidia-compiler.so.${PV} ${D}${libdir}/libnvidia-compiler.so
- ln -s libnvidia-compiler.so.${PV} ${D}${libdir}/libnvidia-compiler.so.1
- install libnvidia-fbc.so.${PV} ${D}${libdir}
- ln -s libnvidia-fbc.so.${PV} ${D}${libdir}/libnvidia-fbc.so
- ln -s libnvidia-fbc.so.${PV} ${D}${libdir}/libnvidia-fbc.so.1
- install libnvcuvid.so.${PV} ${D}${libdir}
- ln -s libnvcuvid.so.${PV} ${D}${libdir}/libnvcuvid.so
- ln -s libnvcuvid.so.${PV} ${D}${libdir}/libnvcuvid.so.1
- install libcuda.so.${PV} ${D}${libdir}
- ln -s libcuda.so.${PV} ${D}${libdir}/libcuda.so
- ln -s libcuda.so.${PV} ${D}${libdir}/libcuda.so.1
- install libnvidia-ifr.so.${PV} ${D}${libdir}
- ln -s libnvidia-ifr.so.${PV} ${D}${libdir}/libnvidia-ifr.so
- ln -s libnvidia-ifr.so.${PV} ${D}${libdir}/libnvidia-ifr.so.1
- install libvdpau_nvidia.so.${PV} ${D}${libdir}/vdpau
- ln -s vdpau/libvdpau_nvidia.so.${PV} ${D}${libdir}/libvdpau_nvidia.so
- ln -s vdpau/libvdpau_nvidia.so.${PV} ${D}${libdir}/vdpau/libvdpau_nvidia.so.1
- install libnvidia-ptxjitcompiler.so.${PV} ${D}${libdir}
- ln -s libnvidia-ptxjitcompiler.so.${PV} ${D}${libdir}/libnvidia-ptxjitcompiler.so
- ln -s libnvidia-ptxjitcompiler.so.${PV} ${D}${libdir}/libnvidia-ptxjitcompiler.so.1
- install libnvidia-fatbinaryloader.so.${PV} ${D}${libdir}
- ln -s libnvidia-fatbinaryloader.so.${PV} ${D}${libdir}/libnvidia-fatbinaryloader.so
- ln -s libnvidia-fatbinaryloader.so.${PV} ${D}${libdir}/libnvidia-fatbinaryloader.so.1
- install libnvidia-ml.so.${PV} ${D}${libdir}
- ln -s libnvidia-ml.so.${PV} ${D}${libdir}/libnvidia-ml.so
- ln -s libnvidia-ml.so.${PV} ${D}${libdir}/libnvidia-ml.so.1
- install tls/libnvidia-tls.so.${PV} ${D}${libdir}
- ln -s libnvidia-tls.so.${PV} ${D}${libdir}/libnvidia-tls.so
- ln -s libnvidia-tls.so.${PV} ${D}${libdir}/libnvidia-tls.so.1
- install libOpenCL.so.1.0.0 ${D}${libdir}
- #install libnvidia-gtk3.so.${PV} ${D}${libdir}
- #ln -s libnvidia-gtk3.so.${PV} ${D}${libdir}/libnvidia-gtk3.so
- #ln -s libnvidia-gtk3.so.${PV} ${D}${libdir}/libnvidia-gtk3.so.1
- install -d ${D}${libdir}/xorg/modules/drivers
- install nvidia_drv.so ${D}${libdir}/xorg/modules/drivers
- # Lo otro
- install libGLdispatch.so.0 ${D}${libdir}
- install libEGL_nvidia.so.${PV} ${D}${libdir}
- ln -s libEGL_nvidia.so.${PV} ${D}${libdir}/libEGL_nvidia.so
- ln -s libEGL_nvidia.so.${PV} ${D}${libdir}/libEGL_nvidia.so.1
- install libGLESv2_nvidia.so.${PV} ${D}${libdir}
- ln -s libGLESv2_nvidia.so.${PV} ${D}${libdir}/libGLESv2_nvidia.so
- ln -s libGLESv2_nvidia.so.${PV} ${D}${libdir}/libGLESv2_nvidia.so.1
- install libGLX_nvidia.so.${PV} ${D}${libdir}
- ln -s libGLX_nvidia.so.${PV} ${D}${libdir}/libGLX_nvidia.so
- install libnvidia-glcore.so.${PV} ${D}${libdir}
- ln -s libnvidia-glcore.so.${PV} ${D}${libdir}/libnvidia-glcore.so
- ln -s libnvidia-glcore.so.${PV} ${D}${libdir}/libnvidia-glcore.so.1
- install libnvidia-eglcore.so.${PV} ${D}${libdir}
- ln -s libnvidia-eglcore.so.${PV} ${D}${libdir}/libnvidia-eglcore.so
- ln -s libnvidia-eglcore.so.${PV} ${D}${libdir}/libnvidia-eglcore.so.1
- install libGL.so.${PV} ${D}${libdir}
- ln -s libGL.so.${PV} ${D}${libdir}/libGL.so
- ln -s libGL.so.${PV} ${D}${libdir}/libGL.so.1
- install libGLESv1_CM_nvidia.so.${PV} ${D}${libdir}
- ln -s libGLESv1_CM_nvidia.so.${PV} ${D}${libdir}/libGLESv1_CM_nvidia.so
- ln -s libGLESv1_CM_nvidia.so.${PV} ${D}${libdir}/libGLESv1_CM_nvidia.so.1
- install libEGL.so.${PV} ${D}${libdir}
- ln -s libEGL.so.${PV} ${D}${libdir}/libEGL.so
- ln -s libEGL.so.${PV} ${D}${libdir}/libEGL.so.1
- install libGLX.so.0 ${D}${libdir}
- ln -s libGLX.so.0 ${D}${libdir}/libGLX.so.1
- install libGLESv1_CM.so.1 ${D}${libdir}
- ln -s libGLESv1_CM.so.1 ${D}${libdir}/libGLESv1_CM.so
- install libGLESv2.so.2 ${D}${libdir}
- install libGLESv1_CM.so.1 ${D}${libdir}
- install libOpenGL.so.0 ${D}${libdir}
- install libOpenCL.so.1.0.0 ${D}${libdir}
- #install libwfb.so ${D}${libdir}/xorg/modules
- install -d ${D}${libdir}/xorg/modules/extensions
- install libglx.so.${PV} ${D}${libdir}/xorg/modules/extensions
- ln -s libglx.so.${PV} ${D}${libdir}/xorg/modules/extensions/libglx.so.1
- ln -s libglx.so.${PV} ${D}${libdir}/xorg/modules/extensions/libglx.so
- install -m 0755 nvidia-xconfig ${D}${libdir}
- }
- do_compile_prepend () {
- # Go to the kerne directory and let module compile it
- cd ${WORKDIR}/${INSTALLER_NAME}/kernel
- }
- nvidia_do_unpack() {
- cd ${WORKDIR}
- # Nvidia installer fails if this directory already exists
- rm -rf ${INSTALLER_NAME}
- sh ./${INSTALLER_NAME}.run -x
- install ${WORKDIR}/${INSTALLER_NAME}/LICENSE ${S}
- }
- python do_unpack() {
- bb.build.exec_func('base_do_unpack', d)
- bb.build.exec_func('nvidia_do_unpack', d)
- }
- PACKAGECONFIG_append_nvidia-proprietary = " xinerama"
- FILES_${PN} += "${libdir}"
- INSANE_SKIP_${PN}_append = " already-stripped ldflags dev-so xorg-driver-abi"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement