diff mbox

[for-4.9] xen: append -Wno-unused-function to C99 header check

Message ID 20170406125434.10793-1-wei.liu2@citrix.com (mailing list archive)
State New, archived
Headers show

Commit Message

Wei Liu April 6, 2017, 12:54 p.m. UTC
The check builds header file as if it is a C file. Clang doesn't like
the idea of having dead code in C file. The check as-is fails on Clang
with unused function warnings.

We know for sure we don't care about those unused function warnings.
Just ignore them.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
---
Cc: Andrew Cooper <andrew.cooper3@citrix.com>
Cc: George Dunlap <George.Dunlap@eu.citrix.com>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Jan Beulich <jbeulich@suse.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Tim Deegan <tim@xen.org>
Cc: Wei Liu <wei.liu2@citrix.com>
---
 xen/include/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jan Beulich April 6, 2017, 2:33 p.m. UTC | #1
>>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote:
> --- a/xen/include/Makefile
> +++ b/xen/include/Makefile
> @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile
>  headers99.chk: $(PUBLIC_C99_HEADERS) Makefile
>  	rm -f $@.new
>  	$(foreach i, $(filter %.h,$^),                                        \
> -	    $(CC) -x c -std=c99 -Wall -Werror                                 \
> +	    $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function            \
>  	    -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h)   \
>  	    -S -o /dev/null $(i)                                              \
>  	    || exit $$?; echo $(i) >> $@.new;)

I think it would be better to make this match the C++ check, where
a source file is being generated on the fly (and quite possibly for a
similar reason).

Jan
Stefano Stabellini April 6, 2017, 4:51 p.m. UTC | #2
On Thu, 6 Apr 2017, Jan Beulich wrote:
> >>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote:
> > --- a/xen/include/Makefile
> > +++ b/xen/include/Makefile
> > @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile
> >  headers99.chk: $(PUBLIC_C99_HEADERS) Makefile
> >  	rm -f $@.new
> >  	$(foreach i, $(filter %.h,$^),                                        \
> > -	    $(CC) -x c -std=c99 -Wall -Werror                                 \
> > +	    $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function            \
> >  	    -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h)   \
> >  	    -S -o /dev/null $(i)                                              \
> >  	    || exit $$?; echo $(i) >> $@.new;)
> 
> I think it would be better to make this match the C++ check, where
> a source file is being generated on the fly (and quite possibly for a
> similar reason).
 
I don't have an opinion on what is the best way to fix this. However,
I'll say that it is expected to have unused functions in header files
(it would be a problem if there weren't), so -Wno-unused-function looks
fine to me.

Wei, given that the problem was introduced by my patch, let me know if
you need any help fixing this.
Wei Liu April 6, 2017, 5:53 p.m. UTC | #3
On Thu, Apr 06, 2017 at 09:51:32AM -0700, Stefano Stabellini wrote:
> On Thu, 6 Apr 2017, Jan Beulich wrote:
> > >>> On 06.04.17 at 14:54, <wei.liu2@citrix.com> wrote:
> > > --- a/xen/include/Makefile
> > > +++ b/xen/include/Makefile
> > > @@ -111,7 +111,7 @@ headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile
> > >  headers99.chk: $(PUBLIC_C99_HEADERS) Makefile
> > >  	rm -f $@.new
> > >  	$(foreach i, $(filter %.h,$^),                                        \
> > > -	    $(CC) -x c -std=c99 -Wall -Werror                                 \
> > > +	    $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function            \
> > >  	    -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h)   \
> > >  	    -S -o /dev/null $(i)                                              \
> > >  	    || exit $$?; echo $(i) >> $@.new;)
> > 
> > I think it would be better to make this match the C++ check, where
> > a source file is being generated on the fly (and quite possibly for a
> > similar reason).
>  
> I don't have an opinion on what is the best way to fix this. However,
> I'll say that it is expected to have unused functions in header files
> (it would be a problem if there weren't), so -Wno-unused-function looks
> fine to me.
> 
> Wei, given that the problem was introduced by my patch, let me know if
> you need any help fixing this.
> 

No need. I have another patch queued up for posting -- waiting for
report from travis.

Wei.

> _______________________________________________
> Xen-devel mailing list
> Xen-devel@lists.xen.org
> https://lists.xen.org/xen-devel
diff mbox

Patch

diff --git a/xen/include/Makefile b/xen/include/Makefile
index 65a732a707..b0bacc99b5 100644
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -111,7 +111,7 @@  headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile
 headers99.chk: $(PUBLIC_C99_HEADERS) Makefile
 	rm -f $@.new
 	$(foreach i, $(filter %.h,$^),                                        \
-	    $(CC) -x c -std=c99 -Wall -Werror                                 \
+	    $(CC) -x c -std=c99 -Wall -Werror -Wno-unused-function            \
 	    -include stdint.h $(foreach j, $($(i)-prereq), -include $(j).h)   \
 	    -S -o /dev/null $(i)                                              \
 	    || exit $$?; echo $(i) >> $@.new;)