Skip to content

Commit

Permalink
nvidia_current: Add version 440.44
Browse files Browse the repository at this point in the history
Add the latest [Long Lived Branch Version 440.44][1] to be able to build
against Linux 5.4.

[1]: https://www.nvidia.com/en-us/drivers/unix/
  • Loading branch information
pmenzel committed Dec 19, 2019
1 parent c20ea3f commit 5eb1b3f
Showing 1 changed file with 78 additions and 0 deletions.
78 changes: 78 additions & 0 deletions nvidia_current-440.44-0.bee
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
#!/bin/env beesh

# resources:
# http://www.nvidia.com/object/unix.html
# ./README.txt
# ./.manifest
# https://github.com/NVIDIA/nvidia-installer
# ./nvidia-installer -A
# ./nvidia-installer --ui=none --accept-license --no-kernel-module --expert
#

NVIDIA_ARCHIVE="NVIDIA-Linux-x86_64-${PKGVERSION}${PKGEXTRAVERSION:+-${PKGEXTRAVERSION}}.run"

SRCURL[0]="https://download.nvidia.com/XFree86/Linux-x86_64/${PKGVERSION}/${NVIDIA_ARCHIVE}"

BEE_CONFIGURE=none

build_in_sourcedir

PREFIX=/usr/share/nvidia/${PKGVERSION}
LIBDIR=${PREFIX}/lib
BINDIR=${PREFIX}/bin

mee_extract() {
rmdir ${S}
sh ${F}/${NVIDIA_ARCHIVE} -x --target ${S}
}

#mee_patch() {
# bee_patch
#}

mee_build() {
#bee_build
true
}

mee_install() {
#bee_install

mkdir -pv ${D}${PREFIX}/{bin,lib,drivers,man/man1}
mkdir -pv ${D}/usr/lib

NVDRV="nvidia_drv.so"

NVBIN=( \
"nvidia-cuda-mps-control" \
"nvidia-modprobe" \
"nvidia-persistenced" \
"nvidia-settings" \
"nvidia-smi" \
"nvidia-xconfig" \
)

for i in lib*.so.$PKGVERSION; do
install -v -t ${D}${LIBDIR} "$i"
ln -sv "${LIBDIR}/$i" ${D}/usr/lib/
if soname="$(soname "$i")"; then
test -e "${D}${LIBDIR}/${soname}" || ln -sv "$i" "${D}${LIBDIR}/${soname}"
fi
done

# libglxserver_nvidia.so should reside in /usr/lib/xorg/modules/extensions,
# here we cheat away and stay in line with the /node/usr_share_mxgfx mechanism.
# Additional note: don't put/link libglx.so into /usr/lib.
ln -sv libglxserver_nvidia.so.$PKGVERSION ${D}${LIBDIR}/libglx.so

echo "installing ${NVDRV} as drivers/$(basename ${NVDRV})";
install -c -v ${NVDRV} ${D}${PREFIX}/drivers

mkdir -pv ${D}/usr/share/man/man1

for i in ${NVBIN[@]} ; do
echo "installing ${i} as bin/${i}"
install -v -c -m 755 ${i} ${D}${BINDIR}
install -v -c -m 644 ${i}.1.gz ${D}${PREFIX}/man/man1
done
}

0 comments on commit 5eb1b3f

Please sign in to comment.