1. The Fortran 2008 standard states:
----
13.8.2.21 REAL32, REAL64, and REAL128
The values of these default integer scalar named constants shall be those of the kind type parameters that specify a REAL type whose storage size expressed in bits is 32, 64, and 128 respectively. If, for any of these constants, the processor supports more than one kind of that size, it is processor dependent which kind value is provided. If the processor supports no kind of a particular size, that constant shall be equal to -2 if the processor supports kinds of a larger size and -1 otherwise.
----
From your error message it is clear that REAL128 is correctly defined as -1.
2. Your configure output shows "checking size of __float128: 0” and "checking whether real*16 is supported: no”, so it seems the build has all the information it needs to avoid using REAL128 unconditionally.