[Bug 1326504] Review Request: htslib - C library for high-throughput sequencing data formats (required for `samtools`)

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

 



https://bugzilla.redhat.com/show_bug.cgi?id=1326504



--- Comment #22 from Dave Love <dave.love@xxxxxxxxxxxxxxxx> ---
> A test for rpmlint. There is below warning. But I like to postpone to fix it.
> 
> ```
> htslib.x86_64: W: shared-lib-calls-exit /usr/lib64/libhts.so.1.9

I confess I ignore those.  I'm not at all sure it's sensible as a
general stipulation.

> > * licensecheck says Expat rather than MIT -- I haven't checked
> 
> There is no "Expat" in the short name list used as "License:"'s value.
> https://fedoraproject.org/wiki/Licensing:Main?rd=Licensing#SoftwareLicenses
> 
> Also below package setting "MIT" is actually detected as "Expat" by
> licensecheck command.
> https://src.fedoraproject.org/rpms/golang-uber-zap/blob/master/f/golang-uber-
> zap.spec#_33
> 
> I think "MIT" is fine.

Ah.  That probably merits a bug report.

> `make` command creates libhts.so (actual so file) and libhts.so.2 (symbolic
> link to libhts.so) on the current directory.
> But `make install prefix=$(pwd)/dist` creates below files soname:
> libhts.so.1.9 and symbolic links: libhts.so and libhts.so.2. libhts.so.1.9
> is the actual soname used in the binary RPM file.
> 
> ```
> $ ls -l dist/lib/
> total 10576
> -rw-r--r-- 1 jaruga jaruga 7165054 Sep 15 21:54 libhts.a
> lrwxrwxrwx 1 jaruga jaruga      13 Sep 15 22:01 libhts.so -> libhts.so.1.9
> -rw-r--r-- 1 jaruga jaruga 3653800 Sep 15 21:55 libhts.so.1.9
> lrwxrwxrwx 1 jaruga jaruga      13 Sep 15 22:01 libhts.so.2 -> libhts.so.1.9
> drwxr-xr-x 2 jaruga jaruga    4096 Sep 15 22:01 pkgconfig/
> ```
> 
> Do you have any concerns about this situation?
> I suppose that current situation is no problem.

It's simply wrong.  .so.1.9 and .so.2 imply incompatible ABIs.  Using
1.9 suggests that it's doing the wrong thing anyhow, by using the
software version, not the ABI version, so you probably don't want to
follow it.  Without investigating, I don't know whether it would be
best to use .so.1 or .so.2 in the soname.  Then the spec should use
that explicitly in %files, not a glob, to be proof against inadvertent
changes.  For packaging info see
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_downstream_so_name_versioning

Also, the advice is to glob man pages in %files 
<https://docs.fedoraproject.org/en-US/packaging-guidelines/#_manpages>.

If you use %make_build, it includes smp_mflags, so remove that.

-fPIC is redundant in CFLAGS as it comes from the compiler specs.  You
should also set LDFLAGS to %build_ldflags or similar.

Hope that helps.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux