
Kbuild conventionally uses $(obj)/ for generated files, and $(src)/ for checked-in source files. It is merely a convention without any functional difference. In fact, $(obj) and $(src) are exactly the same, as defined in scripts/Makefile.build: src := $(obj) When the kernel is built in a separate output directory, $(src) does not accurately reflect the source directory location. While Kbuild resolves this discrepancy by specifying VPATH=$(srctree) to search for source files, it does not cover all cases. For example, when adding a header search path for local headers, -I$(srctree)/$(src) is typically passed to the compiler. This introduces inconsistency between upstream and downstream Makefiles because $(src) is used instead of $(srctree)/$(src) for the latter. To address this inconsistency, this commit changes the semantics of $(src) so that it always points to the directory in the source tree. Going forward, the variables used in Makefiles will have the following meanings: $(obj) - directory in the object tree $(src) - directory in the source tree (changed by this commit) $(objtree) - the top of the kernel object tree $(srctree) - the top of the kernel source tree Consequently, $(srctree)/$(src) in upstream Makefiles need to be replaced with $(src). Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
1.0 KiB
SPDX-License-Identifier: GPL-2.0-only
ccflags-y := -I$(src) -I$(src)/indexer
obj-$(CONFIG_DM_VDO) += dm-vdo.o
dm-vdo-objs :=
action-manager.o
admin-state.o
block-map.o
completion.o
data-vio.o
dedupe.o
dm-vdo-target.o
dump.o
encodings.o
errors.o
flush.o
funnel-queue.o
funnel-workqueue.o
int-map.o
io-submitter.o
logger.o
logical-zone.o
memory-alloc.o
message-stats.o
murmurhash3.o
packer.o
permassert.o
physical-zone.o
priority-table.o
recovery-journal.o
repair.o
slab-depot.o
status-codes.o
string-utils.o
thread-device.o
thread-registry.o
thread-utils.o
vdo.o
vio.o
wait-queue.o
indexer/chapter-index.o
indexer/config.o
indexer/delta-index.o
indexer/funnel-requestqueue.o
indexer/geometry.o
indexer/index.o
indexer/index-layout.o
indexer/index-page-map.o
indexer/index-session.o
indexer/io-factory.o
indexer/open-chapter.o
indexer/radix-sort.o
indexer/sparse-cache.o
indexer/volume.o
indexer/volume-index.o