diff mbox series

[7/9] UBUNTU: [Packaging] add variant tag to allow us to select different sub-drivers

Message ID 20220914135455.2685644-8-apw@canonical.com
State New
Headers show
Series [1/9] UBUNTU: [Packaging] fix our dh_clean override | expand

Commit Message

Andy Whitcroft Sept. 14, 2022, 1:54 p.m. UTC
Add the concept of a variant.  This represents an alternative build
originating from the same primary source.

Signed-off-by: Andy Whitcroft <apw@canonical.com>
---
 .../linux-restricted-generate/debian/scripts/gen-rules     | 4 +++-
 debian/scripts/gen-rules                                   | 7 +++++--
 2 files changed, 8 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/debian/ancillary/linux-restricted-generate/debian/scripts/gen-rules b/debian/ancillary/linux-restricted-generate/debian/scripts/gen-rules
index 27c79c4..a8b349c 100755
--- a/debian/ancillary/linux-restricted-generate/debian/scripts/gen-rules
+++ b/debian/ancillary/linux-restricted-generate/debian/scripts/gen-rules
@@ -102,10 +102,12 @@  do
 		# package arches, otherwise build for all kernel
 		# flavour arches.
 		pkg_archs=
+		variant=
 		for cmd in $extra
 		do
 			case "$cmd" in
 			arch=*) pkg_archs="$pkg_archs ${cmd#arch=}" ;;
+			variant=*) variant="-${cmd#variant=}" ;;
 			esac
 		done
 		# No package arches set, build for everything
@@ -122,7 +124,7 @@  do
 		fi
 
 		targets=$(echo "$pkg_archs" | sed -e 's/\</nvidia-/g')
-		suffix_minus=$(echo "$package" | sed -e 's/nvidia-graphics-drivers-//')
+		suffix_minus=$(echo "$package$variant" | sed -e 's/nvidia-graphics-drivers-//')
 		suffix_under=$(echo "$suffix_minus" | sed -e 's/-/_/g')
 		suffix_short=$(echo "$suffix_minus" | sed -e 's/-server/srv/g')
 
diff --git a/debian/scripts/gen-rules b/debian/scripts/gen-rules
index f9f5eca..e833fad 100755
--- a/debian/scripts/gen-rules
+++ b/debian/scripts/gen-rules
@@ -114,10 +114,12 @@  EOL
 		# package arches, otherwise build for all kernel
 		# flavour arches.
 		pkg_archs=
+		variant=
 		for cmd in $extra
 		do
 			case "$cmd" in
 			arch=*)		pkg_archs="$pkg_archs ${cmd#arch=}" ;;
+			variant=*) variant="-${cmd#variant=}" ;;
 			esac
 		done
 		# No package arches set, build for everything
@@ -134,9 +136,10 @@  EOL
 		fi
 
 		targets=$(echo "$pkg_archs" | sed -e 's/\</nvidia-/g')
-		suffix_minus=$(echo "$package" | sed -e 's/nvidia-graphics-drivers-//')
+		suffix_minus=$(echo "$package$variant" | sed -e 's/nvidia-graphics-drivers-//')
 		suffix_under=$(echo "$suffix_minus" | sed -e 's/-/_/g')
 		suffix_short=$(echo "$suffix_minus" | sed -e 's/-server/srv/g')
+		suffix_minus_common=$(echo "$package" | sed -e 's/nvidia-graphics-drivers-//')
 
 		echo "II: build $package for $flavour $pkg_archs"
 
@@ -147,7 +150,7 @@  EOL
 dkms_nvidia_${suffix_under}_version="$version"
 nvidia_${suffix_under}_upstream_version=\$(shell echo "\$(dkms_nvidia_${suffix_under}_version)" | cut -d '-' -f 1)
 gencontrol_flags += -Vdkms:nvidia-${suffix_minus}-modules="nvidia-dkms-${suffix_minus} (= \$(dkms_nvidia_${suffix_under}_version))"
-gencontrol_flags += -Vnvk:nvidia-${suffix_minus}="nvidia-kernel-common-${suffix_minus} (<= \$(nvidia_${suffix_under}_upstream_version)-1), nvidia-kernel-common-${suffix_minus} (>= \$(nvidia_${suffix_under}_upstream_version))"
+gencontrol_flags += -Vnvk:nvidia-${suffix_minus}="nvidia-kernel-common-${suffix_minus_common} (<= \$(nvidia_${suffix_under}_upstream_version)-1), nvidia-kernel-common-${suffix_minus_common} (>= \$(nvidia_${suffix_under}_upstream_version))"
 test::
 	@echo $package $version $suffix_minus $suffix_under $suffix_short $targets
 $targets::