[ovs-dev] [PATCH] Makefile.am: Add a build check that every .c file #includes <config.h>.

Ed Maste emaste at freebsd.org
Thu Dec 6 20:17:34 UTC 2012


On 6 December 2012 14:26, Ben Pfaff <blp at nicira.com> wrote:
> This can find mysterious build problems.
>
> Signed-off-by: Ben Pfaff <blp at nicira.com>
> ---
>  Makefile.am |   14 ++++++++++++++
>  1 files changed, 14 insertions(+), 0 deletions(-)
>
> diff --git a/Makefile.am b/Makefile.am
> index e2e0aa4..08cf395 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -169,6 +169,20 @@ CLEANFILES += distfiles
>  endif
>  .PHONY: dist-hook-git
>
> +# Check that every .c file includes <config.h>.
> +ALL_LOCAL += config-h-check
> +config-h-check:
> +       @cd $(srcdir); \
> +       if test -e .git && (git --version) >/dev/null 2>&1 && \
> +          git grep -L '#include <config\.h>' `git ls-files | grep '\.c$$' | \
> +               grep -vE '^datapath|^lib/sflow'`; \
> +       then \
> +           echo "See above for list of violations of the rule that"; \
> +           echo "every C source file must #include <config.h>."; \
> +           exit 1; \
> +       fi
> +.PHONY: config-h-check
> +
>  # Check that "struct vlog_ratelimit" is always declared "static".
>  ALL_LOCAL += rate-limit-check
>  rate-limit-check:
> --
> 1.7.2.5

Acked-by: Ed Maste <emaste at freebsd.org>



More information about the dev mailing list