After some misuse I noticed that autoconf, when an option requiring a
path is passed, tries to build with the default value ('yes') for that
option as the path. i.e. `--with-buid-sysroot` missing an argument will
set sysroot to 'yes', and thus will do weird things like trying to
include 'yes/usr/include'.
Since traditionally unix tools, i.e. programs using getopt_long(), have
the tradition to accept syntaxes like `--option value` and
`--option=value` as interchangeable, it gets prone to errors if the
person is unaware autoconf handles long options differently, leading to
problems of the same nature, i.e.
`--with-build-sysroot /path/to/sysroot` rather than
`--with-build-sysroot=/path/to/sysroot`.
To avoid builds that will surely break in the middle, fail when such
configure option is passed without a valid path. This patch series
implements such validation to all options described by top level's
`./configure --help`, both in the top-level and on subdirs.
Agatha Isabelle Moreira (7):
configure: Stop when `--with-build-sysroot` is passed without argument
configure: Stop when --with-mpc{,-include,-lib} has no argument
configure: Stop when --with-mpfr{,-include,-lib} has no argument
configure: Stop when --with-gmp{,-lib,-include} has no argument
configure: Stop when --with-isl has no arguent
configure: Stop when --with-isl-{lib,include} has no argument
configure: Stop when --with-target-bdw-gc{,-lib,-include} has no arg
config/isl.m4 | 8 ++++++++
configure | 37 ++++++++++++++++++++++++++++++++++++-
configure.ac | 29 ++++++++++++++++++++++++++++-
gcc/configure | 9 ++++++---
gcc/configure.ac | 5 ++++-
libga68/configure | 6 ++++++
libga68/configure.ac | 6 ++++++
libobjc/configure | 6 ++++++
libobjc/configure.ac | 6 ++++++
9 files changed, 106 insertions(+), 6 deletions(-)
--
2.54.0