On 08/12/16, Maciej W. Rozycki wrote:
> Hi,
> 
>  Commit 235763 removed support for versions of MPFR below 3.1.0 which have
> a flat directory structure, however it did not introduce any safety check
> for such an unhandled library version present in the tree.  Consequently
> the system-installed version is silently chosen, which if too old, causes
> a confusing configuration failure in mpc/ stating a misleading version
> requirement:
> 
> checking for MPFR... yes
> checking for recent GMP... yes
> checking for recent MPFR... no
> configure: error: MPFR version >= 2.4.2 required
> make[1]: *** [configure-mpc] Error 1
> 
>  I propose the check below to make people's life just a little bit easier
> and indicate right away that an incorrect version of MPFR has been found
> in the source tree.  This is especially helpful when you just sync your
> build tree from upstream and may easily miss the updated requirement.  I
> carefully chose to use "handled" rather than "supported" in the message as
> the commit referred clearly indicates you are on your own with versions of
> the libraries different from those stated in `download_prerequisites'.
> 
> +  # MPFR v3.1.0 moved the sources into a src sub-directory.
> +  if ! test -d ${srcdir}/mpfr/src; then
> +    as_fn_error "Building GCC with MPFR in the source tree is only handled 
> for MPFR 3.1.0+." "$LINENO" 5
> +  fi

I think it is a good idea to detect this situation, but you should advise the 
user
that he has to use exactly the same version(s) that 
contrib/download_prerequisites
installs.


Bernd.

Reply via email to