Opened 8 years ago

Closed 6 years ago

Last modified 6 years ago

#52516 closed update (fixed)

sundials @2.6.2_1: update to 2.7.0, add +fcmix

Reported by: jjstickel (Jonathan Stickel) Owned by: seanfarley (Sean Farley)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: kurthindenburg (Kurt Hindenburg), MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Port: sundials

Description

Sundials recently made another release. Portfile patch attached. I also added a fcmix variant to enable fcvode and fixed a bug with the doc variant.

Attachments (1)

sundials_Portfile.diff (1.7 KB) - added by jjstickel (Jonathan Stickel) 8 years ago.

Download all attachments as: .zip

Change History (12)

Changed 8 years ago by jjstickel (Jonathan Stickel)

Attachment: sundials_Portfile.diff added

comment:1 Changed 8 years ago by larryv (Lawrence Velázquez)

Cc: sean@… removed
Keywords: haspatch added
Owner: changed from macports-tickets@… to sean@…
Summary: sundials update 2.7.0sundials @2.6.2_1: update to 2.7.0, add +fcmix
Version: 2.3.4

comment:2 Changed 7 years ago by kurthindenburg (Kurt Hindenburg)

Cc: kurthindenburg added

As far as I can tell, this update works fine - let me know if you want me to commit it.

If you commit, might as well fix the eval issue displayed in port lint --nitpick

comment:3 Changed 7 years ago by seanfarley (Sean Farley)

Just need to test it with PETSc. I usually use this example to verify it worked:

$ cd petsc/src/ts/examples/tutorials
$ make ex3
$ ./ex3 -ts_type sundials

comment:4 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Cc: MarcusCalhoun-Lopez added

comment:5 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Resolution: fixed
Status: newclosed

In fc10bff528c82c5fdbfa8675d5f70c9b98d0ffaa/macports-ports:

sundials: update version 2.6.2->2.7.0

Fixes #52516

comment:6 Changed 6 years ago by jjstickel (Jonathan Stickel)

Marcus, it looks like you ignored my patch that added the fcmix variant (and resolved a bug with the documentation install). Hence, the ticket should not be closed.

comment:7 in reply to:  6 ; Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Replying to jjstickel:

Marcus, it looks like you ignored my patch that added the fcmix variant (and resolved a bug with the documentation install). Hence, the ticket should not be closed.

-DFCMIX_ENABLE=ON was added in another patch.
It is set in the example variant.

The logic was that if you want the examples, you get the fcmix.
If you do not want the examples, the fcmix doesn't do anything anyway.

So can this ticket remain closed?

comment:8 in reply to:  7 ; Changed 6 years ago by jjstickel (Jonathan Stickel)

Replying to MarcusCalhoun-Lopez:

The logic was that if you want the examples, you get the fcmix.
If you do not want the examples, the fcmix doesn't do anything anyway.

So can this ticket remain closed?

Alright, I did not see those other patches and the current Portfile. FCMIX enabled by itself compiles and installs libraries to be used in fortran programs. This is how we use sundials in my research group. For now, it is fine as long as there is a way to enable the fortran libraries, although via +examples variant is certainly not obvious (at least to me). Since I expect few of us use the fortran interface, I think it is OK to leave things as they are for now and keep this ticket closed.

BTW, latest Sundials release is now 3.1.0. I don't need that version at the moment; I'll gladly open a ticket and provide a patch when I do, if it's not taken care of before then.

comment:9 in reply to:  8 ; Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

Replying to jjstickel:

FCMIX enabled by itself compiles and installs libraries to be used in fortran programs.

When I looked through this, the Fortran compiler was only used to build the examples.
Therefore, I thought the Fortran compiler and examples were equivalent.
However, it seems that the existence of the Fortran compiler changes the resulting build even though it is never called.

For now, it is fine as long as there is a way to enable the fortran libraries, although via +examples variant is certainly not obvious (at least to me).

You are correct that this is incorrect.
It resulted from a misunderstanding on my part.
I will take another look at your patch.

I'll gladly open a ticket and provide a patch when I do, if it's not taken care of before then.

Thank you.
Patches are welcome.

comment:10 in reply to:  9 Changed 6 years ago by jjstickel (Jonathan Stickel)

From the docs,

FCMIX_ENABLE - Enable Fortran-C support

Then fortran libraries are created and installed (libsundials_fcvode.a, libsundials_fkinsol.a, etc). Maybe fortran is not used to build these, but they are needed to use sundials components from fortran programs. The docs also say that fortran support is also triggered by enabling blas or lapack, and it seems you have captured this logic already in your Portfile by requiring +examples when accelerate, atlas, or openblas variants are used. However, the examples themselves are not required (I don't think), but rather the fortran and lapack components.

comment:11 Changed 6 years ago by MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)

In ba9431be3b5f9f8053ee8858b13e8a75546100a0/macports-ports:

sundials: Fortran & LAPACK are always required

The Fortran compiler is only *used* to build the examples.
However, the *existence* of the Fortran compiler changes the
resulting build even though it is never called.
The commit
8664f0104650b7fb4448401c9f3eaa464748e4c4/macports-ports
is therefore incorrect.

See #52516

Note: See TracTickets for help on using tickets.