Marc, yes, I see that too now. For anyone wondering where that is, here it is: https://github.com/ElectricRCAircraftGuy/Microchip_XC32_Compiler/blob/main/xc32-v4.35-src/pic32m-source/gmp-6.1.0/acinclude.m4#L125-L140
What I'm calling, by the way, inside build-xc32-v4.35m.sh, is this: https://github.com/ElectricRCAircraftGuy/Microchip_XC32_Compiler/blob/main/build-xc32-v4.35m.sh#L175 : ${gcc_srcdir}/configure \ ... So, if `gcc_srcdir` is a relative path, `#include "$srcdir/gmp-h.in"` works in MSYS2 UCRT64 gcc on Windows. If `gcc_srcdir` is an absolute path, it does not. Here is a new summary I put into my answer halfway down: https://stackoverflow.com/a/77435216/4561887: Quick summary: Calling the gcc configure script with a relative path causes that relative path to get inserted into the main gcc Makefile, and then passed to the gmp configure script, where it is injected into an autogenerated conftest.c C file as an include statement. So, using an absolute path to call the gcc configure script puts an absolute path in the #include inside conftest.c, and using a relative path to call the gcc configure script puts a relative path into that #include statement. In the MSYS2 UCRT64 gcc compiler, however, only relative paths are allowed, due to path conversion issues of the C:\ (in a Windows-style path) or /c/ (in a Unix-style path on Windows) part which pertains to the beginning of absolute paths. - Gabriel Staples On Tue, Nov 7, 2023 at 2:17 AM Marc Glisse <marc.gli...@inria.fr> wrote: > On Tue, 7 Nov 2023, Niels Möller wrote: > > > (2) It makes no sense for any C code, in conftest.c or otherwise, to > > ever attempt to include gmp-h.in. That's not a valid C header file, > > since it lacks the substitutions that turns it into a valid gmp.h > > header file. > > From acinclude.m4: > > > dnl GMP_INCLUDE_GMP_H > dnl ----------------- > dnl Expand to the right way to #include gmp-h.in. This must be used > dnl instead of gmp.h, since that file isn't generated until the end of > the > dnl configure. > dnl > dnl Dummy value for GMP_LIMB_BITS is enough > dnl for all current configure-time uses of gmp.h. > > define(GMP_INCLUDE_GMP_H, > [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ > #define GMP_NAIL_BITS $GMP_NAIL_BITS > #define GMP_LIMB_BITS 123 > $DEFN_LONG_LONG_LIMB > #include "$srcdir/gmp-h.in"] > ]) > > > -- > Marc Glisse > _______________________________________________ gmp-bugs mailing list gmp-bugs@gmplib.org https://gmplib.org/mailman/listinfo/gmp-bugs