Help needed with supernovas package
Hi All,
I have now put together a preliminary debian package for the SuperNOVAS
library on salsa:
https://salsa.debian.org/debian-astro-team/supernovas
I did my best to follow documentation (the AstropyPackagingTutorial, and
then whatever else I could find to fill in the blanks for non-python
packaging). The package now builds fine on master. There are no lintian
errors. However there are a couple of warnings left that I have not
figured out hot to fix exactly.
I'm asking for help to fix these, before or as part of the package review.
Here's a list of the remaining warnings:
0. lintian: dh-make-template-in-source -- I intentionally left some
of the example files in there for now in case I might want to use these
to fix some of the other issues. I'll remove these once the rest of the
issues have been cured.
1. lintian: W: supernovas-doc: doc-base-unknown-section
supernovas-doc.supernovas:6 libs
I ave not found anything relevant online on how to specify section for
doc-base. (The supernovas-doc package that generates the warning is
itself in the 'doc' section)
2. lintian: W: supernovas: package-name-doesnt-match-sonames
libsolsys1-1 libsolsys2-1 libsupernovas1
Well, the main package is 'supernovas'. I guess it could be renamed to
'libsupernovas', to match one of the libraries. But given it has three,
no package name will eliminate this warning. I think that is OK. The
solsys libs are provided for legacy applications which linked one or the
other to provide implementation for the same 'solarsystem()' call. Mos
users will need neither, but some will need one or the other to link and
run their programs. Alternatively they could be split into spearate
packages, but to me they seem an integral part (by I'm amenable, if you
think otherwise).
3. During the build I get warnings like: dpkg-shlibdeps: warning:
symbol novas_error used by
debian/supernovas/usr/lib/x86_64-linux-gnu/libsolsys1.so.1 found in none
of the libraries
Well, the 'missing' symbol is in the 'libsupernovas' lib that is built
sperately. So, it's a false positive really. I can of course complicate
the build to make libsolsys1.so.1 and libsolsys2.so.1 depend on
libsupernovas.so.1 and then link against it using the staging location.
I think that is overcomplicating it though, so if you don't mind I'll
ignore these. There are a few fortran symbols for solsys2.so.1, which
must be provided externally. Anyone that uses legacy code that needs
these calls would have had to have their implementations. I think it's
OK to leave these symbols external. I can maybe add documentation
explaining it if that's useful.
4. The debian documentation mentions that shared libraries should also
declare their symbols (in my case via 'debian/supernovas.symbols').
However, I have not found a definitive document on how to generate
these. I have found a few documents relating to the symbols but they
seem to be at odds with one another. So, I'd appreciate any help on how
to tackle generating this file.
Other than the above, I welcome an comments / suggestions on improving
the package. Once it's looking good, please let me know what's the next
step to get it towards releasing it.
Thank you all,
-- Attila.
Reply to: