Re: [PATCH XFSPROGS 2/3] Build without enabling DEBUG by default

Christoph Hellwig
2011-07-23T01:32:21Z

On Fri, Jul 22, 2011 at 06:34:58PM -0400, Ted Ts'o wrote:
> Yes I needed it because I wanted to do a hermetic build; that is, I
> didn't want to depend on the version of the acl, attr, dmapi, etc.,
> shipped by the distribution. (This is actually more important when
> building xfstests, since I wanted to make sure we used the version of
> the xfsprogs headers shipped by the very tip of xfsprogs-dev, since in
> the past I've had problems because the distro-shipped header files
> were too old.)

Given that you are on a Debian-ish environment, did you consider simply
using pbuilder? I use that regularly to test clean package builds,
without all these weird overrides.

> The way I did that was by setting the environment CFLAGS to
> -I/kbuild/xfstests/bld/include. And that seems to be the problem. If
> CFLAGS is set as an environment variable, then it's set as a :=, which
> means that CFLAGS is set right away, the first time buildmacros is
> included.
>
> How about this instead? A patch like this so that CFLAGS can be
> remembered at configure time:
>
> diff --git a/include/builddefs.in b/include/builddefs.in
> index 4c8ec64..81ebfcd 100644
> --- a/include/builddefs.in
> +++ b/include/builddefs.in
> @@ -25,6 +25,7 @@ OPTIMIZER = @opt_build@
> MALLOCLIB = @malloc_lib@
> LOADERFLAGS = @LDFLAGS@
> LTLDFLAGS = @LDFLAGS@
> +CFLAGS = @CFLAGS@
>
> LIBRT = @librt@
> LIBUUID = @libuuid@
>
> Then I don't have to set an environment variable when running make; I
> just have to pass it to configure.

This looks much better, and is indeed similar to some other fixes we
recently had to put in, probably due to changing make behaviour.

If you add a signoff and a proper description I'll put it into all the
repositories.