8308925b2c4de5bc9b3862e76c53455befd493c6
[linux-flexiantxendom0.git] / debian / rules.d / 2-binary-arch.mk
1 # We don't want make removing intermediary stamps
2 .SECONDARY :
3
4 # Prepare the out-of-tree build directory
5 ifeq ($(do_full_source),true)
6 build_cd = cd $(builddir)/build-$*; #
7 build_O  =
8 else
9 build_cd =
10 build_O  = O=$(builddir)/build-$*
11 endif
12
13 $(stampdir)/stamp-prepare-%: config-prepare-check-%
14         @touch $@
15 $(stampdir)/stamp-prepare-tree-%: target_flavour = $*
16 $(stampdir)/stamp-prepare-tree-%: $(commonconfdir)/config.common.$(family) $(archconfdir)/config.common.$(arch) $(archconfdir)/config.flavour.%
17         @echo "Preparing $*..."
18         install -d $(builddir)/build-$*
19         touch $(builddir)/build-$*/ubuntu-build
20         [ "$(do_full_source)" != 'true' ] && true || \
21                 rsync -a --exclude debian --exclude debian.master --exclude $(DEBIAN) * $(builddir)/build-$*
22         cat $^ | sed -e 's/.*CONFIG_VERSION_SIGNATURE.*/CONFIG_VERSION_SIGNATURE="Ubuntu $(release)-$(revision)-$* $(raw_kernelversion)"/' > $(builddir)/build-$*/.config
23         find $(builddir)/build-$* -name "*.ko" | xargs rm -f
24         $(build_cd) $(kmake) $(build_O) -j1 silentoldconfig prepare scripts
25         touch $@
26
27 # Used by developers as a shortcut to prepare a tree for compilation.
28 prepare-%: $(stampdir)/stamp-prepare-%
29         @echo Prepared $* for $(arch)
30 # Used by developers to allow efficient pre-building without fakeroot.
31 build-%: $(stampdir)/stamp-build-%
32         @echo Built $* for $(arch)
33
34 # Do the actual build, including image and modules
35 $(stampdir)/stamp-build-%: target_flavour = $*
36 $(stampdir)/stamp-build-%: $(stampdir)/stamp-prepare-%
37         @echo "Building $*..."
38         $(build_cd) $(kmake) $(build_O) $(conc_level) $(build_image) modules
39         @touch $@
40
41 # Install the finished build
42 install-%: pkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*
43 install-%: pkgdir_ex = $(CURDIR)/debian/$(extra_pkg_name)-$*
44 install-%: bindoc = $(pkgdir)/usr/share/doc/$(bin_pkg_name)-$*
45 install-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym
46 install-%: basepkg = $(hdrs_pkg_name)
47 install-%: hdrdir = $(CURDIR)/debian/$(basepkg)-$*/usr/src/$(basepkg)-$*
48 install-%: target_flavour = $*
49 install-%: checks-%
50         dh_testdir
51         dh_testroot
52         dh_clean -k -p$(bin_pkg_name)-$*
53         dh_clean -k -p$(hdrs_pkg_name)-$*
54         dh_clean -k -p$(dbg_pkg_name)-$*
55
56         # The main image
57         # compress_file logic required because not all architectures
58         # generate a zImage automatically out of the box
59 ifeq ($(compress_file),)
60         install -m600 -D $(builddir)/build-$*/$(kernel_file) \
61                 $(pkgdir)/boot/$(install_file)-$(abi_release)-$*
62 else
63         install -d $(pkgdir)/boot
64         gzip -c9v $(builddir)/build-$*/$(kernel_file) > \
65                 $(pkgdir)/boot/$(install_file)-$(abi_release)-$*
66         chmod 600 $(pkgdir)/boot/$(install_file)-$(abi_release)-$*
67 endif
68
69         install -m644 $(builddir)/build-$*/.config \
70                 $(pkgdir)/boot/config-$(abi_release)-$*
71         install -m644 $(abidir)/$* \
72                 $(pkgdir)/boot/abi-$(abi_release)-$*
73         install -m600 $(builddir)/build-$*/System.map \
74                 $(pkgdir)/boot/System.map-$(abi_release)-$*
75 ifeq ($(no_dumpfile),)
76         makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \
77                 -x $(builddir)/build-$*/vmlinux
78         chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$*
79 endif
80
81         $(build_cd) $(kmake) $(build_O) $(conc_level) modules_install \
82                 INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=$(pkgdir)/ \
83                 INSTALL_FW_PATH=$(pkgdir)/lib/firmware/$(abi_release)-$*
84
85         #
86         # Remove all modules not in the inclusion list.
87         #
88         if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \
89                 mkdir -p $(pkgdir_ex)/lib/modules/$(abi_release)-$*; \
90                 mv $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \
91                         $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel; \
92                 $(SHELL) $(DROOT)/scripts/module-inclusion --master \
93                         $(pkgdir_ex)/lib/modules/$(abi_release)-$*/kernel \
94                         $(pkgdir)/lib/modules/$(abi_release)-$*/kernel \
95                         $(DEBIAN)/control.d/$(target_flavour).inclusion-list 2>&1 | \
96                                 tee $(target_flavour).inclusion-list.log; \
97                 /sbin/depmod -b $(pkgdir) -ea -F $(pkgdir)/boot/System.map-$(abi_release)-$* \
98                         $(abi_release)-$* 2>&1 |tee $(target_flavour).depmod.log; \
99         fi
100
101 ifeq ($(no_dumpfile),)
102         makedumpfile -g $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$* \
103                 -x $(builddir)/build-$*/vmlinux
104         chmod 0600 $(pkgdir)/boot/vmcoreinfo-$(abi_release)-$*
105 endif
106         rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/build
107         rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/source
108
109         # Some initramfs-tools specific modules
110         install -d $(pkgdir)/lib/modules/$(abi_release)-$*/initrd
111         if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko ]; then\
112           ln -f $(pkgdir)/lib/modules/$(abi_release)-$*/kernel/drivers/video/vesafb.ko \
113                 $(pkgdir)/lib/modules/$(abi_release)-$*/initrd/; \
114         fi
115
116         # Now the image scripts
117         install -d $(pkgdir)/DEBIAN
118         for script in postinst postrm preinst prerm; do                         \
119           sed -e 's/=V/$(abi_release)-$*/g' -e 's/=K/$(install_file)/g'         \
120               -e 's/=L/$(loader)/g'         -e 's@=B@$(build_arch)@g'           \
121                $(DROOT)/control-scripts/$$script > $(pkgdir)/DEBIAN/$$script;   \
122           chmod 755 $(pkgdir)/DEBIAN/$$script;                                  \
123         done
124         # Install the postinit/postrm scripts in the extras package.
125         if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then   \
126                 install -d $(pkgdir_ex)/DEBIAN;                                 \
127                 for script in postinst postrm ; do                              \
128                         sed -e 's/@@KVER@@/$(release)-$(abinum)-$(target_flavour)/g' \
129                                 debian/control-scripts/$$script.extra > $(pkgdir_ex)/DEBIAN/$$script; \
130                         chmod 755 $(pkgdir_ex)/DEBIAN/$$script;                 \
131                 done;                                                           \
132         fi
133
134         # Install the full changelog.
135 ifeq ($(do_doc_package),true)
136         install -d $(bindoc)
137         cat $(DEBIAN)/changelog $(DEBIAN)/changelog.historical | \
138                 gzip -9 >$(bindoc)/changelog.Debian.old.gz
139         chmod 644 $(bindoc)/changelog.Debian.old.gz
140 endif
141
142 ifneq ($(skipsub),true)
143         for sub in $($(*)_sub); do                                      \
144                 if ! (TO=$$sub FROM=$* ABI_RELEASE=$(abi_release) $(SHELL)              \
145                         $(DROOT)/scripts/sub-flavour); then exit 1; fi;         \
146                 /sbin/depmod -b debian/$(bin_pkg_name)-$$sub            \
147                         -ea -F debian/$(bin_pkg_name)-$$sub/boot/System.map-$(abi_release)-$* \
148                         $(abi_release)-$*;                                      \
149                 install -d debian/$(bin_pkg_name)-$$sub/DEBIAN; \
150                 for script in postinst postrm preinst prerm; do                 \
151                         sed -e 's/=V/$(abi_release)-$*/g'                       \
152                             -e 's/=K/$(install_file)/g'                         \
153                             -e 's/=L/$(loader)/g'                               \
154                             -e 's@=B@$(build_arch)@g'                           \
155                                 $(DROOT)/control-scripts/$$script >             \
156                                 debian/$(bin_pkg_name)-$$sub/DEBIAN/$$script;\
157                         chmod 755  debian/$(bin_pkg_name)-$$sub/DEBIAN/$$script;\
158                 done;                                                           \
159         done
160 endif
161
162 ifneq ($(skipdbg),true)
163         # Debug image is simple
164         install -m644 -D $(builddir)/build-$*/vmlinux \
165                 $(dbgpkgdir)/usr/lib/debug/boot/vmlinux-$(abi_release)-$*
166         $(build_cd) $(kmake) $(build_O) modules_install \
167                 INSTALL_MOD_PATH=$(dbgpkgdir)/usr/lib/debug
168         rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/build
169         rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/source
170         rm -f $(dbgpkgdir)/usr/lib/debug/lib/modules/$(abi_release)-$*/modules.*
171         rm -fr $(dbgpkgdir)/usr/lib/debug/lib/firmware
172 endif
173
174         # The flavour specific headers image
175         # TODO: Would be nice if we didn't have to dupe the original builddir
176         install -d -m755 $(hdrdir)
177         cat $(builddir)/build-$*/.config | \
178                 sed -e 's/.*CONFIG_DEBUG_INFO=.*/# CONFIG_DEBUG_INFO is not set/g' > \
179                 $(hdrdir)/.config
180         chmod 644 $(hdrdir)/.config
181         $(kmake) O=$(hdrdir) -j1 silentoldconfig prepare scripts
182         # We'll symlink this stuff
183         rm -f $(hdrdir)/Makefile
184         rm -rf $(hdrdir)/include2
185         # powerpc seems to need some .o files for external module linking. Add them in.
186 ifeq ($(arch),powerpc)
187         mkdir -p $(hdrdir)/arch/powerpc/lib
188         cp $(builddir)/build-$*/arch/powerpc/lib/*.o $(hdrdir)/arch/powerpc/lib
189 endif
190         # Script to symlink everything up
191         $(SHELL) $(DROOT)/scripts/link-headers "$(hdrdir)" "$(basepkg)" "$*"
192         # Setup the proper asm symlink
193         rm -f $(hdrdir)/include/asm
194         (cd $(hdrdir)/include; ln -s asm-generic asm)
195         # The build symlink
196         install -d debian/$(basepkg)-$*/lib/modules/$(abi_release)-$*
197         ln -s /usr/src/$(basepkg)-$* \
198                 debian/$(basepkg)-$*/lib/modules/$(abi_release)-$*/build
199         # And finally the symvers
200         install -m644 $(builddir)/build-$*/Module.symvers \
201                 $(hdrdir)/Module.symvers
202
203         # Now the header scripts
204         install -d $(CURDIR)/debian/$(basepkg)-$*/DEBIAN
205         for script in postinst; do                                              \
206           sed -e 's/=V/$(abi_release)-$*/g' -e 's/=K/$(install_file)/g' \
207                 $(DROOT)/control-scripts/headers-$$script >                     \
208                         $(CURDIR)/debian/$(basepkg)-$*/DEBIAN/$$script;         \
209           chmod 755 $(CURDIR)/debian/$(basepkg)-$*/DEBIAN/$$script;             \
210         done
211
212         # At the end of the package prep, call the tests
213         DPKG_ARCH="$(arch)" KERN_ARCH="$(build_arch)" FLAVOUR="$*"      \
214          VERSION="$(abi_release)" REVISION="$(revision)"                \
215          PREV_REVISION="$(prev_revision)" ABI_NUM="$(abinum)"           \
216          PREV_ABI_NUM="$(prev_abinum)" BUILD_DIR="$(builddir)/build-$*" \
217          INSTALL_DIR="$(pkgdir)" SOURCE_DIR="$(CURDIR)"                 \
218          run-parts -v $(DROOT)/tests
219
220         #
221         # Remove files which are generated at installation by postinst,
222         # except for modules.order and modules.builtin
223         # 
224         # NOTE: need to keep this list in sync with postrm
225         #
226         mkdir $(pkgdir)/lib/modules/$(abi_release)-$*/_
227         mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.order \
228                 $(pkgdir)/lib/modules/$(abi_release)-$*/_
229         if [ -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin ] ; then \
230             mv $(pkgdir)/lib/modules/$(abi_release)-$*/modules.builtin \
231                 $(pkgdir)/lib/modules/$(abi_release)-$*/_; \
232         fi
233         rm -f $(pkgdir)/lib/modules/$(abi_release)-$*/modules.*
234         mv $(pkgdir)/lib/modules/$(abi_release)-$*/_/* \
235                 $(pkgdir)/lib/modules/$(abi_release)-$*
236         rmdir $(pkgdir)/lib/modules/$(abi_release)-$*/_
237
238 headers_tmp := $(CURDIR)/debian/tmp-headers
239 headers_dir := $(CURDIR)/debian/linux-libc-dev
240
241 hmake := $(MAKE) -C $(CURDIR) O=$(headers_tmp) \
242         KERNELVERSION=$(abi_release) INSTALL_HDR_PATH=$(headers_tmp)/install \
243         SHELL="$(SHELL)" ARCH=$(header_arch)
244
245 install-arch-headers:
246         dh_testdir
247         dh_testroot
248         dh_clean -k -plinux-libc-dev
249
250         rm -rf $(headers_tmp)
251         install -d $(headers_tmp) $(headers_dir)/usr/include/
252
253         $(hmake) $(defconfig)
254         mv $(headers_tmp)/.config $(headers_tmp)/.config.old
255         sed -e 's/^# \(CONFIG_MODVERSIONS\) is not set$$/\1=y/' \
256           -e 's/.*CONFIG_LOCALVERSION_AUTO.*/# CONFIG_LOCALVERSION_AUTO is not set/' \
257           $(headers_tmp)/.config.old > $(headers_tmp)/.config
258         $(hmake) silentoldconfig
259         $(hmake) $(conc_level) headers_install
260
261         ( cd $(headers_tmp)/install/include/ && \
262                 find . -name '.' -o -name '.*' -prune -o -print | \
263                 cpio -pvd --preserve-modification-time \
264                         $(headers_dir)/usr/include/ )
265         mkdir $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)
266         mv $(headers_dir)/usr/include/asm $(headers_dir)/usr/include/$(DEB_HOST_MULTIARCH)/
267
268         rm -rf $(headers_tmp)
269
270 binary-arch-headers: install-arch-headers
271         dh_testdir
272         dh_testroot
273 ifeq ($(do_libc_dev_package),true)
274 ifneq ($(DEBIAN),debian.master)
275         echo "non-master branch building linux-libc-dev, aborting"
276         exit 1
277 endif
278         dh_installchangelogs -plinux-libc-dev
279         dh_installdocs -plinux-libc-dev
280         dh_compress -plinux-libc-dev
281         dh_fixperms -plinux-libc-dev
282         dh_installdeb -plinux-libc-dev
283         $(lockme) dh_gencontrol -plinux-libc-dev -- $(libc_dev_version)
284         dh_md5sums -plinux-libc-dev
285         dh_builddeb -plinux-libc-dev
286 endif
287
288 binary-%: pkgimg = $(bin_pkg_name)-$*
289 binary-%: pkgimg_ex = $(extra_pkg_name)-$*
290 binary-%: pkghdr = $(hdrs_pkg_name)-$*
291 binary-%: dbgpkg = $(bin_pkg_name)-$*-dbgsym
292 binary-%: dbgpkgdir = $(CURDIR)/debian/$(bin_pkg_name)-$*-dbgsym
293 binary-%: target_flavour = $*
294 binary-%: install-%
295         dh_testdir
296         dh_testroot
297
298         dh_installchangelogs -p$(pkgimg)
299         dh_installdocs -p$(pkgimg)
300         dh_compress -p$(pkgimg)
301         dh_fixperms -p$(pkgimg) -X/boot/
302         dh_installdeb -p$(pkgimg)
303         dh_shlibdeps -p$(pkgimg)
304         $(lockme) dh_gencontrol -p$(pkgimg)
305         dh_md5sums -p$(pkgimg)
306         dh_builddeb -p$(pkgimg) -- -Zbzip2 -z9
307
308         if [ -f $(DEBIAN)/control.d/$(target_flavour).inclusion-list ] ; then \
309                 dh_installchangelogs -p$(pkgimg_ex); \
310                 dh_installdocs -p$(pkgimg_ex); \
311                 dh_compress -p$(pkgimg_ex); \
312                 dh_fixperms -p$(pkgimg_ex) -X/boot/; \
313                 dh_installdeb -p$(pkgimg_ex); \
314                 dh_shlibdeps -p$(pkgimg_ex); \
315                 $(lockme) dh_gencontrol -p$(pkgimg_ex); \
316                 dh_md5sums -p$(pkgimg_ex); \
317                 dh_builddeb -p$(pkgimg_ex) -- -Zbzip2 -z9; \
318         fi
319
320         dh_installchangelogs -p$(pkghdr)
321         dh_installdocs -p$(pkghdr)
322         dh_compress -p$(pkghdr)
323         dh_fixperms -p$(pkghdr)
324         dh_shlibdeps -p$(pkghdr)
325         dh_installdeb -p$(pkghdr)
326         $(lockme) dh_gencontrol -p$(pkghdr)
327         dh_md5sums -p$(pkghdr)
328         dh_builddeb -p$(pkghdr)
329
330 ifneq ($(skipsub),true)
331         @set -e; for sub in $($(*)_sub); do             \
332                 pkg=$(bin_pkg_name)-$$sub;      \
333                 dh_installchangelogs -p$$pkg;           \
334                 dh_installdocs -p$$pkg;                 \
335                 dh_compress -p$$pkg;                    \
336                 dh_fixperms -p$$pkg -X/boot/;           \
337                 dh_shlibdeps -p$$pkg;                   \
338                 dh_installdeb -p$$pkg;                  \
339                 $(lockme) dh_gencontrol -p$$pkg;                        \
340                 dh_md5sums -p$$pkg;                     \
341                 dh_builddeb -p$$pkg;                    \
342         done
343 endif
344
345 ifneq ($(skipdbg),true)
346         dh_installchangelogs -p$(dbgpkg)
347         dh_installdocs -p$(dbgpkg)
348         dh_compress -p$(dbgpkg)
349         dh_fixperms -p$(dbgpkg)
350         dh_installdeb -p$(dbgpkg)
351         $(lockme) dh_gencontrol -p$(dbgpkg)
352         dh_md5sums -p$(dbgpkg)
353         dh_builddeb -p$(dbgpkg)
354
355         # Hokay...here's where we do a little twiddling...
356         # Renaming the debug package prevents it from getting into
357         # the primary archive, and therefore prevents this very large
358         # package from being mirrored. It is instead, through some
359         # archive admin hackery, copied to http://ddebs.ubuntu.com.
360         #
361         mv ../$(dbgpkg)_$(release)-$(revision)_$(arch).deb \
362                 ../$(dbgpkg)_$(release)-$(revision)_$(arch).ddeb
363         set -e; \
364         ( \
365                 $(lockme_cmd) 9 || exit 1; \
366                 if grep -qs '^Build-Debug-Symbols: yes$$' /CurrentlyBuilding; then \
367                         sed -i '/^$(dbgpkg)_/s/\.deb /.ddeb /' debian/files; \
368                 else \
369                         grep -v '^$(dbgpkg)_.*$$' debian/files > debian/files.new; \
370                         mv debian/files.new debian/files; \
371                 fi; \
372         ) 9>$(lockme_file)
373         # Now, the package wont get into the archive, but it will get put
374         # into the debug system.
375 endif
376 ifneq ($(full_build),false)
377         # Clean out this flavours build directory.
378         rm -rf $(builddir)/build-$*
379         # Clean out the debugging package source directory.
380         rm -rf $(dbgpkgdir)
381 endif
382
383 #
384 # per-architecture packages
385 #
386 $(stampdir)/stamp-prepare-perarch:
387         @echo "Preparing perarch ..."
388 ifeq ($(do_tools),true)
389         rm -rf $(builddir)/tools
390         install -d $(builddir)/tools
391         for i in *; do ln -s $(CURDIR)/$$i $(builddir)/tools/; done
392         rm $(builddir)/tools/tools
393         rsync -a tools/ $(builddir)/tools/tools/
394 endif
395         touch $@
396
397 $(stampdir)/stamp-build-perarch: $(stampdir)/stamp-prepare-perarch
398 ifeq ($(do_tools),true)
399         cd $(builddir)/tools/tools/perf && \
400                 make HAVE_CPLUS_DEMANGLE=1 CROSS_COMPILE=$(CROSS_COMPILE) $(conc_level)
401         if [ "$(arch)" = "amd64" ] || [ "$(arch)" = "i386" ]; then \
402                 cd $(builddir)/tools/tools/power/x86/x86_energy_perf_policy && make CROSS_COMPILE=$(CROSS_COMPILE); \
403                 cd $(builddir)/tools/tools/power/x86/turbostat && make CROSS_COMPILE=$(CROSS_COMPILE); \
404                 cd $(builddir)/tools/tools/hv && make CROSS_COMPILE=$(CROSS_COMPILE) CFLAGS=-I../../include; \
405         fi
406 endif
407         @touch $@
408
409 install-perarch: toolspkgdir = $(CURDIR)/debian/$(tools_pkg_name)
410 install-perarch: $(stampdir)/stamp-build-perarch
411         # Add the tools.
412 ifeq ($(do_tools),true)
413         install -d $(toolspkgdir)/usr/bin
414         install -s -m755 $(builddir)/tools/tools/perf/perf \
415                 $(toolspkgdir)/usr/bin/perf_$(abi_release)
416         if [ "$(arch)" = "amd64" ] || [ "$(arch)" = "i386" ]; then \
417                 install -s -m755 $(builddir)/tools/tools/power/x86/x86_energy_perf_policy/x86_energy_perf_policy \
418                         $(toolspkgdir)/usr/bin/x86_energy_perf_policy_$(abi_release); \
419                 install -s -m755 $(builddir)/tools/tools/power/x86/turbostat/turbostat \
420                         $(toolspkgdir)/usr/bin/turbostat_$(abi_release); \
421                 install -d $(toolspkgdir)/usr/sbin; \
422                 install -s -m755 $(builddir)/tools/tools/hv/hv_kvp_daemon \
423                         $(toolspkgdir)/usr/sbin/hv_kvp_daemon_$(abi_release); \
424         fi
425 endif
426
427 binary-perarch: toolspkg = $(tools_pkg_name)
428 binary-perarch: install-perarch
429         @# Empty for make to be happy
430 ifeq ($(do_tools),true)
431         dh_installchangelogs -p$(toolspkg)
432         dh_installdocs -p$(toolspkg)
433         dh_compress -p$(toolspkg)
434         dh_fixperms -p$(toolspkg)
435         dh_shlibdeps -p$(toolspkg)
436         dh_installdeb -p$(toolspkg)
437         $(lockme) dh_gencontrol -p$(toolspkg)
438         dh_md5sums -p$(toolspkg)
439         dh_builddeb -p$(toolspkg)
440 endif
441
442 binary-debs: binary-perarch $(addprefix binary-,$(flavours))
443
444 build-arch-deps-$(do_flavour_image_package) += $(addprefix $(stampdir)/stamp-build-,$(flavours))
445 build-arch: $(build-arch-deps-true)
446
447 ifeq ($(AUTOBUILD),)
448 binary-arch-deps-$(do_flavour_image_package) += binary-udebs
449 else
450 binary-arch-deps-$(do_flavour_image_package) = binary-debs
451 endif
452 binary-arch-deps-$(do_libc_dev_package) += binary-arch-headers
453 ifneq ($(do_common_headers_indep),true)
454 binary-arch-deps-$(do_flavour_header_package) += binary-headers
455 endif
456 binary-arch: $(binary-arch-deps-true)