https://bugzilla.redhat.com/show_bug.cgi?id=2165536 --- Comment #2 from Petr Pisar <ppisar@xxxxxxxxxx> --- URL and Source0 addresses are Ok. Source0 archive (SHA-512: 7b245d490281467bd78ce0f3ae21c168a737c3ca36310cff67677aeb4a715759efdb26ca71bdfef9e6b8e10ba3dc80e407afa60c1632093dd5269805ba2cc172) is original. Ok. TODO: I think this package should be called "bee2". It's the name used on the home page, on github and also the archive is called like that. TODO: The libbee2 summary is very general. I see that the algorithm names are quite terrible, but couldn't the summary be made more specific? E.g. "STB cryptography"? The same applies to bsum summary. Description texts are Ok. GPL-3.0-only license verified in win/bee2.rc, win/bee2.c, test/test.c, README.md, LICENSE and other files. include/bee2/info.h* are files are "GPL-3.0-only AND GPL-3.0-or-later". include/bee2/info.h is included into src/core/util.c which is linked into bee2 dynamic and static libraries. bsum tool links to a dynamic library, hence it does not contain the header file. FIX: Please correct the license tag for libbee2 and libbee2-devel packages to "GPL-3.0-only AND GPL-3.0-or-later". bsum should use "GPL-3.0-only". TODO: It's possible the GPL-3.0-or-later license is an upstream's mistake. Please report it. FIX: Build-require 'sed' (libbee2.spec:45). TODO: You don't have to add -fPIE and -pie to build flags. Fedora default build flags linked from CFLAGS and LDFLAGS environment variables already do that. FIX: Build-require "coreutils" (libbee2.spec:67). The assembler code with SMD instructions is not built. Thus the resulting code is compatible with a minimal Fedora-supported CPU instruction set. FIX: A soname of the library is "libbee2.so.2.0". The %files section must name it explicitly <https://docs.fedoraproject.org/en-US/packaging-guidelines/#_listing_shared_library_files>, hence "%{_libdir}/libbee2.so.2.*" glob is not specific enough. Use "%{_libdir}/libbee2.so.2.0" and "%{_libdir}/libbee2.so.%{version}" to capture both files. All tests pass. Ok. $ rpmlint libbee2.spec ../SRPMS/libbee2-2.1.0-1.fc38.src.rpm ../RPMS/x86_64/libbee2-* ../RPMS/x86_64/bsum-* ======================================== rpmlint session starts ======================================= rpmlint: 2.4.0 configuration: /usr/lib/python3.11/site-packages/rpmlint/configdefaults.toml /etc/xdg/rpmlint/fedora-legacy-licenses.toml /etc/xdg/rpmlint/fedora-spdx-licenses.toml /etc/xdg/rpmlint/fedora.toml /etc/xdg/rpmlint/scoring.toml /etc/xdg/rpmlint/users-groups.toml /etc/xdg/rpmlint/warn-on-functions.toml checks: 31, packages: 8 bsum.x86_64: W: no-manual-page-for-binary bsum bsum.x86_64: W: no-documentation ========= 7 packages and 1 specfiles checked; 0 errors, 2 warnings, 0 badness; has taken 0.6 s ======== rpmlint is Ok. $ rpm -q -lv -p ../RPMS/x86_64/libbee2-2.1.0-1.fc38.x86_64.rpm drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/lib/.build-id drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/lib/.build-id/78 lrwxrwxrwx 1 root root 38 Jan 30 01:00 /usr/lib/.build-id/78/bd508922a537e5e8af20c139756d4c1cac60e7 -> ../../../../usr/lib64/libbee2.so.2.1.0 lrwxrwxrwx 1 root root 16 Jan 30 01:00 /usr/lib64/libbee2.so.2.0 -> libbee2.so.2.1.0 -rwxr-xr-x 1 root root 765744 Jan 30 01:00 /usr/lib64/libbee2.so.2.1.0 drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/share/doc/libbee2 -rw-r--r-- 1 root root 905 Jun 30 2021 /usr/share/doc/libbee2/AUTHORS.md -rw-r--r-- 1 root root 3242 Jun 30 2021 /usr/share/doc/libbee2/README.md drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/share/licenses/libbee2 -rw-r--r-- 1 root root 35142 Jun 30 2021 /usr/share/licenses/libbee2/LICENSE -rw-r--r-- 1 root root 1888 Jan 30 01:00 /usr/share/man/man3/b64.h.3.gz -rw-r--r-- 1 root root 5689 Jan 30 01:00 /usr/share/man/man3/bake.h.3.gz -rw-r--r-- 1 root root 452 Jan 30 01:00 /usr/share/man/man3/bake_cert.3.gz -rw-r--r-- 1 root root 611 Jan 30 01:00 /usr/share/man/man3/bake_settings.3.gz -rw-r--r-- 1 root root 4443 Jan 30 01:00 /usr/share/man/man3/bash.h.3.gz -rw-r--r-- 1 root root 3741 Jan 30 01:00 /usr/share/man/man3/bels.h.3.gz -rw-r--r-- 1 root root 10828 Jan 30 01:00 /usr/share/man/man3/belt.h.3.gz -rw-r--r-- 1 root root 4462 Jan 30 01:00 /usr/share/man/man3/bign.h.3.gz -rw-r--r-- 1 root root 560 Jan 30 01:00 /usr/share/man/man3/bign_params.3.gz -rw-r--r-- 1 root root 2019 Jan 30 01:00 /usr/share/man/man3/blob.h.3.gz -rw-r--r-- 1 root root 5356 Jan 30 01:00 /usr/share/man/man3/botp.h.3.gz -rw-r--r-- 1 root root 3497 Jan 30 01:00 /usr/share/man/man3/brng.h.3.gz -rw-r--r-- 1 root root 4651 Jan 30 01:00 /usr/share/man/man3/defs.h.3.gz -rw-r--r-- 1 root root 5099 Jan 30 01:00 /usr/share/man/man3/der.h.3.gz -rw-r--r-- 1 root root 439 Jan 30 01:00 /usr/share/man/man3/der_anchor.3.gz -rw-r--r-- 1 root root 3554 Jan 30 01:00 /usr/share/man/man3/dstu.h.3.gz -rw-r--r-- 1 root root 559 Jan 30 01:00 /usr/share/man/man3/dstu_params.3.gz -rw-r--r-- 1 root root 5683 Jan 30 01:00 /usr/share/man/man3/ec.h.3.gz -rw-r--r-- 1 root root 2350 Jan 30 01:00 /usr/share/man/man3/ec2.h.3.gz -rw-r--r-- 1 root root 1194 Jan 30 01:00 /usr/share/man/man3/ec_o.3.gz -rw-r--r-- 1 root root 2673 Jan 30 01:00 /usr/share/man/man3/ecp.h.3.gz -rw-r--r-- 1 root root 999 Jan 30 01:00 /usr/share/man/man3/err.h.3.gz -rw-r--r-- 1 root root 3039 Jan 30 01:00 /usr/share/man/man3/g12s.h.3.gz -rw-r--r-- 1 root root 599 Jan 30 01:00 /usr/share/man/man3/g12s_params.3.gz -rw-r--r-- 1 root root 2827 Jan 30 01:00 /usr/share/man/man3/gf2.h.3.gz -rw-r--r-- 1 root root 1306 Jan 30 01:00 /usr/share/man/man3/gfp.h.3.gz -rw-r--r-- 1 root root 1870 Jan 30 01:00 /usr/share/man/man3/hex.h.3.gz -rw-r--r-- 1 root root 273 Jan 30 01:00 /usr/share/man/man3/info.h.3.gz -rw-r--r-- 1 root root 3869 Jan 30 01:00 /usr/share/man/man3/mem.h.3.gz -rw-r--r-- 1 root root 2751 Jan 30 01:00 /usr/share/man/man3/mt.h.3.gz -rw-r--r-- 1 root root 1813 Jan 30 01:00 /usr/share/man/man3/obj.h.3.gz -rw-r--r-- 1 root root 439 Jan 30 01:00 /usr/share/man/man3/obj_hdr_t.3.gz -rw-r--r-- 1 root root 1553 Jan 30 01:00 /usr/share/man/man3/oid.h.3.gz -rw-r--r-- 1 root root 3145 Jan 30 01:00 /usr/share/man/man3/pfok.h.3.gz -rw-r--r-- 1 root root 491 Jan 30 01:00 /usr/share/man/man3/pfok_params.3.gz -rw-r--r-- 1 root root 413 Jan 30 01:00 /usr/share/man/man3/pfok_seed.3.gz -rw-r--r-- 1 root root 4966 Jan 30 01:00 /usr/share/man/man3/pp.h.3.gz -rw-r--r-- 1 root root 452 Jan 30 01:00 /usr/share/man/man3/pp_pentanom_st.3.gz -rw-r--r-- 1 root root 411 Jan 30 01:00 /usr/share/man/man3/pp_trinom_st.3.gz -rw-r--r-- 1 root root 3076 Jan 30 01:00 /usr/share/man/man3/pri.h.3.gz -rw-r--r-- 1 root root 1983 Jan 30 01:00 /usr/share/man/man3/prng.h.3.gz -rw-r--r-- 1 root root 4538 Jan 30 01:00 /usr/share/man/man3/qr.h.3.gz -rw-r--r-- 1 root root 1072 Jan 30 01:00 /usr/share/man/man3/qr_o.3.gz -rw-r--r-- 1 root root 4041 Jan 30 01:00 /usr/share/man/man3/rng.h.3.gz -rw-r--r-- 1 root root 1563 Jan 30 01:00 /usr/share/man/man3/safe.h.3.gz -rw-r--r-- 1 root root 1884 Jan 30 01:00 /usr/share/man/man3/stack.h.3.gz -rw-r--r-- 1 root root 1642 Jan 30 01:00 /usr/share/man/man3/str.h.3.gz -rw-r--r-- 1 root root 1960 Jan 30 01:00 /usr/share/man/man3/tm.h.3.gz -rw-r--r-- 1 root root 1764 Jan 30 01:00 /usr/share/man/man3/u16.h.3.gz -rw-r--r-- 1 root root 1761 Jan 30 01:00 /usr/share/man/man3/u32.h.3.gz -rw-r--r-- 1 root root 1759 Jan 30 01:00 /usr/share/man/man3/u64.h.3.gz -rw-r--r-- 1 root root 3062 Jan 30 01:00 /usr/share/man/man3/util.h.3.gz -rw-r--r-- 1 root root 1443 Jan 30 01:00 /usr/share/man/man3/word.h.3.gz -rw-r--r-- 1 root root 4784 Jan 30 01:00 /usr/share/man/man3/ww.h.3.gz -rw-r--r-- 1 root root 2452 Jan 30 01:00 /usr/share/man/man3/zm.h.3.gz -rw-r--r-- 1 root root 7261 Jan 30 01:00 /usr/share/man/man3/zz.h.3.gz FIX: Section 3 manual pages belong to devel subpackage. They document an API of the library. $ rpm -q -lv -p ../RPMS/x86_64/libbee2-devel-2.1.0-1.fc38.x86_64.rpm -rw-r--r-- 1 root root 5452 Jun 30 2021 /usr/include/bee2/core/b64.h -rw-r--r-- 1 root root 6421 Jun 30 2021 /usr/include/bee2/core/blob.h -rw-r--r-- 1 root root 7277 Jun 30 2021 /usr/include/bee2/core/dec.h -rw-r--r-- 1 root root 23828 Jun 30 2021 /usr/include/bee2/core/der.h -rw-r--r-- 1 root root 8253 Jun 30 2021 /usr/include/bee2/core/err.h -rw-r--r-- 1 root root 7620 Jun 30 2021 /usr/include/bee2/core/hex.h -rw-r--r-- 1 root root 17205 Jun 30 2021 /usr/include/bee2/core/mem.h -rw-r--r-- 1 root root 8929 Jun 30 2021 /usr/include/bee2/core/mt.h -rw-r--r-- 1 root root 6297 Jun 30 2021 /usr/include/bee2/core/obj.h -rw-r--r-- 1 root root 4584 Jun 30 2021 /usr/include/bee2/core/oid.h -rw-r--r-- 1 root root 7453 Jun 30 2021 /usr/include/bee2/core/prng.h -rw-r--r-- 1 root root 15568 Jun 30 2021 /usr/include/bee2/core/rng.h -rw-r--r-- 1 root root 4911 Jun 30 2021 /usr/include/bee2/core/safe.h -rw-r--r-- 1 root root 6143 Jun 30 2021 /usr/include/bee2/core/stack.h -rw-r--r-- 1 root root 4979 Jun 30 2021 /usr/include/bee2/core/str.h -rw-r--r-- 1 root root 5923 Jun 30 2021 /usr/include/bee2/core/tm.h -rw-r--r-- 1 root root 5602 Jun 30 2021 /usr/include/bee2/core/u16.h -rw-r--r-- 1 root root 5610 Jun 30 2021 /usr/include/bee2/core/u32.h -rw-r--r-- 1 root root 5957 Jun 30 2021 /usr/include/bee2/core/u64.h -rw-r--r-- 1 root root 10459 Jun 30 2021 /usr/include/bee2/core/util.h -rw-r--r-- 1 root root 7654 Jun 30 2021 /usr/include/bee2/core/word.h -rw-r--r-- 1 root root 38070 Jun 30 2021 /usr/include/bee2/crypto/bake.h -rw-r--r-- 1 root root 21129 Jun 30 2021 /usr/include/bee2/crypto/bash.h -rw-r--r-- 1 root root 19295 Jun 30 2021 /usr/include/bee2/crypto/bels.h -rw-r--r-- 1 root root 89383 Jun 30 2021 /usr/include/bee2/crypto/belt.h -rw-r--r-- 1 root root 29707 Jun 30 2021 /usr/include/bee2/crypto/bign.h -rw-r--r-- 1 root root 27544 Jun 30 2021 /usr/include/bee2/crypto/botp.h -rw-r--r-- 1 root root 9308 Jun 30 2021 /usr/include/bee2/crypto/bpki.h -rw-r--r-- 1 root root 15510 Jun 30 2021 /usr/include/bee2/crypto/brng.h -rw-r--r-- 1 root root 14895 Jun 30 2021 /usr/include/bee2/crypto/dstu.h -rw-r--r-- 1 root root 12092 Jun 30 2021 /usr/include/bee2/crypto/g12s.h -rw-r--r-- 1 root root 16418 Jun 30 2021 /usr/include/bee2/crypto/pfok.h -rw-r--r-- 1 root root 23223 Jun 30 2021 /usr/include/bee2/defs.h -rw-r--r-- 1 root root 7237 Jun 30 2021 /usr/include/bee2/info.h -rw-r--r-- 1 root root 32259 Jun 30 2021 /usr/include/bee2/math/ec.h -rw-r--r-- 1 root root 9418 Jun 30 2021 /usr/include/bee2/math/ec2.h -rw-r--r-- 1 root root 10605 Jun 30 2021 /usr/include/bee2/math/ecp.h -rw-r--r-- 1 root root 9833 Jun 30 2021 /usr/include/bee2/math/gf2.h -rw-r--r-- 1 root root 3966 Jun 30 2021 /usr/include/bee2/math/gfp.h -rw-r--r-- 1 root root 23799 Jun 30 2021 /usr/include/bee2/math/pp.h -rw-r--r-- 1 root root 13648 Jun 30 2021 /usr/include/bee2/math/pri.h -rw-r--r-- 1 root root 21969 Jun 30 2021 /usr/include/bee2/math/qr.h -rw-r--r-- 1 root root 24548 Jun 30 2021 /usr/include/bee2/math/ww.h -rw-r--r-- 1 root root 11723 Jun 30 2021 /usr/include/bee2/math/zm.h -rw-r--r-- 1 root root 48871 Jun 30 2021 /usr/include/bee2/math/zz.h lrwxrwxrwx 1 root root 14 Jan 30 01:00 /usr/lib64/libbee2.so -> libbee2.so.2.0 FIX: devel subpackage must own %{_includedir}/bee2, %{_includedir}/bee2/core etc. directories. I recommend simply using "%{_includedir}/bee2" in %files section instead of listing files separately. $ rpm -q -lv -p ../RPMS/x86_64/bsum-2.1.0-1.fc38.x86_64.rpm -rwxr-xr-x 1 root root 15592 Jan 30 01:00 /usr/bin/bsum drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/lib/.build-id drwxr-xr-x 2 root root 0 Jan 30 01:00 /usr/lib/.build-id/fa lrwxrwxrwx 1 root root 24 Jan 30 01:00 /usr/lib/.build-id/fa/11ffb604a21eab277b740f03211e607b09e825 -> ../../../../usr/bin/bsum bsum binary package layou and file permissions are Ok. $ rpm -q --requires -p ../RPMS/x86_64/libbee2-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 libc.so.6()(64bit) 1 libc.so.6(GLIBC_2.14)(64bit) 1 libc.so.6(GLIBC_2.2.5)(64bit) 1 libc.so.6(GLIBC_2.3.4)(64bit) 1 libc.so.6(GLIBC_2.4)(64bit) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsZstd) <= 5.4.18-1 1 rtld(GNU_HASH) $ rpm -q --requires -p ../RPMS/x86_64/libbee2-devel-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 libbee2(x86-64) = 2.1.0-1.fc38 1 libbee2.so.2.0()(64bit) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsZstd) <= 5.4.18-1 $ rpm -q --requires -p ../RPMS/x86_64/bsum-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 libbee2(x86-64) = 2.1.0-1.fc38 1 libbee2.so.2.0()(64bit) 1 libc.so.6()(64bit) 1 libc.so.6(GLIBC_2.2.5)(64bit) 1 libc.so.6(GLIBC_2.3.4)(64bit) 1 libc.so.6(GLIBC_2.34)(64bit) 1 libc.so.6(GLIBC_2.4)(64bit) 1 rpmlib(CompressedFileNames) <= 3.0.4-1 1 rpmlib(FileDigests) <= 4.6.0-1 1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 1 rpmlib(PayloadIsZstd) <= 5.4.18-1 1 rtld(GNU_HASH) Binary requires are Ok. $ rpm -q --provides -p ../RPMS/x86_64/libbee2-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 libbee2 = 2.1.0-1.fc38 1 libbee2(x86-64) = 2.1.0-1.fc38 1 libbee2.so.2.0()(64bit) $ rpm -q --provides -p ../RPMS/x86_64/libbee2-devel-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 libbee2-devel = 2.1.0-1.fc38 1 libbee2-devel(x86-64) = 2.1.0-1.fc38 $ rpm -q --provides -p ../RPMS/x86_64/bsum-2.1.0-1.fc38.x86_64.rpm | sort -f | uniq -c 1 bsum = 2.1.0-1.fc38 1 bsum(x86-64) = 2.1.0-1.fc38 Binary provides are Ok. $ resolvedeps rawhide ../RPMS/x86_64/{libbee2,libbee2-devel,bsum}-2.1.0-1.fc38.x86_64.rpm Binary dependencies are resolvable. Ok. The package fails to build on s390x F38 (https://koji.fedoraproject.org/koji/taskinfo?taskID=97237047) because a beltTest test fails there. s390x is a big-endian, 64-bit, signed char archicterure. Maybe there is a bug in the library which manifests on that architecture. FIX: Either fix the bug, or exclude the package from building on s390x with "ExcludeArch: s390x" <https://docs.fedoraproject.org/en-US/packaging-guidelines/#_architecture_build_failures>. Otherwise, the package is in line with Fedora packaging guidelines. Please correct the FIX items, consider fixing TODO items, and provide a new spec file. -- 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 https://bugzilla.redhat.com/show_bug.cgi?id=2165536 _______________________________________________ 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 Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue