Bug 394651
Summary: | Review Request: asio - cross-platform C++ library for network programming | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Marc Maurer <uwog> |
Component: | Package Review | Assignee: | Patrice Dumas <pertusus> |
Status: | CLOSED NEXTRELEASE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | daniel, fedora-package-review, notting, pertusus, peter |
Target Milestone: | --- | Flags: | pertusus:
fedora-review+
gwync: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2008-01-17 14:32:19 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Marc Maurer
2007-11-21 17:28:50 UTC
Builds fine on fedora-development-x86_64. Comments: The main binary package has nothing but the license in it: $ rpm -qpl asio-0.3.8-1.x86_64.rpm /usr/share/doc/asio-0.3.8 /usr/share/doc/asio-0.3.8/LICENSE_1_0.txt $ rpmlint asio-0.3.8-1.x86_64.rpm asio.x86_64: E: no-binary The -debuginfo package is completely empty: $ rpmlint asio-debuginfo-0.3.8-1.x86_64.rpm asio-debuginfo.x86_64: E: empty-debuginfo-package $ rpm -qpl asio-debuginfo-0.3.8-1.x86_64.rpm (contains no files) BuildRoot in your spec should include %{release}, per the guidelines: http://fedoraproject.org/wiki/Packaging/Guidelines#head-b4fdd45fa76cbf54c885ef0836361319ab962473 Source0 should include a full URL to the upstream source package. > The main binary package has nothing but the license in it: Well, the guidelines state that I _must_ include the license, as it is in the upstream tarball. There is nothing else to include in this rpm really. > The -debuginfo package is completely empty Disabled the debuginfo package, as it makes no sense. > BuildRoot in your spec should include %{release} Done. > Source0 should include a full URL to the upstream source package Done. Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-2.src.rpm Having an empty binary package makes no sense to me, especially when asio is _intended_ for developers' use, and not that of end-users. I think it would be more appropriate to include the files as the main package, with no -devel subpackage being present. Personally I prefer no main package and a devel package since it is a devel package and in any case should provide -devel. If you leave the main package empty by putting the license in the devel subpackage there won't be any main package created which is right in that case, in my opinion. Also maybe this package could be noarch? "BuildArch: noarch" seems appropriate indeed I think it is best to place it all in a single -devel package, as in the future asio might include shared libraries (similar to boost). * Moved everything to a single -devel rpm * Added "BuildArch: noarch" Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-1.src.rpm I recall vaguely that when there is a change in arch, like noarch becoming i386/... yum cannot update, if exactarch=1, which is the default case. So maybe changing arch is not a good idea. The tools should allow this, though. * Removed "BuildArch: noarch" Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-4.src.rpm It cannot be installed with the Requires: %{name} = %{version}-%{release} A BuildRequires and a Requires openssl-devel is missing, and a Requires boost-devel is also missing. A dot is missing at the first devel %description sentence end. the following are not useful right now, since there is no lib: %post -p /sbin/ldconfig %postun -p /sbin/ldconfig COPYING file should be in %doc The content of the doc directory should be shipped, either in devel or in a doc subpackage if you find it too big. See the guidelines for further recommendations. I think it would be much better to have timestamps kept, this should be achived with make install DESTDIR=$RPM_BUILD_ROOT INSTALL='install -p' I suggest using %{version} in Source0: http://downloads.sourceforge.net/asio/asio-%{version}.tar.bz2 but it is only a suggestion. I also suggest using %defattr(-,root,root,-) instead of %defattr(-,root,root) As a side note, the make call could be in %check and not in %build since it is currently only used for tests. New package including the comments #9 and #10 (thanks!): Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-5.src.rpm The timestamps are still not kept because INSTALL is not used, instead install-sh is used, certainly because it creates directory. The following should work: make install DESTDIR=$RPM_BUILD_ROOT nobase_includeHEADERS_INSTALL='install -D -p -m644' rpmlint warnings to be fixed: asio-devel.i386: W: spurious-executable-perm /usr/share/doc/asio-devel-0.3.8/up_disabled.png asio-devel.i386: W: spurious-executable-perm /usr/share/doc/asio-devel-0.3.8/prev_disabled.png asio-devel.i386: W: spurious-executable-perm /usr/share/doc/asio-devel-0.3.8/next_disabled.png And also many file-not-utf8 that are not a problem since files are encoded in latin1 and it is what is in the headers. I suggest putting the BuildRequires in the main package not the devel package. I also suggest using dist since it will become arch at some point. Suggested changes from comment 12 are in this spec: Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-6.fc7.src.rpm Source file timestamps are not kept. You can use wget -N, spectool -g or the corresponding curl option. -rw-rw-r-- 1 dumas dumas 509783 oct 25 13:47 asio-0.3.8.tar.bz2 -rw-rw-r-- 1 dumas dumas 509783 nov 21 16:46 ../SOURCES/asio-0.3.8.tar.bz2 Keep timestamps of the original tarball release: Spec URL: http://uwog.net/~uwog/asio.spec SRPM URL: http://uwog.net/~uwog/asio-0.3.8-7.fc7.src.rpm * rpmlint gives non utf8 warnings, but the files have a proper latin1 encoding advertised. * follow guidelines * free software, license included * match upstream 309d2c353392d1b7caf3bb48980c743d asio-0.3.8.tar.bz2 * %files section right APPROVED New Package CVS Request ======================= Package Name: asio Short Description: cross-platform C++ library for network programming Owners: uwog Branches: devel InitialCC: Cvsextras Commits: yes cvs done. Please close this bug when rebuild is done. Closing as this is already in devel branch Package Change Request ====================== Package Name: asio New Branches: epel5 and epel6 Owners: pocock InitialCC: uwog I maintain the reSIProcate package, it depends on asio. asio is not available in EPEL and it is needed in order for me to provide reSIProcate in EPEL. I've contacted uwog, the asio maintainer, more than 10 days ago and there has been no response: https://bugzilla.redhat.com/show_bug.cgi?id=951201 Therefore, can you please create the EPEL git branches for me to maintain Git done (by process-git-requests). Corrected branch names. Package Change Request ====================== Package Name: asio New Branches: epel7 Owners: pocock, uwog InitialCC: uwog Now that EPEL7 is available, please create the branch and give access to pocock uwog Git done (by process-git-requests). |