[Bug 188369] Review Request: ctapi-cyberjack
bugzilla at redhat.com
bugzilla at redhat.com
Sun Apr 30 08:53:55 UTC 2006
Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.
Summary: Review Request: ctapi-cyberjack
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=188369
------- Additional Comments From j.w.r.degoede at hhs.nl 2006-04-30 04:53 EST -------
Well thats a nice start:
[hans at shalem ~]$ rpmbuild -ba /usr/src/redhat/SPECS/ctapi-cyberjack.spec
error: parse error in expression
error: /usr/src/redhat/SPECS/ctapi-cyberjack.spec:15: parseExpressionBoolean
returns -1
error: Package has no %description: ctapi-cyberjack
This is caused by the following lines in the spec:
%if %{dist} == "FC4"
%define readers_dir %{_libdir}/readers
%else
%define readers_dir %(pkg-config libpcsclite --variable=usbdropdir)
%endif
I was already planning on adding a "MUST Fix" item for those, but not this soon
in the review. This is not the Fedora Extras way of doing things to avoid %if
filled specfiles we have one specfile per release in our CVS. Reviews should
always happen against the devel release, but in most cases (this one included)
the latest stable is fine too.
So for this review please target FC-5 and FC-5 only then once your package is
approved and imported (into the devel branch where all imports happen) you can
request CVS branches for FC-5 and FC-4 and then change the specfile for FC-4 .
It is ok to add a comment to the specfile submitted for review about nescesarry
changes for older releases. So you could change the above lines to:
# define this to %{_libdir}/readers when building on FC-4
%define readers_dir %(pkg-config libpcsclite --variable=usbdropdir)
Since it looks like I won't be able todo a full review right now after all
because of lack of time and because there is alot to fix in a first glance, here
is a quick and probably incomplete list of "MUST Fix" items:
MUST Fix
========
* Don't use release conditional %if constructs, instead target FC-5 with the
spec submitted for review (see above).
* Don't use German in the specfile not even in comments
* Remove the unused "%define _realrelease 1"
* Replace "4%{dist}" with "4%{?dist}" watch the ?
* Have you tried replacing "make" with "make %{?_smp_mflags}" ?
Ifso please add a comment that make breaks with %{?_smp_mflags} if not
please add %{?_smp_mflags}.
* When linking libctapi-cyberjack.so it doesn't get passed an soname flag, the
ld -x --shared -lusb -o libctapi-cyberjack.so ctn_list.o cjctapi_beep.o ...
command should get passed "-soname libctapi-cyberjack.so.0"
* When installing libctapi-cyberjack.so you install it as
libctapi-cyberjack.so.%{version} this is not correct you should install it as
libctapi-cyberjack.so.0 (matching the -soname above).
When the ABI of the library changes (which it will probably never will) you
change both the -soname and the install command to libctapi-cyberjack.so.1,
when the ABI changes again to .2 etc.
* Don't use a .so.%{version} install for the ifd, this is a plugin which always
gets dlopen-ed and as such should be installed as a plain .so, thus you also
do not need to add -soname to the link command for the ifd only for the ctapi
lib.
* libcyberjack_ifd.so gets staticly linked against libctapi-cyberjack, please
make this dynamic (currently the link command includes:
"../ctapi/libctapi-cyberjack.a" replace this with "-L../ctapi
-llibctapi-cyberjack").
* drop the "Requires: %{name} = %{version}" for PC-SC subpackage,
currently it is staticly linked and the dyn link which should be there will
lead to an autodependency generated by rpm.
* Rename the "PC-SC" subpakcage to pcsc to match the way pcsc is written in
other packages names (pcsc-lite, pcsc-tools, pcsc-perl)
* Don't create the docdir and install the docs there just name the docs
as they are releative to the builddir afyter %doc, rpmbuild will copy
them for you and create the docdir itself.
And some personal preferences of mine, not obligatory in anyway:
* Don't put a "," between BuildRequires whitespace alone is enough.
* Don't use %{buildroot} because %{buildroot}%{_datadir} is hard to read,
instead use $RPM_BUILD_ROOT, $RPM_BUILD_ROOT%{_datadir} is IMHO much easier
to read.
Phew, long list. Good luck fixing all these, most are trivial to fix though and
don't get scared away by this you picked a hard package to start with and as
package more software your reviews will go more and more smoothly. Please post a
new version addressing all the above MUST Fix items, then I'll take a second
stab at doing a Full review and hopefully approving your first package. Feel
free to ask questions about the above if there is anything you don't understand
or disagree with.
--
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.
More information about the Fedora-package-review
mailing list