[ "$1" = "unsigned" ] && { signed_only=:; shift; }
[ "$1" = "nocheck" ] && { check_only=:; shift; }
  /usr/bin/ld.bfd -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments   -r -o nvidia.o @nvidia.mod 
  /usr/bin/ld.bfd -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments   -r -o nvidia-uvm.o @nvidia-uvm.mod 
  /usr/bin/ld.bfd -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments   -r -o nvidia-modeset.o @nvidia-modeset.mod 
/usr/bin/ld.bfd -r -o nvidia-modeset/nv-modeset-interface.o nvidia-modeset/nvidia-modeset-linux.o nvidia-modeset/nv-kthread-q.o
  /usr/bin/ld.bfd -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments   -r -o nvidia-drm.o @nvidia-drm.mod 
  /usr/bin/ld.bfd -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments   -r -o nvidia-peermem.o @nvidia-peermem.mod 
  /usr/bin/ld.bfd -r -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments --build-id=sha1  -T scripts/module.lds -o nvidia-modeset.ko nvidia-modeset.o nvidia-modeset.mod.o
  /usr/bin/ld.bfd -r -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments --build-id=sha1  -T scripts/module.lds -o nvidia-peermem.ko nvidia-peermem.o nvidia-peermem.mod.o
  /usr/bin/ld.bfd -r -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments --build-id=sha1  -T scripts/module.lds -o nvidia-drm.ko nvidia-drm.o nvidia-drm.mod.o
  /usr/bin/ld.bfd -r -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments --build-id=sha1  -T scripts/module.lds -o nvidia-uvm.ko nvidia-uvm.o nvidia-uvm.mod.o
  /usr/bin/ld.bfd -r -EL  -maarch64elf -z noexecstack --no-warn-rwx-segments --build-id=sha1  -T scripts/module.lds -o nvidia.ko nvidia.o nvidia.mod.o
$check_only sha256sum -c SHA256SUMS || exit 1
$signed_only cat 'nvidia-drm.ko' 'nvidia-drm.ko.sig' >'../nvidia-drm.ko'
$signed_only rm -f 'nvidia-drm.ko'
$signed_only cat 'nvidia-modeset.ko' 'nvidia-modeset.ko.sig' >'../nvidia-modeset.ko'
$signed_only rm -f 'nvidia-modeset.ko'
$signed_only cat 'nvidia-peermem.ko' 'nvidia-peermem.ko.sig' >'../nvidia-peermem.ko'
$signed_only rm -f 'nvidia-peermem.ko'
$signed_only cat 'nvidia-uvm.ko' 'nvidia-uvm.ko.sig' >'../nvidia-uvm.ko'
$signed_only rm -f 'nvidia-uvm.ko'
$signed_only cat 'nvidia.ko' 'nvidia.ko.sig' >'../nvidia.ko'
$signed_only rm -f 'nvidia.ko'
