[Mesa-dev] last call for autotools

Dave Airlie airlied at gmail.com
Sun Dec 23 23:44:54 UTC 2018


On Tue, 18 Dec 2018 at 06:26, Marek Olšák <maraeo at gmail.com> wrote:
>
> On Mon, Dec 17, 2018 at 1:18 PM Eric Anholt <eric at anholt.net> wrote:
>>
>> Eero Tamminen <eero.t.tamminen at intel.com> writes:
>>
>> > Hi,
>> >
>> > On 17.12.2018 8.08, Marek Olšák wrote:
>> > [...]
>> >> I think one of the serious usability issues is that environment
>> >> variables such as CFLAGS, CXXFLAGS, LDFLAGS, and PKG_CONFIG_PATH are not
>> >> saved by meson for future reconfigures.
>> >
>> > I don't know what Meson is supposed to do, but to me that would be
>> > a bug in a build tool.
>> >
>> > Re-configure is supposed to adapt SW to the changes in the build
>> > environment, and environment variables are part of that (along with
>> > command line options and SW installed to to the system).  Build
>> > configure tool deciding to "remember" some of those things instead
>> > of checking the new situation, seems like a great opportunity for
>> > confusion.
>>
>> A user-triggered reconfigure, sure.  Recapture env vars then.  But "git
>> pull; ninja -C build" losing track of the configuration state is broken.
>> We don't have to specify all of your meson -Doption=state configuration
>> on every build, why should you need to specify your PKG_CONFIG_PATH
>> configure options on every build?
>
>
> Thanks, Eric.
>
> Yes, meson behaves such that users have to set all environment variables for every "ninja" command that might reconfigure.
>
> I see 2 solutions:
> 1) meson needs to remember the relevant env vars
> 2) meson should FAIL to configure if any of the env vars are set (if it wants to ignore them)
>

I just wanted to note here that autotools was broken for a long time
in this area.

for ages it would rerun configure and lose PKG_CONFIG_PATH, and I
still think it doesn't remember PATH when you rerun, as I've had it
jump between my llvm versions when I haven't set the correct path.

Dave.


More information about the mesa-dev mailing list