Hello again!

Here is quick and dirty patch to debian/rules.

2015-06-15 23:22 GMT+03:00 Konstantin Demin <rockdri...@gmail.com>:
> Hi Vincent!
>
> I'm currently trying to debianize 346.72 using
> nvidia-graphics-drivers:346.59 and i have pretty same issue.
> Build succeeds with target architecture "amd64" but it will fail with
> others architectures.
>
> Here is my investigation:
>
> krd@aceroid $ uname -a
> Linux aceroid 4.0.5-krd.aceroid.0 #1 SMP Mon Jun 15 14:33:27 MSK 2015
> x86_64 GNU/Linux
>
> krd@aceroid $ sbuild -c sid-i386-sbuild --arch=i386
> nvidia-graphics-drivers_346.72-0.dsc
> [--- CUT HERE ---]
> # Use the nvidia-kernel-source source to create the DKMS tree.
> mkdir -p debian/nvidia-kernel-dkms/usr/src/
> mv debian/nvidia-kernel-source/usr/src/modules/nvidia-kernel
> debian/nvidia-kernel-dkms/usr/src/nvidia-current-346.72
> rmdir debian/nvidia-kernel-source/usr/src/modules/
> cd debian/nvidia-kernel-dkms/usr/src/nvidia-current-346.72 \
>     && QUILT_PATCHES=debian/patches quilt --quiltrc /dev/null push -a
> || test $? = 2 \
>     && rm -rf .pc debian
> Applying patch not-silent.patch
> patching file nvidia-modules-common.mk
>
> Applying patch avoid-ld.gold.patch
> patching file nvidia-modules-common.mk
>
> Applying patch use-nv-kernel-ARCH.o_shipped.patch
> patching file Kbuild
>
> Applying patch conditionally-include-linux_version.h.patch
> patching file nv-linux.h
>
> Applying patch uvm-symvers.patch
> can't find file to patch at input line 6
> Perhaps you used the wrong -p or --strip option?
> The text leading up to this was:
> --------------------------
> |Author: Andreas Beckmann <deb...@abeckmann.de>
> |Description: fix up the ../Module.symvers dependency for our uvm build
> |
> |--- a/uvm/Kbuild
> |+++ b/uvm/Kbuild
> --------------------------
> No file to patch.  Skipping patch.
> 1 out of 1 hunk ignored
> Patch uvm-symvers.patch does not apply (enforce with -f)
> make[2]: *** [build-kernel-dkms-tree] Error 1
> debian/rules:237: recipe for target 'build-kernel-dkms-tree' failed
> make[2]: Leaving directory '/«PKGBUILDDIR»'
> make[1]: *** [install] Error 2
> debian/rules:140: recipe for target 'install' failed
> make[1]: Leaving directory '/«PKGBUILDDIR»'
> make: *** [binary] Error 2
> debian/rules:140: recipe for target 'binary' failed
> dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 
> 2
> [--- CUT HERE ---]
>
> krd@aceroid $ for i in NVIDIA-*-346.59.run; do sh $i -x; done
> Creating directory NVIDIA-Linux-armv7l-gnueabihf-346.59
> Verifying archive integrity... OK
> Uncompressing NVIDIA Accelerated Graphics Driver for Linux-armv7l 346.59..
> Creating directory NVIDIA-Linux-x86-346.59
> Verifying archive integrity... OK
> Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86 346.59..
> Creating directory NVIDIA-Linux-x86_64-346.59
> Verifying archive integrity... OK
> Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 346.59..
>
> krd@aceroid $ find NVIDIA-*-346.59/ -name uvm
> NVIDIA-Linux-x86_64-346.59/kernel/uvm
>
> Temporary solution is to copy whole uvm/ directory from amd64 variant to 
> others.
>
> --
> SY,
> Konstantin Demin



-- 
SY,
Konstantin Demin
--- a/debian/rules
+++ b/debian/rules
@@ -196,6 +196,9 @@ build-kernel-source-tree: install-into-tmp
 	mv $(module_source)/conftest.sh $(module_source)/conftest_nvidia.sh
 
 	# For the nvidia-uvm module.
+	test ! -d $(module_source)/uvm && test -d NVIDIA-Linux-amd64/kernel/uvm && cp -r NVIDIA-Linux-amd64/kernel/uvm $(module_source)/
+	test ! -d $(module_source)/uvm && test -d NVIDIA-Linux-i386/kernel/uvm && cp -r NVIDIA-Linux-i386/kernel/uvm $(module_source)/
+	test ! -d $(module_source)/uvm && test -d NVIDIA-Linux-armhf/kernel/uvm && cp -r NVIDIA-Linux-armhf/kernel/uvm $(module_source)/
 	test ! -f $(module_source)/uvm/Makefile || \
 		mv $(module_source)/uvm/Makefile $(module_source)/uvm/Kbuild
 	test ! -d $(module_source)/uvm || \

Reply via email to