]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blob - debian/rules.d/5-udebs.mk
pktcdvd: Fix possible Spectre-v1 for pkt_devs
[mirror_ubuntu-bionic-kernel.git] / debian / rules.d / 5-udebs.mk
1 # Do udebs if not disabled in the arch-specific makefile
2 binary-udebs: binary-debs
3 @echo Debug: $@
4 ifeq ($(disable_d_i),)
5 @$(MAKE) --no-print-directory -f $(DROOT)/rules DEBIAN=$(DEBIAN) \
6 do-binary-udebs
7 endif
8
9 do-binary-udebs: linux_udeb_name=$(shell if echo $(src_pkg_name)|egrep -q '(linux-lts|linux-hwe)'; then echo $(src_pkg_name); else echo linux; fi)
10 do-binary-udebs: debian/control
11 @echo Debug: $@
12 dh_testdir
13 dh_testroot
14
15 # unpack the kernels into a temporary directory
16 mkdir -p debian/d-i-${arch}
17
18 imagelist=$$(cat $(CURDIR)/$(DEBIAN)/d-i/kernel-versions | grep ^${arch} | gawk '{print $$3}') && \
19 for f in $$imagelist; do \
20 i=$(release)-$(abinum)-$$f; \
21 for f in \
22 ../linux-image-$$i\_$(release)-$(revision)_${arch}.deb \
23 ../linux-image-unsigned-$$i\_$(release)-$(revision)_${arch}.deb \
24 ../linux-modules-$$i\_$(release)-$(revision)_${arch}.deb \
25 ../linux-modules-extra-$$i\_$(release)-$(revision)_${arch}.deb; \
26 do \
27 [ -f $$f ] && dpkg -x $$f debian/d-i-${arch}; \
28 done; \
29 /sbin/depmod -b debian/d-i-${arch} $$i; \
30 done
31
32 # kernel-wedge will error if no modules unless this is touched
33 touch $(DEBIAN)/d-i/no-modules
34
35 touch $(CURDIR)/$(DEBIAN)/d-i/ignore-dups
36 export KW_DEFCONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
37 export KW_CONFIG_DIR=$(CURDIR)/$(DEBIAN)/d-i && \
38 export SOURCEDIR=$(CURDIR)/debian/d-i-${arch} && \
39 kernel-wedge install-files $(release)-$(abinum) && \
40 kernel-wedge check
41
42 # Build just the udebs
43 dilist=$$(dh_listpackages -s | grep "\-di$$") && \
44 [ -z "$dilist" ] || \
45 for i in $$dilist; do \
46 dh_fixperms -p$$i; \
47 $(lockme) dh_gencontrol -p$$i; \
48 dh_builddeb -p$$i; \
49 done
50
51 # Generate the meta-udeb dependancy lists.
52 @gawk ' \
53 /^Package:/ { \
54 package=$$2; flavour=""; parch="" } \
55 (/Package-Type: udeb/ && package !~ /^$(linux_udeb_name)-udebs-/) { \
56 match(package, "'$(release)'-'$(abinum)'-(.*)-di", bits); \
57 flavour = bits[1]; \
58 } \
59 (/^Architecture:/ && $$0 " " ~ / '$(arch)'/) { \
60 parch=$$0; \
61 } \
62 (flavour != "" && parch != "") { \
63 udebs[flavour] = udebs[flavour] package ", "; \
64 flavour=""; parch=""; \
65 } \
66 END { \
67 for (flavour in udebs) { \
68 package="$(linux_udeb_name)-udebs-" flavour; \
69 file="debian/" package ".substvars"; \
70 print("udeb:Depends=" udebs[flavour]) > file; \
71 metas="'$(builddir)'/udeb-meta-packages"; \
72 print(package) >metas \
73 } \
74 } \
75 ' <$(CURDIR)/debian/control
76 @while read i; do \
77 $(lockme) dh_gencontrol -p$$i; \
78 dh_builddeb -p$$i; \
79 done <$(builddir)/udeb-meta-packages