https://bugzilla.redhat.com/show_bug.cgi?id=1795461
--- Comment #18 from Ankur Sinha (FranciscoD) <sanjay.ankur(a)gmail.com> ---
Looks good, a few queries before it can be approved:
Package Review
==============
Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
[ ] = Manual review needed
Issues:
=======
- upstream doesn't have the 0.951 release here:
https://sourceforge.net/projects/pracrand/files/
The source URL you use is your own fork:
https://github.com/jirka-h/PractRand/
So, are we packaging your fork here?
- Please remove the license.txt file from docs and mark it using the %license
macro
License file license.txt is not marked as %license See:
https://docs.fedoraproject.org/en-US/packaging-guidelines/LicensingGuidel...
- You also do not need to copy the docs to the docdir. You can just use: %doc
doc/ in %files and that'll copy over the files.
- build flags aren't used in the compilation commands.
- should the package include a -devel sub-package that includes headers and so
on?
===== MUST items =====
C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: If your application is a C or C++ application you must list a
BuildRequires against gcc, gcc-c++ or clang.
[x]: Header files in -devel subpackage, if present.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.
Generic:
[x]: Package is licensed with an open-source compatible license and meets
other legal requirements as defined in the legal section of Packaging
Guidelines.
[x]: License field in the package spec file matches the actual license.
Note: Checking patched sources after %prep for licenses. Licenses
found: "Unknown or generated". 156 files have unknown license.
Detailed output of licensecheck in /home/asinha/dump/fedora-
reviews/1795461-practrand/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[!]: %build honors applicable compiler flags or justifies otherwise.
^
Build flags are set, but not used in the build:
+ g++ -c src/math.cpp src/non_uniform.cpp src/platform_specifics.cpp
src/rand.cpp src/sha2.cpp src/test_batteries.cpp src/tests.cpp
src/RNGs/arbee.cpp src/RNGs/chacha.cpp src/RNGs/efiix.cpp src/RNGs/hc256.cpp
src/RNGs/isaac.cpp src/RNGs/jsf.cpp src/RNGs/mt19937.cpp src/RNGs/rarns.cpp
src/RNGs/salsa.cpp src/RNGs/sfc.cpp src/RNGs/sha2_based_pool.cpp
src/RNGs/trivium.cpp src/RNGs/xsm.cpp src/RNGs/other/fibonacci.cpp
src/RNGs/other/indirection.cpp src/RNGs/other/mult.cpp
src/RNGs/other/simple.cpp src/RNGs/other/transform.cpp -I include -std=c++11
-O3 -g
+ g++ -o practrand-RNG_test tools/RNG_test.cpp arbee.o chacha.o efiix.o
fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o
non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o
sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o
-I include -I tools -pthread -std=c++11 -O3 -g
+ g++ -o practrand-RNG_output tools/RNG_output.cpp arbee.o chacha.o efiix.o
fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o
non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o
sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o
-I include -I tools -pthread -std=c++11 -O3 -g
+ g++ -o practrand-RNG_benchmark tools/RNG_benchmark.cpp arbee.o chacha.o
efiix.o fibonacci.o hc256.o indirection.o isaac.o jsf.o math.o mt19937.o mult.o
non_uniform.o platform_specifics.o rand.o rarns.o salsa.o sfc.o sha2.o
sha2_based_pool.o simple.o test_batteries.o tests.o transform.o trivium.o xsm.o
-I include -I tools -pthread -std=c++11 -O3 -g
You'll have to use:
$CC $CXXFLAGS ...
to use the exported variables
Any reason to not use the included Makefile?
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Package contains desktop file if it is a GUI application.
[!]: Development files must be in a -devel package
^
Is this meant to be used as a library too? Should the headers be packaged?
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory
names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[-]: Large documentation must go in a -doc subpackage. Large could be size
(~1MB) or number of files.
Note: Documentation size is 256000 bytes in 22 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least
one supported primary architecture.
Scratch build for rawhide looks good:
https://koji.fedoraproject.org/koji/taskinfo?taskID=65029183
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
Note: There are rpmlint messages (see attachment).
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Dist tag is present.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package must not depend on deprecated() packages.
[x]: Package use %makeinstall only when make install DESTDIR=... doesn't
work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package does not use a name that already exists.
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as
provided in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
%{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local
===== SHOULD items =====
Generic:
[-]: If the source package does not include license text(s) as a separate
file from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[?]: Package functions as described.
^
Not tested this out yet.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[-]: Sources are verified with gpgverify first in %prep if upstream
publishes signatures.
Note: gpgverify is not used.
[-]: Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
architectures.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed
files.
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
$RPM_BUILD_ROOT)
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Fully versioned dependency in subpackages if applicable.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.
===== EXTRA items =====
Generic:
[x]: Rpmlint is run on debuginfo package(s).
Note: No rpmlint messages.
[x]: Rpmlint is run on all installed packages.
Note: There are rpmlint messages (see attachment).
[x]: Large data in /usr/share should live in a noarch subpackage if package
is arched.
[x]: Spec file according to URL is the same as in SRPM.
Rpmlint
-------
Checking: practrand-0.951-1.fc35.x86_64.rpm
practrand-debuginfo-0.951-1.fc35.x86_64.rpm
practrand-debugsource-0.951-1.fc35.x86_64.rpm
practrand-0.951-1.fc35.src.rpm
practrand.x86_64: W: spelling-error %description -l en_US Multithreaded ->
Multicolored
practrand.src: W: spelling-error %description -l en_US Multithreaded ->
Multicolored
4 packages and 0 specfiles checked; 0 errors, 2 warnings.
Rpmlint (debuginfo)
-------------------
Checking: practrand-debuginfo-0.951-1.fc35.x86_64.rpm
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
Rpmlint (installed packages)
----------------------------
practrand.x86_64: W: spelling-error %description -l en_US Multithreaded ->
Multicolored
3 packages and 0 specfiles checked; 0 errors, 1 warnings.
Source checksums
----------------
https://github.com/jirka-h/PractRand/archive/0.951/PractRand-0.951.tar.gz :
CHECKSUM(SHA256) this package :
0e4e172449d25df1eeb149dae8614f3cd2b03110ffdafc2f659097040df0f558
CHECKSUM(SHA256) upstream package :
0e4e172449d25df1eeb149dae8614f3cd2b03110ffdafc2f659097040df0f558
Requires
--------
practrand (rpmlib, GLIBC filtered):
libc.so.6()(64bit)
libgcc_s.so.1()(64bit)
libgcc_s.so.1(GCC_3.0)(64bit)
libm.so.6()(64bit)
libpthread.so.0()(64bit)
libstdc++.so.6()(64bit)
libstdc++.so.6(CXXABI_1.3)(64bit)
libstdc++.so.6(CXXABI_1.3.8)(64bit)
rtld(GNU_HASH)
practrand-debuginfo (rpmlib, GLIBC filtered):
practrand-debugsource (rpmlib, GLIBC filtered):
Provides
--------
practrand:
practrand
practrand(x86-64)
practrand-debuginfo:
debuginfo(build-id)
practrand-debuginfo
practrand-debuginfo(x86-64)
practrand-debugsource:
practrand-debugsource
practrand-debugsource(x86-64)
Generated by fedora-review 0.7.6 (b083f91) last change: 2020-11-10
Command line :/usr/bin/fedora-review -b 1795461
Buildroot used: fedora-rawhide-x86_64
Active plugins: Shell-api, C/C++, Generic
Disabled plugins: PHP, Haskell, R, Python, Java, Ocaml, fonts, Perl,
SugarActivity
Disabled flags: EPEL6, EPEL7, DISTTAG, BATCH, EXARCH
--
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