Spec URL: http://tomspur.fedorapeople.org/review/espresso.spec SRPM URL: http://tomspur.fedorapeople.org/review/espresso-3.0.1-1.fc15.src.rpm Description: ESPResSo can perform Molecular Dynamics simulations of bead-spring models in various ensembles ((N,V,E), (N,V,T), and (N,p,T)). ESPResSo contains a number of advanced algorithms, e.g. * DPD thermostat (for hydrodynamics) * P3M, MMM2D, MMM1D, ELC for electrostatic interactions * Lattice-Boltzmann for hydrodynamics koji scratch build (with enabled mpi tests - they also fail in mpi4py and are disabled in the buildsystem. I'll just run them locally with every version): http://koji.fedoraproject.org/koji/taskinfo?taskID=3372343 Current SHOULD on my list: * use MPI_SUFFIX * build a shared lib and not a static one Both will be fixed in a new version from upstream. $ rpmlint ~/rpmbuild/SRPMS/espresso-3.0.1-1.fc15.src.rpm ~/rpmbuild/RPMS/x86_64/espresso-* ~/rpmbuild/RPMS/noarch/espresso-common-3.0.1-1.fc15.noarch.rpm espresso.src:8: W: configure-without-libdir-spec espresso.x86_64: W: no-documentation espresso.x86_64: W: no-manual-page-for-binary Espresso espresso-devel.x86_64: W: no-documentation espresso-mpich2.x86_64: W: no-documentation espresso-mpich2-devel.x86_64: W: no-documentation espresso-openmpi.x86_64: W: no-documentation espresso-openmpi-devel.x86_64: W: no-documentation espresso-common.noarch: W: spelling-error %description -l en_US subpackages -> sub packages, sub-packages, prepackages 9 packages and 0 specfiles checked; 0 errors, 9 warnings. All false-positive/ignorable: * The packages require all the common package, which contains the documentation/license. * configure is called with libdir
%dir %{_libdir}/%{name}-openmpi/ %dir %{_libdir}/%{name}-openmpi/bin/ %dir %{_libdir}/%{name}-openmpi/lib/ is incorrect behavior. You need to place the libraries in %{_libdir}/openmpi/lib and the binaries in %{_libdir}/openmpi/bin. These are added to the relevant paths automatically when the relevant MPI module is loaded. And the same thing for mpich2.
Thanks. I misread the guidelines for that (seems I have looked in the compiler install section). %changelog - correctly install into _libdir/openmpi and not _libdir/name-openmpi Spec URL: http://tomspur.fedorapeople.org/review/espresso.spec SRPM URL: http://tomspur.fedorapeople.org/review/espresso-3.0.1-2.fc15.src.rpm
Please note as well that the MPI binaries should be suffixed _mpich2 and _openmpi (these are the corresponding $MPI_SUFFIX), not -mpich2 or -openmpi. I also don't think shipping libraries without any header files is necessary. Please add the relevant headers or don't ship the development libraries at all.
(In reply to comment #3) > Please note as well that the MPI binaries should be suffixed _mpich2 and > _openmpi (these are the corresponding $MPI_SUFFIX), not -mpich2 or -openmpi. Changed. > I also don't think shipping libraries without any header files is necessary. > Please add the relevant headers or don't ship the development libraries at all. Upstream prefers the later. %changelog - use correct MPI_SUFFIX - don't install library as upstream doesn't support it anymore Spec URL: http://tomspur.fedorapeople.org/review/espresso.spec SRPM URL: http://tomspur.fedorapeople.org/review/espresso-3.0.1-3.fc15.src.rpm
%changelog - update to new version - introduce configure_mpi Jussi, is the configure_mpi solution ok? It might be good to define such a macro systemwide, with adaptions to _libdir etc too. Spec URL: http://tomspur.fedorapeople.org/review/espresso.spec SRPM URL: http://tomspur.fedorapeople.org/review/espresso-3.0.2-1.fc15.src.rpm
Yes, looks good.
Taking for review. I notice that the output of configure shows a Tk version of none. If the Tk front-end is desirable, just adding --with-tk to each of the %dconfigure_mpi invocations and Requiring tk-devel does the trick. If not, just ignore my pathetic attempt to be helpful. :-) Attempting to install after building results in this error: # rpm -i espresso-* ../noarch/espresso-common-3.0.2-1.fc15.noarch.rpm error: Failed dependencies: /usr/bin/tclsh8.4 is needed by espresso-common-3.0.2-1.fc15.noarch That's because tools/trace_memory.tcl starts with "#!/usr/bin/tclsh8.4", which is the wrong version. Adding this to %prep fixes the problem: sed -i 's/tclsh8\.4/tclsh/' tools/trace_memory.tcl
It would be good to add %{?_isa} to arch-specific Requires. The two cases of this are the -openmpi subpackage, which should have this: Requires: openmpi%{?_isa} and the -mpich2 subpackage, which should have this: Requires: mpich2%{?_isa} +: OK -: must be fixed =: should be fixed (at your discretion) N: not applicable MUST: [+] rpmlint output: espresso.x86_64: W: no-documentation espresso.x86_64: W: no-manual-page-for-binary Espresso espresso-openmpi.x86_64: W: no-documentation espresso-mpich2.x86_64: W: no-documentation espresso-common.noarch: W: spelling-error %description -l en_US subpackages -> sub packages, sub-packages, prepackages espresso.spec:8: W: configure-without-libdir-spec 5 packages and 1 specfiles checked; 0 errors, 6 warnings. All of these warnings appear to be either harmless or bogus. I wonder about the no-documentation warnings, though. Why aren't the user guide (doc/ug/ug.pdf) and tutorial (doc/tutorials/tut2/tut2.pdf) included in one of these packages or in a -doc subpackage? [+] follows package naming guidelines [+] spec file base name matches package name [+] package meets the packaging guidelines [+] package uses a Fedora approved license [+] license field matches the actual license [+] license file is included in %doc [+] spec file is in American English [+] spec file is legible [+] sources match upstream: md5sum is f277a9adc6e16ca530f46dd74c3c5826 for both [+] package builds on at least one primary arch (tried x86_64) [N] appropriate use of ExcludeArch [-] all build requirements in BuildRequires: need autoconf and automake [N] spec file handles locales properly [N] ldconfig in %post and %postun [+] no bundled copies of system libraries [+] no relocatable packages [+] package owns all directories that it creates [+] no files listed twice in %files [+] proper permissions on files [+] consistent use of macros [+] code or permissible content [N] large documentation in -doc [+] no runtime dependencies in %doc [N] header files in -devel [N] static libraries in -static [N] .so in -devel [N] -devel requires main package [+] package contains no libtool archives [N] package contains a desktop file, uses desktop-file-install [+] package does not own files/dirs owned by other packages [+] all filenames in UTF-8 SHOULD: [N] query upstream for license text [N] description and summary contain available translations [-] package builds in mock: tried fedora-rawhide-i386: the build failed because autoreconf was not found. [+] package builds on all supported arches: tried i386 and x86_64 [+] package functions as described: minimal testing only [+] sane scriptlets [+] subpackages require the main package: actually require the -common subpackage and mandated by the MPI packaging guidelines [N] placement of pkgconfig files [N] file dependencies versus package dependencies [=] package contains man pages for binaries/scripts
Thanks for the review. (In reply to comment #7) > Taking for review. I notice that the output of configure shows a Tk version of > none. If the Tk front-end is desirable, just adding --with-tk to each of the > %dconfigure_mpi invocations and Requiring tk-devel does the trick. If not, > just ignore my pathetic attempt to be helpful. :-) ok, added. > sed -i 's/tclsh8\.4/tclsh/' tools/trace_memory.tcl added and pull requested at: https://github.com/ottxor/espresso/pull/2 The pdf documents aren't added, because I think upstream's documaintation is better suited: http://espressomd.org/wiki/Documentation Anyone who really wants to have them, can download it there ;) The no-documentation issues is an indication for having no COPYING in it, but that's in common and anything R that, so it should be fine. Changelog: - use _isa where possible - add missing BR autoconf/automake koji build successful: http://koji.fedoraproject.org/koji/taskinfo?taskID=3462381
Ah and the new urls: Spec URL: http://tomspur.fedorapeople.org/review/espresso.spec SRPM URL: http://tomspur.fedorapeople.org/review/espresso-3.0.2-2.fc15.src.rpm
Everything looks great now. APPROVED.
(In reply to comment #11) > Everything looks great now. APPROVED. Thanks. New Package SCM Request ======================= Package Name: espresso Short Description: Extensible Simulation Package for Research on Soft matter Owners: tomspur Branches: f15 f16 InitialCC:
Git done (by process-git-requests).
espresso-3.0.2-2.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/espresso-3.0.2-2.fc15
espresso-3.0.2-2.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/espresso-3.0.2-2.fc16
espresso-3.0.2-2.fc16 has been pushed to the Fedora 16 testing repository.
espresso-3.0.2-2.fc16 has been pushed to the Fedora 16 stable repository.
espresso-3.0.2-2.fc15 has been pushed to the Fedora 15 stable repository.