It appears that a configure script tries to unset all shell variables
that contain newlines in a subshell as part of the caching code. This
causes the subshell to exit early if any of the variables is readonly.
At a minimum, this breaks caching.
Here is a configure.ac file that demonstrates the issue:
Here is the result with Autoconf 2.69:
./configure: line 1699: x: readonly variable
configure: creating ./config.status
./configure: line 23: x: readonly variable
If you further compare using the --cache-file option with and without
the x variable being readonly, you'll find that the cache files differ.
On 08/03/2016 06:19 PM, Quinn Grier wrote:
> It appears that a configure script tries to unset all shell variables
> that contain newlines in a subshell as part of the caching code. This
> causes the subshell to exit early if any of the variables is readonly.
Autoconf in general is not expecting readonly variables, so it may be a
very difficult task to clean it up to work nicely with such a
restrictive environment. Patches are welcome, but since the obvious
solution is "don't use readonly variables in an autoconf script", I'm
probably not going to be the one to write such patches.
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org