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

Re: netcdf packages



On Thursday 14 December 2006 11:09, Kevin B. McCarty wrote:
> 1) Why did you make the libnetcdf++3 package into a dummy package and
> move the C++ bindings into the libnetcdf3 package?  If the soname of the
> C++ package needs to evolve faster than that of the C/FORTRAN bindings,
> as I speculated above, this would be a really good reason to keep the
> C++ bindings in a separate package.

The netcdf libs are shipped as one tarball.

> 2) I don't think there should be info files in libnetcdf++3 (regardless
> of whether it is a dummy package or a shared library package).  I see
> you do ship the info files in libnetcdf-dev as well (where they should
> be), but they should be in /usr/share/info, not under
> /usr/share/doc/libnetcdf-dev where info won't look for them.
>
> (On second look, you already have noticed this problem.)

I am working with the netcdf developers on this issue actually.

> 3) The static libraries (lib*.a) must be shipped in the libnetcdf-dev
> package, not in the runtime library (libnetcdf3) package.  Please do not
> ship libtool *.la files at all, as has been requested many times by the
> release team.  See for instance the discussion at bug #400140.

This advice seems contrary to [1]. #400140 also seems to contradict [1]. Maybe 
[1] needs to be updated?

For the time being, I am not adding them to the package at all.

> 4) Your libnetcdf-dev package is missing a Depends line.  It should
> Depend at least upon the netcdf shared library package(s), upon any
> *-dev packages that ship files #included by its header files, and upon
> any *-dev packages that ship static libs depended upon by netcdf static
> libs.  (The last is slightly controversial, since there are people who
> hate static libraries; for that you might be able to use a Recommends
> instead of Depends.)

Is there a better way than just listing Depends: libnetcdf3 in the control 
file for libnetcdf-dev?

I don't think that it depends on more than the standard lib.

> 5) Wherever you Conflict against an old package (such as libnetcdf-dev's
> Conflicts: netcdf-dev, netcdfg-dev (<< 3.6.2)) because of file
> conflicts, you also need a Replaces line with similar contents.  This is
> because under some circumstances, dpkg will try to unpack a new package
> before completely removing an old package that is conflicted against.
>
> Some of these issues could have been caught by comparing the contents of
> the netcdf binary packages in Sid and your new packages.  I find that
> debdiff is a really useful tool for such comparisons, though of course
> YMMV.

I have attached the new control file. Can you please check it out?

wt

[1]http://www.debian.org/doc/debian-policy/ch-files.html#s-libraries
-- 
Warren Turkal
Source: netcdf
Section: science
Priority: optional
Maintainer: Warren Turkal <wt@atmos.colostate.edu>
Build-Depends: cdbs, debhelper (>= 5), autotools-dev, gfortran, texinfo
Standards-Version: 3.7.2

Package: libnetcdf++3
Section: libs
Architecture: any
Depends: libnetcdf3
Description: Dummy upgrade package for libnetcdf3
 This is a dummy package to transition to a unified library package
 for the NetCDF libraries.
 .
 Once installed, it may be removed.

Package: netcdfg-dev
Section: devel
Architecture: any
Depends: libnetcdf-dev
Description: Dummy upgrade package for libnetcdf-dev
 This is a dummy package to transition to a new development package
 for the NetCDF libraries.
 .
 Once installed, it may be removed.

Package: libnetcdf3
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Provides: netcdf, netcdfg, libnetcdf++3
Conflicts: netcdf3 (<< 3.3.1-1), netcdfg3 (<< 3.6.2), libnetcdf++3 (<< 3.6.2)
Replaces: netcdf3, netcdfg3
Description: An interface for scientific data access to large binary data
 NetCDF (network Common Data Form) is an interface for scientific
 data access and a freely-distributed software library that provides an
 implementation of the interface.  The netCDF library also defines a
 machine-independent format for representing scientific data.
 Together, the interface, library, and format support the creation,
 access, and sharing of scientific data.

Package: libnetcdf-dev
Section: devel
Architecture: any
Depends: libnetcdf3, ${shlibs:Depends}, ${misc:Depends}
Conflicts: netcdf-dev, netcdfg-dev (<< 3.6.2)
Description: Development kit for NetCDF
 NetCDF (network Common Data Form) is an interface for scientific
 data access and a freely-distributed software library that provides an
 implementation of the interface.  The netCDF library also defines a
 machine-independent format for representing scientific data.
 Together, the interface, library, and format support the creation,
 access, and sharing of scientific data.
 .
 This package includes everything needed for developing in C, C++,
 Fortran 77, and Fortran 90.

Package: netcdf-bin
Section: science
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Programs for reading and writing NetCDF files
 Contains the programs ncdump and ncgen which convert NetCDF
 files to ASCII and back, respectively. NetCDF (network Common Data
 Form) is an interface for scientific data access and a
 freely-distributed software library that provides an implementation
 of the interface.  The netCDF library also defines a
 machine-independent format for representing scientific data.
 Together, the interface, library, and format support the creation,
 access, and sharing of scientific data.

Reply to: