File: README.source

package info (click to toggle)
hdf5 1.14.6%2Brepack-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 210,720 kB
  • sloc: ansic: 715,827; f90: 42,941; java: 38,101; sh: 23,766; xml: 18,707; cpp: 18,011; makefile: 2,426; perl: 2,383; yacc: 332; python: 262; javascript: 203; lex: 157; ruby: 24; csh: 22
file content (72 lines) | stat: -rw-r--r-- 3,310 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
HDF5 for Debian, note for the mantainers
----------------------------------------

The Debian version of HDF5 is created starting from the official tarball and
adding some required patches managed by quilt. More information about quilt
use are available in /usr/share/doc/quilt/README.Debian and its documentation.

No more html docs after release 1.10.2. Quoting upstream:
> The latest documentation is on the support portal only, which is freely
> available. However, it's not easily downloadable.
> We are no longer updating the User's Guide/Reference Manual in the hdf5doc
> repo, and there is now only one version of the documentation. See the
> history at the end of an API to determine when it was introduced.

About symbols files
-------------------
To update the symbols files on new upstream releases:
0- Rename and update the symbols files with the new sonames. This can be
   done with the script debian/update-symbols-files-soname
1- Build the package for the new release
2- Patch the symbols files from the dpkg-gensymbols output in the build log
   $ patch -p0 <path_to_build_log
3- Use the debian/process-symbols-files script to unmangle and sort C++
   symbols, and generate the version scripts (debian/map_*.ver)
4- Rebuild the package and check that no diff are reported by dpkg-gensymbols
5- Goto (2) if need be

About version scripts (debian/map_*.ver)
----------------------------------------
Their purpose is to be able to link serial and mpi flavors of libhdf5
into the same executable.

I use the helper script make-version-scripts to generate them. I don't
care about identifying local symbols for now.

About C++ symbols tracking
--------------------------
Tracking C++ versioned symbols is complicated:
* Firstly we need to track them under their unmangled form to be arch
  independant.
* Secondly I discovered after many /try fail repeat/ that dpkg-gensymbols
  wants the verbose unmangled symbols (output from 'c++filt' command)
  while version scripts want the non verbose ones (output from
  'c++filt -i' command).
* Finaly the patches generated by dpkg-gensymbols don't allow any
  comment in the symbols files and requires a specific sorting order
  (bug #773718).

All these concerns are handled by three helper scripts:
* debian/process-symbols-files
* debian/sort-symbols
* debian/make-version-scripts
The entry point being debian/process-symbols-files.

There was a non backward-compatible change in the C++ API between releases
1.8.11 and 1.8.12 with no soname bump. Since there is no packages in sid
using this C++ library, we didn't bother.

The script debian/check-dep-on-hdf5-cpp is used to check these dependencies.

Manpages
--------
$ help2man -n "helper script to compile HDF5 Fortran applications" --version-string="h5pfc (hdf5 1.8.12)" -h -help -N h5pfc >debian/man/h5pfc.1
$ help2man -n "helper script to compile HDF5 C applications" --version-string="h5pcc (hdf5 1.8.12)" -h -help -N h5pcc >debian/man/h5pcc.1
$ help2man -n "debugs an existing HDF5 file at a low level" --version-string="h5debug (hdf5 1.8.12)" -N 'bash -c "h5debug 2>&1"' >debian/man/h5debug.1

TO-DO
-----
* common manpage for h5*{c,f}c

 -- Francesco Paolo Lovergine <frankie@debian.org> Mon Jan 25 06:00:00 CET 2010
 -- Gilles Filippini <pini@debian.org>  Wed, 10 Apr 2019 13:19:06 +0200