On 19.01.2024 16:25, Anthony PERARD wrote: > On Fri, Jan 19, 2024 at 09:43:30AM +0100, Michal Orzel wrote: >> Is my understanding correct that by switching from extra-y to targets we are >> preventing these objects to >> appear in non-init-objects (and thus having COV_FLAGS appended) while >> retaining the proper if_changed behavior? >> >> According to docs/misc/xen-makefiles/makefiles.rst: >> Any target that utilises if_changed must be listed in $(targets), >> otherwise the command line check will fail, and the target will >> always be built. > > Indeed, and $(extra-y) is added to $(targets) via > $(targets-for-builtin). > > While switching from $(extra-y) to $(targets) prevents the objects from > been added to $(non-init-objets), it doesn't matter because "libelf.o" > is in that variable, so $(COV_FLAGS) is added to $(_c_flags) and its > value is used in all the prerequisites of "libelf.o" which includes > "libelf-temp.o" and for example "libelf-dominfo.o". So the only thing > preventing $(COV_FLAGS) from been added when building "libelf-tools.o" > for example is that we set `COV_FLAGS:=` for "libelf.o".
Yet doesn't that (again) mean things should actually work as-is, yet Michal is observing this not being the case? Jan