[petsc-dev] Single configure script for SuiteSparse package
Barry Smith
bsmith at mcs.anl.gov
Wed Feb 12 13:14:32 CST 2014
I am fine with a single —with-suitsparse but replace all the HAVE_UMFPACK etc with a single HAVE_SUITSPARSE thingy
Barry
On Feb 12, 2014, at 12:40 PM, Satish Balay <balay at mcs.anl.gov> wrote:
> On Wed, 12 Feb 2014, Satish Balay wrote:
>
>> On Wed, 12 Feb 2014, Jed Brown wrote:
>>
>>> Satish Balay <balay at mcs.anl.gov> writes:
>>>
>>>> On Wed, 12 Feb 2014, Abhyankar, Shrirang G. wrote:
>>>>
>>>>> Barry,
>>>>> Satish and I have attempted to create a single configure script for SuiteSparse installation. It is currently in the branch shri/update-SuiteSparse https://bitbucket.org/petsc/petsc/branch/shri%2Fupdate-SuiteSparse. This change downloads the entire SuiteSparse package and installs all the sub-packages that PETSc currently supports (UMFPACK, CHOLMOD, and KLU). We can of course have selective installation of sub-packages if need be, currently it does not. I know you prefer a 'separate' configure script for each sub-package, but we think a single configure is a better approach. This change also updates PETSc to use the latest SuiteSparse. I've tested it with both debugging and optimized modes (with complex and 64-bit ints) and there was no change needed for UMFPACK or CHOLMOD solver interfaces. Let us know what you think? petsc-devs?
>>>>>
>>>>
>>>> Note: Apart from--download-suitsparse=1 - --with-suitsparse=1 or
>>>> --with-suitsparse works on ubuntu/linux with preisntalled suitsparse
>>>> [and presumably will work with other suitsparse installs]
>>>>
>>>> And it avoids all the issues with spliting and maintaining our own
>>>> taballs for UMFPACK, CHOLMOD, and KLU [and managing duplicate copies
>>>> of dependencies like AMD, COLAMD libsuitsparse etc.] - and will avoid
>>>> corner-cases like --download-umfpack --with-cholmod-dir= etc..
>>>
>>> Those packages were never packaged for sane independent-install anyway.
>>>
>>> However, some distributions have done the work of allowing separate
>>> install of each component. Could we have the one suitesparse configure
>>> script detect which components are available?
>>
>> Perhaps its possible. But I suspect it will get tricky wrt detecting
>> the 'liblist' for such partial installs.
>>
>> Would it not be easier for user to install all 3 packages [if they
>> want to use any one pre-installed packages?] or just use
>> --download-suitsparse?
>>
>> I think majority of usecases will be covered by --with-suitsparse=1 or
>> --download-suitsparse options.
>
> I see fedora, macports, homebrew all have a single suitsparse package.
>
> BTW: There is an optional dependency on metis from
> suitesparse. Current code [for --download-suitsparse] doesn't use
> this..
>
> Satish
>
>>
>> Satish
>>
>>>
>>>> One caveat: we build only part of suitsparse [required by petsc] - not
>>>> the whole thing.
>>>>
>>>> BTW: should we change PETSC_HAVE_UMFPACK PETSC_HAVE_CHOLMOD etc to
>>>> PETSC_HAVE_SUITSPARSE? [I don't think its necessary - but checking..]
>>>>
>>>> And then configure should print an error message if --with-umpfack
>>>> option is specified [via check_for_option_changed() in
>>>> config/configure.py]
>>>
>>
>>
>
More information about the petsc-dev
mailing list