[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [DebianGIS] HDF4 changes



On Fri, Mar 13, 2009 at 06:00:36PM -0700, Hamish wrote:
> 
> Hi,
> 
> Francesco P. Lovergine wrote:
> > This implies that we are going to DROP FORTRAN SUPPORT
> > (both shared and static) and eventually reintroduce
> > it only WHEN the expected Fortran shlib edition will be
> > available by upstream, with a well defined interface.
> 
> ... subjective benchmark; aka don't hold your breath.
> 
> > People that need to link the Fotran HDF4 library will have to
> > do that themselves.
> > This is not of great interest, because
> > 
> >  - they are very few :)
> 
> actually among HDF users probably there are many fortran users,
> and it is of significant interest to the modelling community.
> (FWIW, I'm a user of this)
> 
> FORTRAN continues to be the language of choice for atmospheric
> and ocean numerical models*, and among those models HDF is a
> rather popular data format and linux a rather popular OS, and
> debian/ubuntu are rather popular distros.
> 
> [*] As you might guess "climate change modelling" is a somewhat
> popular research topic these days.
> 
> I am currently away, but when I return to the lab in a few weeks
> I will upgrade our modelling workstations/number crunchers to Lenny
> and then recompile our models using the updated toolchain. I'll
> have a better idea then about our specific needs.
> 
> Keep in mind that where DebianGIS goes ubuntu often goes to, which
> casts the user net wider. I'll make some inquiries about what's
> needed and who needs what WRT fortran+hdf4/5 in the coming weeks.
> 

Well, note that since years Debian distributed an actually problematic
mixed model C/Fortran single shared library. As you can know, mixing 
C and Fortran within the same shared library poses some linking
problems and headaches only partially managed by automake [1]. In 
brief, the result could be not easily portable and the linking phase
quite tricky for coders.
For that reason 4.2r4 is still not distributed in shared mode for
Fortran API. Note that at the same time upstream _never_ distributed
any shared library at all until the latest version and today most programs 
use the static flavor for C and Fotran API. I'm quite sure that the shared edition
has been used essentially (only?) by Debian packaged programs and with
limitation to the C interface.

At the same time I asked HDF group about their roadmap for a separate
shared Fortran edition. They consider currently that a low priority
goal, and they have not a budget on that. Even if I could manage to
create myself those libraries I'm not a Fortran expert, I'm cannot work
multi-platform and currently I do not know if they would unify libdf and
libmfdf in one single libhdf4 (C edition) and libhdf4_fortran (Fortran
edition) or what. Building a Debian only solution would be pointless
IMHO. Still diverging from upstream is not something I like.
Therefore, I exclude to support Fortran shlibs myself.

Of course, what I can do is eventually adding a static Fortran flavor to
the HDF4 libraries set, if people asked for that, by using a separate
configuration target in rules. The resulting hdf4-fortran would be
a package usable to build fotran programs with the Fortran/C API
in static mode: it would not cohexist with the other -dev packages
but would allow compiling Fortran code without glitches.

Note also that I'm talking of HDF4 only. HDF5 is totally another beast.

[1] Some useful note about that:

http://www.hdfgroup.uiuc.edu/RFC/HDF5/ARCHIVE/HDF4/Shared HDF4 Libraries.htm
http://www.gnu.org/software/hello/manual/automake/Mixing-Fortran-77-With-C-and-C_002b_002b.html


-- 
Francesco P. Lovergine



Reply to: