[Bug 871203] Review Request: console-bridge - Lightweight set of macros used for reporting information in libraries

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

 



Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=871203

Ankur Sinha (FranciscoD) <sanjay.ankur@xxxxxxxxx> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
                 CC|                            |sanjay.ankur@xxxxxxxxx
           Assignee|nobody@xxxxxxxxxxxxxxxxx    |sanjay.ankur@xxxxxxxxx
              Alias|                            |console-bridge
              Flags|                            |fedora-review?

--- Comment #5 from Ankur Sinha (FranciscoD) <sanjay.ankur@xxxxxxxxx> ---
Hi Rich:

Here's the review:

[+] OK
[-] NA
[?] Issue

** Mandatory review guidelines: **
 [+] rpmlint output:
[ankur@localhost  SRPMS]$ rpmlint  ../SPECS/console-bridge.spec
./console-bridge-0.1.4-1.fc18.src.rpm
/var/lib/mock/fedora-rawhide-x86_64/result/console-bridge-*rpm
../SPECS/console-bridge.spec: W: invalid-url Source0:
ros-console_bridge-0.1.4-0-g96c8951.tar.gz
console-bridge.src: W: invalid-url Source0:
ros-console_bridge-0.1.4-0-g96c8951.tar.gz
console-bridge.src: W: invalid-url Source0:
ros-console_bridge-0.1.4-0-g96c8951.tar.gz
console-bridge.x86_64: E: invalid-soname /usr/lib64/libconsole_bridge.so
libconsole_bridge.so
console-bridge.x86_64: W: no-documentation
console-bridge-devel.x86_64: W: no-documentation
5 packages and 1 specfiles checked; 1 errors, 5 warnings.
[ankur@localhost  SRPMS]$
^
The soname error is because the soname in the main package should have a
version extension:

libfoo.so.1 

as rpmlint -i describes:
console-bridge.x86_64: E: invalid-soname /usr/lib64/libconsole_bridge.so
libconsole_bridge.so
The soname of the library is neither of the form lib<libname>.so.<major> or
lib<libname>-<major>.so.

As a random example:
[ankur@localhost  lib64]$ lash libkrb5*
   0 lrwxrwxrwx. 1 root root   14 Mar 24 14:30 libkrb5.so -> libkrb5.so.3.3
   0 lrwxrwxrwx. 1 root root   14 Mar  7 20:45 libkrb5.so.3 -> libkrb5.so.3.3
932K -rwxr-xr-x. 1 root root 930K Mar  6 05:29 libkrb5.so.3.3
   0 lrwxrwxrwx. 1 root root   21 Mar 24 14:30 libkrb5support.so ->
libkrb5support.so.0.1
   0 lrwxrwxrwx. 1 root root   21 Mar  7 20:45 libkrb5support.so.0 ->
libkrb5support.so.0.1
 48K -rwxr-xr-x. 1 root root  47K Mar  6 05:29 libkrb5support.so.0.1
[ankur@localhost  lib64]$

The build system files (cmake here) will have to be modified to generate a
versioned
soname. A symlink can then go into the devel package. There isn't a shared
object in the devel package at the moment.

 [+] License is acceptable (...)
 [+] License field in spec is correct
 [?] License files included in package %docs if included in source package
^^
Ros packages generally don't contain the BSD license text in them. Not a
blocker

 [-] License files installed when any subpackage combination is installed
 [-] Spec written in American English
 [-] Spec is legible
 [-] Sources match upstream unless altered to fix permissibility issues
   Upstream SHA256: ...
   Your SHA256:     ...
^ 
>From git checkout using wget

 [+] Build succeeds on at least one primary arch
 [+] Build succeeds on all primary arches or has ExcludeArch + bugs filed
 [+] BuildRequires correct, justified where necessary
 [-] Locales handled with %find_lang, not %_datadir/locale/*
 [ ] %post, %postun call ldconfig if package contains shared .so files
 [+] No bundled libs
 [-] Relocatability is justified
 [+] Package owns all directories it creates
 [-] Package requires others for directories it uses but does not own
 [+] No duplication in %files unless necessary for license files
 [+] File permissions are sane
 [+] Package contains permissible code or content
 [-] Large docs go in -doc subpackage
 [-] %doc files not required at runtime
 [-] Static libs go in -static package/virtual Provides
 [+] Development files go in -devel package
 [+] -devel packages Require base with fully-versioned dependency, %_isa
 [+] No .la files
 [-] GUI app uses .desktop file, installs it with desktop-file-install
 [-] File list does not conflict with other packages' without justification
 [+] File names are valid UTF-8

** Optional review guidelines: **
 [?] Query upstream about including license files
^ ROS, so I don't expect anything, but you can query them when you have the
time.

 [-] Translations of description, summary
 [+] Builds in mock
 [+] Builds on all arches
 [-] Functions as described (e.g. no crashes)
 [?] Scriptlets are sane
^^
Missing scriptlets for shared libraries. BLOCKER
http://fedoraproject.org/wiki/Packaging:Guidelines#Shared_Libraries

 [+] Subpackages require base with fully-versioned dependency if sensible
 [+] .pc file subpackage placement is sensible
 [+] No file deps outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin
 [-] Include man pages if available

Naming guidelines:
 [+] Package names use only a-zA-Z0-9-._+ subject to restrictions on -._+
 [+] Package names are sane
 [+] No naming conflicts
 [+] Spec file name matches base package name
 [+] Version is sane
 [+] Version does not contain ~
 [+] Release is sane
 [+] %dist tag
 [+] Case used only when necessary
 [-] Renaming handled correctly

Packaging guidelines:
 [+] Useful without external bits
 [-] No kmods
 [-] Pre-built binaries, libs removed in %prep
 [+] Sources contain only redistributable code or content
 [+] Spec format is sane
 [+] Package obeys FHS, except libexecdir, /run, /usr/target
 [+] No files in /bin, /sbin, /lib* on >= F17
 [-] Programs run before FS mounting use /run instead of /var/run
 [-] Binaries in /bin, /sbin do not depend on files in /usr on < F17
 [+] No files under /srv, /opt, /usr/local
 [+] Changelog in prescribed format
 [+] No Packager, Vendor, Copyright, PreReq tags
 [+] Summary does not end in a period
 [-] Correct BuildRoot tag on < EL6
 [-] Correct %clean section on < EL6
 [-] Requires correct, justified where necessary
 [-] Summary, description do not use trademarks incorrectly
 [-] All relevant documentation is packaged, appropriately marked with %doc
 [-] Doc files do not drag in extra dependencies (e.g. due to +x)
 [+] Code compilable with gcc is compiled with gcc
 [+] Build honors applicable compiler flags or justifies otherwise
 [-] PIE used for long-running/root daemons, setuid/filecap programs
 [+] Useful -debuginfo package or disabled and justified
 [-] Package with .pc files Requires pkgconfig on < EL6
 [+] No static executables
 [+] Rpath absent or only used for internal libs
 [-] Config files marked with %config(noreplace) or justified %config
 [-] No config files under /usr
 [-] Third party package manager configs acceptable, in %_docdir
 [-] .desktop files are sane
 [+] Spec uses macros consistently
 [+] Spec uses macros instead of hard-coded names where appropriate
 [+] Spec uses macros for executables only when configurability is needed
 [-] %makeinstall used only when alternatives don't work
 [-] Macros in Summary, description are expandable at srpm build time
 [-] Spec uses %{SOURCE#} instead of $RPM_SOURCE_DIR and %sourcedir
 [-] No software collections (scl)
 [-] Macro files named /etc/rpm/macros.%name
 [-] Build uses only python/perl/shell+coreutils/lua/BuildRequired langs
 [+] %global, not %define
 [-] Package translating with gettext BuildRequires it
 [-] Package translating with Linguist BuildRequires qt-devel
 [-] File ops preserve timestamps
 [+] Parallel make
 [+] No Requires(pre,post) notation
 [-] User, group creation handled correctly (See Packaging:UsersAndGroups)
 [-] Web apps go in /usr/share/%name, not /var/www
 [-] Conflicts are justified
 [+] One project per package
 [+] No bundled fonts
 [+] Patches have appropriate commentary
 [-] Available test suites executed in %check
 [-] tmpfiles.d used for /run, /run/lock on >= F15


A few issues need to be worked on before this can be approved: the soname, the
scriptlets are blockers.

Thanks,
Warm regards,
Ankur

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=4TyrGaS4kw&a=cc_unsubscribe
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review





[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]