xref: /openbmc/linux/scripts/Makefile.dtbinst (revision d2a3b501)
1# SPDX-License-Identifier: GPL-2.0
2# ==========================================================================
3# Installing dtb files
4#
5# Installs all dtb files listed in $(dtb-y) either in the
6# INSTALL_DTBS_PATH directory or the default location:
7#
8#   $INSTALL_PATH/dtbs/$KERNELRELEASE
9# ==========================================================================
10
11src := $(obj)
12
13PHONY := __dtbs_install
14__dtbs_install:
15
16include include/config/auto.conf
17include $(srctree)/scripts/Kbuild.include
18include $(kbuild-file)
19
20dtbs    := $(addprefix $(dst)/, $(dtb-y) $(if $(CONFIG_OF_ALL_DTBS),$(dtb-)))
21subdirs := $(addprefix $(obj)/, $(subdir-y) $(subdir-m))
22
23__dtbs_install: $(dtbs) $(subdirs)
24	@:
25
26quiet_cmd_dtb_install = INSTALL $@
27      cmd_dtb_install = install -D $< $@
28
29$(dst)/%.dtb: $(obj)/%.dtb
30	$(call cmd,dtb_install)
31
32$(dst)/%.dtbo: $(obj)/%.dtbo
33	$(call cmd,dtb_install)
34
35PHONY += $(subdirs)
36$(subdirs):
37	$(Q)$(MAKE) $(dtbinst)=$@ dst=$(if $(CONFIG_ARCH_WANT_FLAT_DTB_INSTALL),$(dst),$(patsubst $(obj)/%,$(dst)/%,$@))
38
39.PHONY: $(PHONY)
40