Bug 612533 - (qrencode) Review Request: qrencode - Generate QR 2D barcodes
Review Request: qrencode - Generate QR 2D barcodes
Status: CLOSED ERRATA
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
12
All Linux
medium Severity medium
: ---
: ---
Assigned To: Parag AN(पराग)
Fedora Extras Quality Assurance
:
: 509856 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2010-07-08 09:18 EDT by Tareq Al Jurf
Modified: 2013-09-03 08:14 EDT (History)
6 users (show)

See Also:
Fixed In Version: qrencode-3.1.1-4.fc13
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2010-07-15 17:02:15 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
panemade: fedora‑review+
limburgher: fedora‑cvs+


Attachments (Terms of Use)

  None (edit)
Description Tareq Al Jurf 2010-07-08 09:18:24 EDT
Spec URL: http://taljurf.fedorapeople.org/Packages/i686/qrencode/qrencode.spec
SRPM URL: http://taljurf.fedorapeople.org/Packages/i686/qrencode/qrencode-3.1.1-1.fc12.src.rpm
Description: Qrencode is a utility software using libqrencode to encode string data in
a QR Code and save as a PNG image.
Comment 1 Parag AN(पराग) 2010-07-08 09:50:01 EDT
will take this for review.
Comment 2 Mamoru TASAKA 2010-07-08 12:36:15 EDT
*** Bug 509856 has been marked as a duplicate of this bug. ***
Comment 3 Parag AN(पराग) 2010-07-09 01:44:06 EDT
Tareq,

1)any particular reason to create -libs subpackage?

2) You need to fix rpath issue as reported by rpmlint.
qrencode.x86_64: E: binary-or-shlib-defines-rpath /usr/bin/qrencode ['/usr/lib64']

see http://fedoraproject.org/wiki/Packaging/Guidelines#Beware_of_Rpath
and add following to %prep section
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool

3) Good if you will use
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"

This will preserve the timestamps of files being copied from upstream tarball in rpm.

4) License looks to me LGPLv2+. All the source files *.c and *.h includes header for LGPLv2+ license.
Comment 4 Parag AN(पराग) 2010-07-12 04:34:48 EDT
(In reply to comment #3)
> Tareq,
> 
> 1)any particular reason to create -libs subpackage?
> 
> 2) You need to fix rpath issue as reported by rpmlint.
> qrencode.x86_64: E: binary-or-shlib-defines-rpath /usr/bin/qrencode
> ['/usr/lib64']
> 
> see http://fedoraproject.org/wiki/Packaging/Guidelines#Beware_of_Rpath
> and add following to %prep section

Ah! this should be read as %build not %prep
Comment 7 Parag AN(पराग) 2010-07-13 00:43:43 EDT
1)rpmlint when run on above package gives

a)qrencode.x86_64: E: binary-or-shlib-defines-rpath /usr/bin/qrencode ['/usr/lib64']
The binary or shared library defines `RPATH'. Usually this is a bad thing
because it hardcodes the path to search libraries and so makes it difficult to
move libraries around.  Most likely you will find a Makefile with a line like:
gcc test.o -o test -Wl,--rpath.  Also, sometimes configure scripts provide a
--disable-rpath flag to avoid this.

=> sed commands should be run after %configure and then make command. But this way tests are failing. So, I think we can use last approach given at http://fedoraproject.org/wiki/Packaging/Guidelines#Removing_Rpath and instead of  adding sed commands in %build, you can add following at the end of %install commands.

chrpath --delete $RPM_BUILD_ROOT%{_bindir}/qrencode


b)qrencode.x86_64: E: library-without-ldconfig-postin /usr/lib64/libqrencode.so.3.1.1
This package contains a library and provides no %post scriptlet containing a
call to ldconfig.
qrencode.x86_64: E: library-without-ldconfig-postun /usr/lib64/libqrencode.so.3.1.1
This package contains a library and provides no %postun scriptlet containing a
call to ldconfig.

==> When package contains libraries you need to use http://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Shared_libraries
Use following

%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig


2) If you have plan to build this only for devel branch then you can remove BuildRoot tag, %clean section and cleaning of buildroot in %install

See http://fedoraproject.org/wiki/Packaging/Guidelines#BuildRoot_tag
http://fedoraproject.org/wiki/Packaging/Guidelines#.25clean
Comment 10 Parag AN(पराग) 2010-07-14 01:03:28 EDT
Review:
+ package builds in mock (rawhide i686).
koji Build =>http://koji.fedoraproject.org/koji/taskinfo?taskID=2316004
+ rpmlint is silent for SRPM and for RPM.
qrencode.src: W: spelling-error Summary(en_US) barcodes -> bar codes, bar-codes, barcaroles
qrencode.x86_64: W: spelling-error Summary(en_US) barcodes -> bar codes, bar-codes, barcaroles
qrencode-devel.x86_64: W: no-documentation
==> can be ignored.
+ source files match upstream url (sha1sum)
c3eb6c44553daa612a9bcf413d3cab7c46241373  qrencode-3.1.1.tar.gz
c3eb6c44553daa612a9bcf413d3cab7c46241373  qrencode-3.1.1.tar.gz.srpm
+ package meets naming and packaging guidelines.
+ specfile is properly named, is cleanly written
+ Spec file is written in American English.
+ Spec file is legible.
+ dist tag is present.
+ license is open source-compatible.
+ License text is included in package.
+ %doc is present.
+ BuildRequires are proper.
+ %clean is present.
+ package installed properly.
+ Macro use appears rather consistent.
+ Package contains code, not content.
+ no static libraries.
+ libqrencode.pc file present.
+ -devel subpackage exists.
+ no .la files.
+ no translations are available
+ Does owns the directories it creates.
+ ldconfig scriptlets present.
+ no duplicates in %files.
+ file permissions are appropriate.
+ make check, tests are successfully run.
+ Package qrencode-3.1.1-4.fc14.x86_64  =>
Provides: libqrencode.so.3()(64bit)
Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) libc.so.6(GLIBC_2.3.4)(64bit) libc.so.6(GLIBC_2.4)(64bit) libpng12.so.0()(64bit) libpng12.so.0(PNG12_0)(64bit) libqrencode.so.3()(64bit) 
+ Package qrencode-devel-3.1.1-4.fc14.x86_64 =>
Provides: pkgconfig(libqrencode) = 3.1.1
Requires: /usr/bin/pkg-config libqrencode.so.3()(64bit)
+ Not a GUI application

APPROVED.
Comment 11 Tareq Al Jurf 2010-07-14 05:09:58 EDT
New Package CVS Request
=======================
Package Name: qrencode
Short Description: Generate QR 2D barcodes
Owners: taljurf
Branches: F-12 F-13
InitialCC: taljurf
Comment 12 Kevin Fenzi 2010-07-14 12:50:13 EDT
CVS done (by process-cvs-requests.py).
Comment 13 Fedora Update System 2010-07-15 11:15:19 EDT
qrencode-3.1.1-4.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/qrencode-3.1.1-4.fc13
Comment 14 Fedora Update System 2010-07-15 11:16:51 EDT
qrencode-3.1.1-4.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/qrencode-3.1.1-4.fc12
Comment 15 Fedora Update System 2010-07-15 17:02:10 EDT
qrencode-3.1.1-4.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 16 Fedora Update System 2010-07-15 17:02:46 EDT
qrencode-3.1.1-4.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 17 Peter Gordon 2013-09-03 00:28:53 EDT
Package Change Request
======================
Package Name: qrencode
New Branches: EPEL-6
Owners: pwouters
InitialCC: pgordon fantom

Paul requested an EPEL-6 branch of qrencode via private email to me, intending it for a libreswan based VPN gateway. (Sounds nifty!)  -- Thanks.
Comment 18 Peter Gordon 2013-09-03 00:32:52 EDT
(Oops, didn't meant to change the assignee. Reverting...)
Comment 19 Jon Ciesla 2013-09-03 08:14:47 EDT
Git done (by process-git-requests).

Corrected branch name.

Note You need to log in before you can comment on or make changes to this bug.