Merge tag 'kbuild-v6.10' of git://git.kernel.org/pub/scm/linux/kernel… · torvalds/linux@ff9a793 (original) (raw)
`@@ -263,7 +263,14 @@ srctree := $(abs_srctree)
`
263
263
`endif
`
264
264
``
265
265
`objtree := .
`
``
266
+
``
267
`+
VPATH :=
`
``
268
+
``
269
`+
ifeq ($(KBUILD_EXTMOD),)
`
``
270
`+
ifdef building_out_of_srctree
`
266
271
`VPATH := $(srctree)
`
``
272
`+
endif
`
``
273
`+
endif
`
267
274
``
268
275
`export building_out_of_srctree srctree objtree VPATH
`
269
276
``
`@@ -942,7 +949,6 @@ endif
`
942
949
`ifdef CONFIG_LTO_CLANG
`
943
950
`ifdef CONFIG_LTO_CLANG_THIN
`
944
951
`CC_FLAGS_LTO := -flto=thin -fsplit-lto-unit
`
945
``
`-
KBUILD_LDFLAGS += --thinlto-cache-dir=$(extmod_prefix).thinlto-cache
`
946
952
`else
`
947
953
`CC_FLAGS_LTO := -flto
`
948
954
`endif
`
`@@ -1248,8 +1254,8 @@ define filechk_version.h
`
1248
1254
` echo #define LINUX_VERSION_SUBLEVEL $(SUBLEVEL)
`
1249
1255
`endef
`
1250
1256
``
1251
``
`- (versionh):PATCHLEVEL:=(version_h): PATCHLEVEL := (versionh):PATCHLEVEL:=(or $(PATCHLEVEL), 0)
`
1252
``
`- (versionh):SUBLEVEL:=(version_h): SUBLEVEL := (versionh):SUBLEVEL:=(or $(SUBLEVEL), 0)
`
``
1257
`+ (versionh):privatePATCHLEVEL:=(version_h): private PATCHLEVEL := (versionh):privatePATCHLEVEL:=(or $(PATCHLEVEL), 0)
`
``
1258
`+ (versionh):privateSUBLEVEL:=(version_h): private SUBLEVEL := (versionh):privateSUBLEVEL:=(or $(SUBLEVEL), 0)
`
1253
1259
`$(version_h): FORCE
`
1254
1260
`$(call filechk,version.h)
`
1255
1261
``
`@@ -1403,7 +1409,7 @@ export CHECK_DTBS=y
`
1403
1409
`endif
`
1404
1410
``
1405
1411
`ifneq ($(CHECK_DTBS),)
`
1406
``
`-
dtbs_prepare: dt_binding_check
`
``
1412
`+
dtbs_prepare: dt_binding_schemas
`
1407
1413
`endif
`
1408
1414
``
1409
1415
`dtbs_check: dtbs
`
`@@ -1422,15 +1428,18 @@ scripts_dtc: scripts_basic
`
1422
1428
`$(Q)$(MAKE) $(build)=scripts/dtc
`
1423
1429
``
1424
1430
`ifneq ($(filter dt_binding_check, $(MAKECMDGOALS)),)
`
1425
``
`-
export CHECK_DT_BINDING=y
`
``
1431
`+
export CHECK_DTBS=y
`
1426
1432
`endif
`
1427
1433
``
1428
``
`-
PHONY += dt_binding_check
`
1429
``
`-
dt_binding_check: scripts_dtc
`
``
1434
`+
PHONY += dt_binding_check dt_binding_schemas
`
``
1435
`+
dt_binding_check: dt_binding_schemas scripts_dtc
`
``
1436
`+ (Q)(Q)(Q)(MAKE) (build)=Documentation/devicetree/bindings(build)=Documentation/devicetree/bindings (build)=Documentation/devicetree/bindings@
`
``
1437
+
``
1438
`+
dt_binding_schemas:
`
1430
1439
`$(Q)$(MAKE) $(build)=Documentation/devicetree/bindings
`
1431
1440
``
1432
1441
`PHONY += dt_compatible_check
`
1433
``
`-
dt_compatible_check: dt_binding_check
`
``
1442
`+
dt_compatible_check: dt_binding_schemas
`
1434
1443
`$(Q)$(MAKE) (build)=Documentation/devicetree/bindings(build)=Documentation/devicetree/bindings (build)=Documentation/devicetree/bindings@
`
1435
1444
``
1436
1445
`# ---------------------------------------------------------------------------
`
`@@ -1477,7 +1486,7 @@ endif # CONFIG_MODULES
`
1477
1486
`# Directories & files removed with 'make clean'
`
1478
1487
`CLEAN_FILES += vmlinux.symvers modules-only.symvers \
`
1479
1488
` modules.builtin modules.builtin.modinfo modules.nsdeps \
`
1480
``
`-
compile_commands.json .thinlto-cache rust/test \
`
``
1489
`+
compile_commands.json rust/test \
`
1481
1490
` rust-project.json .vmlinux.objs .vmlinux.export.c
`
1482
1491
``
1483
1492
`# Directories & files removed with 'make mrproper'
`
`@@ -1494,7 +1503,7 @@ MRPROPER_FILES += include/config include/generated \
`
1494
1503
``
1495
1504
`# clean - Delete most, but leave enough to build external modules
`
1496
1505
`#
`
1497
``
`-
clean: rm-files := $(CLEAN_FILES)
`
``
1506
`+
clean: private rm-files := $(CLEAN_FILES)
`
1498
1507
``
1499
1508
`PHONY += archclean vmlinuxclean
`
1500
1509
``
`@@ -1506,7 +1515,7 @@ clean: archclean vmlinuxclean resolve_btfids_clean
`
1506
1515
``
1507
1516
`# mrproper - Delete all generated files, including .config
`
1508
1517
`#
`
1509
``
`-
mrproper: rm-files := (wildcard(wildcard (wildcard(MRPROPER_FILES))
`
``
1518
`+
mrproper: private rm-files := $(MRPROPER_FILES)
`
1510
1519
`mrproper-dirs := $(addprefix mrproper,scripts)
`
1511
1520
``
1512
1521
`PHONY += $(mrproper-dirs) mrproper
`
`@@ -1626,10 +1635,11 @@ help:
`
1626
1635
` @echo ''
`
1627
1636
` @$(if $(dtstree), \
`
1628
1637
`echo 'Devicetree:'; \
`
1629
``
`-
echo '* dtbs - Build device tree blobs for enabled boards'; \
`
1630
``
`-
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'; \
`
1631
``
`-
echo ' dt_binding_check - Validate device tree binding documents'; \
`
1632
``
`-
echo ' dtbs_check - Validate device tree source files';\
`
``
1638
`+
echo '* dtbs - Build device tree blobs for enabled boards'; \
`
``
1639
`+
echo ' dtbs_install - Install dtbs to $(INSTALL_DTBS_PATH)'; \
`
``
1640
`+
echo ' dt_binding_check - Validate device tree binding documents and examples'; \
`
``
1641
`+
echo ' dt_binding_schema - Build processed device tree binding schemas'; \
`
``
1642
`+
echo ' dtbs_check - Validate device tree source files';\
`
1633
1643
`echo '')
`
1634
1644
``
1635
1645
` @echo 'Userspace tools targets:'
`
`@@ -1782,8 +1792,8 @@ compile_commands.json: $(extmod_prefix)compile_commands.json
`
1782
1792
`PHONY += compile_commands.json
`
1783
1793
``
1784
1794
`clean-dirs := $(KBUILD_EXTMOD)
`
1785
``
`-
clean: rm-files := (KBUILDEXTMOD)/Module.symvers(KBUILD_EXTMOD)/Module.symvers (KBUILDEXTMOD)/Module.symvers(KBUILD_EXTMOD)/modules.nsdeps \
`
1786
``
`- (KBUILDEXTMOD)/compilecommands.json(KBUILD_EXTMOD)/compile_commands.json (KBUILDEXTMOD)/compilecommands.json(KBUILD_EXTMOD)/.thinlto-cache
`
``
1795
`+
clean: private rm-files := (KBUILDEXTMOD)/Module.symvers(KBUILD_EXTMOD)/Module.symvers (KBUILDEXTMOD)/Module.symvers(KBUILD_EXTMOD)/modules.nsdeps \
`
``
1796
`+
$(KBUILD_EXTMOD)/compile_commands.json
`
1787
1797
``
1788
1798
`PHONY += prepare
`
1789
1799
`# now expand this into a simple variable to reduce the cost of shell evaluations
`