linux-yocto/scripts/package/debian/rules
Masahiro Yamada 1b5e946573 kbuild: deb-pkg: move 'make headers' to build-arch
Strictly speaking, 'make headers' should be a part of build-arch
instead of binary-arch.

'make headers' constructs ready-to-copy UAPI headers in the kernel
directory.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Nicolas Schier <n.schier@avm.de>
2024-01-10 20:39:06 +09:00

1.5 KiB
Executable File

#!/usr/bin/make -f

SPDX-License-Identifier: GPL-2.0-only

in case debian/rules is executed directly

export DEB_RULES_REQUIRES_ROOT := no

include debian/rules.vars

ifneq (,$(filter-out parallel=1,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) MAKEFLAGS += -j$(NUMJOBS) endif

revision = $(lastword $(subst -, ,$(shell dpkg-parsechangelog -S Version))) CROSS_COMPILE ?= $(filter-out $(DEB_BUILD_GNU_TYPE)-, $(DEB_HOST_GNU_TYPE)-) make-opts = ARCH=$(ARCH) KERNELRELEASE=$(KERNELRELEASE) KBUILD_BUILD_VERSION=$(revision) $(addprefix CROSS_COMPILE=,$(CROSS_COMPILE))

.PHONY: binary binary-indep binary-arch binary: binary-arch binary-indep binary-indep: build-indep binary-arch: build-arch $(MAKE) $(make-opts)
run-command KBUILD_RUN_COMMAND='+$$(srctree)/scripts/package/builddeb'

.PHONY: build build-indep build-arch build: build-arch build-indep build-indep: build-arch: $(MAKE) $(make-opts) olddefconfig $(MAKE) $(make-opts) $(if $(filter um,$(ARCH)),,headers) all

.PHONY: clean clean: rm -rf debian/files debian/linux-* debian/deb-env.vars* $(MAKE) ARCH=$(ARCH) clean

If DEB_HOST_ARCH is empty, it is likely that debian/rules was executed

directly. Run 'dpkg-architecture --print-set --print-format=make' to

generate a makefile construct that exports all DEB_* variables.

ifndef DEB_HOST_ARCH include debian/deb-env.vars

debian/deb-env.vars: dpkg-architecture -a$$(cat debian/arch) --print-set --print-format=make > $@.tmp mv $@.tmp $@ endif