Hi Jani, On Fri, Feb 21, 2020 at 7:54 PM Jani Nikula <jani.nikula@xxxxxxxxx> wrote: > > $(CC) with $(CFLAGS_GCOV) assumes the output filename with .gcno suffix > appended is writable. This is not the case when the output filename is > /dev/null: > > HDRTEST drivers/gpu/drm/i915/display/intel_frontbuffer.h > /dev/null:1:0: error: cannot open /dev/null.gcno > HDRTEST drivers/gpu/drm/i915/display/intel_ddi.h > /dev/null:1:0: error: cannot open /dev/null.gcno > make[5]: *** [../drivers/gpu/drm/i915/Makefile:307: > drivers/gpu/drm/i915/display/intel_ddi.hdrtest] Error 1 > make[5]: *** Waiting for unfinished jobs.... > make[5]: *** [../drivers/gpu/drm/i915/Makefile:307: > drivers/gpu/drm/i915/display/intel_frontbuffer.hdrtest] Error 1 > > Filter out $(CFLAGS_GVOC) from the header test $(c_flags) as they don't > make sense here anyway. Is GCOV the only case that produces a separate file? Could you also test CONFIG_DEBUG_INFO_SPLIT, please ? The GCC manual says this: -gsplit-dwarf Separate as much DWARF debugging information as possible into a separate output file with the extension .dwo. This option allows the build system to avoid linking files with debug information. To be useful, this option requires a debugger capable of reading .dwo files. If this does not work, filtering flags does not seem to be a maintainable way. > > References: http://lore.kernel.org/r/d8112767-4089-4c58-d7d3-2ce03139858a@xxxxxxxxxxxxx > Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Fixes: c6d4a099a240 ("drm/i915: reimplement header test feature") > Cc: Masahiro Yamada <masahiroy@xxxxxxxxxx> > Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> > --- > drivers/gpu/drm/i915/Makefile | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile > index b314d44ded5e..bc28c31c4f78 100644 > --- a/drivers/gpu/drm/i915/Makefile > +++ b/drivers/gpu/drm/i915/Makefile > @@ -301,7 +301,7 @@ extra-$(CONFIG_DRM_I915_WERROR) += \ > $(shell cd $(srctree)/$(src) && find * -name '*.h'))) > > quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@) > - cmd_hdrtest = $(CC) $(c_flags) -S -o /dev/null -x c /dev/null -include $<; touch $@ > + cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; touch $@ > > $(obj)/%.hdrtest: $(src)/%.h FORCE > $(call if_changed_dep,hdrtest) > -- > 2.20.1 > -- Best Regards Masahiro Yamada _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx