Skip to content

At the end of configure, show installation hints for non-enabled optional packages separately #29372

@orlitzky

Description

@orlitzky

When running the configure script, --enable-foo and --disable-foo should be used to control the installation of optional packages.

Original wishlist item:

With respect to the system-package support, this means that ./configure should not try to find any optional packages that I don't want, and it shouldn't tell me to install them. For example,

$ ./configure
...
Checking whether SageMath should install SPKG gp2c...
checking installing pari? ... no
checking for gp2c... no
configure: using pari/gp from the system, but building gp2c
configure: one might prefer to install a system-wide gp2c, instead
configure: and re-run configure.
configure: gp prefix is /usr 
configure: pari.cfg is /usr/share/pari/pari.cfg 
configure: no suitable system package found for SPKG gp2c
using Sage's gp2c SPKG
...
gp2c-0.0.10.p0:                              no suitable system package; optional, use "./configure --enable-gp2c" to install
...
configure: Hint: The following SPKGs did not find equivalent system packages:
configure:   cbc gp2c libsemigroups
checking for the package system in use... gentoo
configure: Hint: Installing the following system packages is recommended and may avoid building some of the above SPKGs from source:
configure:   $ # install the following packages: sci-mathematics/gp2c

I guess this is partly due to the default of if_installed for --enable-foo (which I think is a bad default, but that's another matter), but the same thing happens if I explicitly pass --disable-gp2c.

In this ticket, as a milder change, we show the list of system packages corresponding to non-enabled optional packages separately.

To test this branch, remember to use ./bootstrap before ./configure.

Critical for Sage 9.3 because there is evidence that users get concerned when too many packages are suggested to be installed.

Related:

CC: @mkoeppe @dimpase @embray @slel @EmmanuelCharpentier

Component: build: configure

Author: Matthias Koeppe

Branch/Commit: 50b1b25

Reviewer: Samuel Lelièvre

Issue created by migration from https://trac.sagemath.org/ticket/29372

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions