Description
As discussed in other tickets, such as #27373 and #26899, it would sometimes be useful to be able to explicitly specify, at configure-time, whether or not a system package can be used to fulfill some SPKG dependency.
With the work being done for #27330, it is currently the case that if an SPKG has a spkg-configure.m4
, and the checks performed for the system package succeed, then the system package will always be used whether you want to or not.
This is a problem because even of the configure-time checks succeed, there could be previously unknown or unanticipated problems with using a particular version of the system package or some package+platform combination.
Therefore it is useful (if unfortunate) to be able to force use of the SPKG and disable checking for the system package. In principle we would want to react to the broken package+platform combination as well, either by fixing it somehow or blacklisting that particular combination at configure-time. However, by providing this option, we at least don't have to react immediately to such problems if/when they arise (e.g. #26899).
This ticket adds a --with-system-<spkg>
flag to configure
; e.g. --with-system-zlib
. By default this is enabled (the current behavior), but by passing --with-system-zlib=no
or --without-system-zlib
then the SPKG will be installed without checking the system for the dependency.
This also adds the option to pass --with-system-zlib=force
meaning that if the dependency cannot be found on the system then configure will abort with an error message.
This would effectively replace #21538.
CC: @dimpase @jdemeyer @jhpalmieri
Component: build: configure
Author: Erik Bray
Branch/Commit: b6aa97f
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/27567