[Bug 226431] Merge Review: squid

bugzilla at redhat.com bugzilla at redhat.com
Tue Dec 15 15:41:03 UTC 2009


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


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





--- Comment #4 from Adam Tkac <atkac at redhat.com>  2009-12-15 10:40:59 EDT ---
Formal review of squid-3.1.0.15-2.fc13:

"+" means OK, "-" means not OK

+ MUST: The package must be named according to the Package Naming Guidelines
+ MUST: The spec file name must match the base package %{name}, in the format
%{name}.spec
- MUST(1): The package must meet the Packaging Guidelines
+ MUST: The package must be licensed with a Fedora approved license and meet
the Licensing Guidelines .
- MUST(2): The License field in spec match the actual license
- MUST(3): If (and only if) the source package includes the text of the
license(s) in its own file, then that file must be included in %doc
+ MUST: The spec file written in American English
+ MUST: The spec file for the package is legible
+ MUST: The sources used to build the package must match the upstream source,
as provided in the spec URL
+ MUST: The package successfully compile
+ MUST: All build dependencies must be listed in BuildRequires
- MUST(4): The spec file handle locales properly
+ MUST: Every package which stores shared library files in any of the dynamic
linker's default paths, must call ldconfig in %post and %postun
+ MUST: Packages does not bundle copies of system libraries
+ MUST: Package own all directories that it creates
+ MUST: Package does not list a file more than once in the spec file
+ MUST: Permissions on files must be set properly. Every %files section must
include a %defattr(...) line
+ MUST: Package has a %clean section, which contains rm -rf %{buildroot} (or
$RPM_BUILD_ROOT)
- MUST(5): Package use macros consistently
+ MUST: Package contains code, or permissable content
+ MUST: Large documentation files must go in a -doc subpackage
+ MUST: If a package includes something as %doc, it must not affect the runtime
of the application
+ MUST: Header files in a -devel package
+ MUST: Static libraries in a -static package
+ MUST: Packages containing pkgconfig(.pc) files must 'Requires: pkgconfig'
+ MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1),
then library files that end in .so (without suffix) must go in a -devel package
+ MUST: In the vast majority of cases, devel packages must require the base
package using a fully versioned dependency: Requires: %{name} =
%{version}-%{release}
+ MUST: Packages must NOT contain any .la libtool archives, these must be
removed in the spec if they are built
+ MUST: Packages containing GUI applications must include a %{name}.desktop
file
+ MUST: Packages must not own files or directories already owned by other
packages
+ MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot}
(or $RPM_BUILD_ROOT)
+ MUST: All filenames in rpm packages must be valid UTF-8.

1: Use versioned Sources, please (s/Source/Source0/)
2: It seems package is distributed under GPLv2 only, not GPLv2+
3: Include COPYING and COPYRIGHT files in %doc, please
4: use %find_lang macro, please. Check
https://fedoraproject.org/wiki/Packaging:Guidelines#Handling_Locale_Files for
more information
5: Use $RPM_OPT_FLAGS macro instead of %{optflags}


Other:
- please remove Source1 (the .asc signature). I don't see any reason to include
  it in the package
- don't use -fPIE flag on architectures where -fpie is sufficient because -fpie
  generates faster code. I suggest to use this in the specfile:

%ifarch sparcv9 sparc64 s390 s390x
export CXXFLAGS="$RPM_OPT_FLAGS -fPIE"
export CFLAGS="$RPM_OPT_FLAGS -fPIE"
%else
export CXXFLAGS="$RPM_OPT_FLAGS -fpie"
export CFLAGS="$RPM_OPT_FLAGS -fpie"
%endif

export LDFLAGS="-pie"

- I recommend to drop -Os, -g, -pipe and -fsigned-char parameters
- don't export CFLAGS, CXXFLAGS and LDFLAGS twice, the first export is
  sufficient
- please use macros instead of hardcoded paths:
  - use %{_sysconfdir} instead of /etc
  - use %{_datadir} instead of /usr/share
- fix (or explain) all rpmlint warnings
- consider to add LSB header to initscript (not required, check
  https://fedoraproject.org/wiki/Packaging:SysVInitScript#LSB_Header)
- remove the %triggerin as written in comments #1, #2 and #3

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.




More information about the Fedora-package-review mailing list