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