Subject: bug#57380: 29.0.50; configure --config-cache --with-native-compilation failing

From: Gerd Möllmann <[email-masked]>
Date: Wed, 24 Aug 2022 14:55:25 +0200

On 22-08-24 14:31 , Eli Zaretskii wrote:
>> configure:19611: checking for libgccjit.h
>> configure:19611: result: yes
>> configure:19674: gcc -o conftest -g -O2     conftest.m -lgccjit -lsqlite3   -L/opt/homebrew/Cellar/libgccjit/12.1.0/lib/gcc/current >&5
>> conftest.m:131:12: fatal error: 'libgccjit.h' file not found
>>    #include <libgccjit.h>
>>             ^~~~~~~~~~~~~
>> 1 error generated.
> 
> Does the command to compile the test program look different in a
> config.log from a successful build?  If so, what is the difference?
> (Perhaps some -I switch is missing?)  And if there's no difference,
> how come the same command sometimes succeeds and sometimes fails?

Yeah, they are vastly different:

configure:19674: gcc -o conftest -g3 -O2 -isystem 
/opt/homebrew/Cellar/libffi/3.4.2/include -isystem 
/opt/homebrew/Cellar/librsvg/2.54.4/include/librsvg-2.0 -isystem 
/opt/homebrew/Cellar/gdk-pixbuf/2.42.9/include/gdk-pixbuf-2.0 -isystem 
/opt/homebrew/Cellar/jpeg-turbo/2.1.4...

I'd bet a small mount that these come from configure.ac:4266 ff.

       if test -n "$MAC_CFLAGS" && test -n "$MAC_LIBS"; then
         CFLAGS="$CFLAGS ${MAC_CFLAGS}"
         LIBS="$LIBS ${MAC_LIBS}"
       fi
...
     AC_RUN_IFELSE([libgccjit_smoke_test], [], [libgccjit_broken])
...
     CFLAGS=$SAVE_CFLAGS
     LIBS=$SAVE_LIBS
fi

AC_RUN_IFELSE is apparently run differently when using the cache, or 
something like that.

Hm.