[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH] coverage: filter out lib{fdt,elf}-temp.o
On 22.01.2024 11:54, Anthony PERARD wrote: > On Mon, Jan 22, 2024 at 11:04:41AM +0100, Jan Beulich wrote: >> 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, [...] > > No, because I've explain how it should work, in the hypothetical world > where we have `targets += libelf-temp.o $(libelf-objs)`. Yes and no: Why would the COV_FLAGS propagation to prereqs not work today? Whether libelf-*.o are prereqs to libelf-temp.o or to libelf.o shouldn't matter, nor should it matter whether libelf-temp.o or libelf.o (or both) are listed in $(targets). As soon as either libelf-temp.o or libelf.o has COV_FLAGS overridden (to empty), libelf-*.o ought to be built with empty COV_FLAGS. What am I missing? Jan
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |