mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen: fix gcov compilation
Currently enabling gcov in hypervisor won't build because although
26c9d03d ("gcov: Adding support for coverage information") claimed that
%.init.o files were excluded from applying compilation options, it was
in fact not true.
Fix that by filtering out the options correctly. Because the dependency
of stub.o in x86 EFI build can't be eliminated easily and we prefer a
generalised method going forward, we introduce nogcov-y to explicitly
mark objects that don't need to build with gcov support.
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Jan Beulich <JBeulich@suse.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
This commit is contained in:
1 parent
0ebbfa4f69
commit
dcf22aa0dc
2 files changed
+4
-1
No files matched your search
+3
-1
@@ -115,7 +115,9 @@ subdir-all := $(subdir-y) $(subdir-n)
|
||||
|
||||
$(filter %.init.o,$(obj-y) $(obj-bin-y) $(extra-y)): CFLAGS += -DINIT_SECTIONS_ONLY
|
||||
|
||||
$(obj-$(coverage)): CFLAGS += -fprofile-arcs -ftest-coverage -DTEST_COVERAGE
|
||||
ifeq ($(coverage),y)
|
||||
$(filter-out %.init.o $(nogcov-y),$(obj-y) $(obj-bin-y) $(extra-y)): CFLAGS += -fprofile-arcs -ftest-coverage -DTEST_COVERAGE
|
||||
endif
|
||||
|
||||
ifeq ($(lto),y)
|
||||
# Would like to handle all object files as bitcode, but objects made from
|
||||
|
||||
@@ -12,3 +12,4 @@ efi := $(if $(efi),$(shell rm disabled)y,$(shell $(call create,boot.init.o); $(c
|
||||
extra-$(efi) += boot.init.o relocs-dummy.o runtime.o compat.o
|
||||
|
||||
stub.o: $(extra-y)
|
||||
nogcov-$(efi) += stub.o
|
||||