[Bug 1927033] Review Request: eth-fast-fabric - Intel Ethernet Fast
Fabric Tools
by bugzilla@redhat.com
https://bugzilla.redhat.com/show_bug.cgi?id=1927033
Robert-André Mauchin 🐧 <zebob.m(a)gmail.com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |zebob.m(a)gmail.com
--- Comment #2 from Robert-André Mauchin 🐧 <zebob.m(a)gmail.com> ---
- Any reason not to use the tarball from GitHub directly?
# tarball created by:
# git clone -b <tagname> https://github.com/intel/eth-fast-fabric.git
# cd eth-fast-fabric
# tar czf <workspace>/eth-tools.tgz --exclude-vcs --transform
"s,^,eth-tools-$(grep '^Version:' eth-tools.spec.in | cut -d' ' -f2)/," .
Source: eth-tools.tgz
Why not:
Version: 11.0.0.0~pre
[…]
Source: %url/archive/%{version_no_tilde}/%{name}-%{version_no_tilde}.tar.gz
- Libraries required should be autodetected:
Requires: rdma
Requires: expect%{?_isa}, tcl%{?_isa}, openssl%{?_isa}, expat%{?_isa},
libibumad%{?_isa}, libibverbs%{?_isa}, net-snmp%{?_isa}, net-snmp-utils%{?_isa}
- Please split your BuildRequires one per line:
BuildRequires: expat-devel, gcc-c++, openssl-devel, ncurses-devel, tcl-devel,
zlib-devel, rdma-core-devel, ibacm-devel, net-snmp-devel
- Why do you need to set Epoch?
- You mist respect the default Fedora CFLAGS and LDFLAGS during the build. It
doesn't seem that your build script respect them.
- What is $BUILD_ARGS?
- Should be in lib64:
LIBDIR=%{_lɨbdir}
The files in /lib looks weird though, it doesn't seem to be libraries? So maybe
it's okay. In that case use:
LIBDIR=%{_prefix}/lib
- You must use macros for directories:
/usr/share/ → %{_datadir}
/usr/src/ → %{_usrsrc}
/usr/lib → %{_prefix}/lib
- Simplify this in %files fastfabric
%{_datadir}/eth-tools/
%exclude %{_datadir}/eth-tools/samples/mgt_config.xml-sample
- Glob man pages extension as the compression might change in the future:
%{_mandir}/man1/ethcapture.1*
and so on
- Just glob the man pages, no need to to specify all files manually:
%{_mandir}/man8/eth*.8*
- Just include the whole directory too
%{_usrsrc}/eth/
- own %{_sysconfdir}/eth-tools in basic
%dir %{_sysconfdir}/eth-tools
- What are the files in /usr/lib/eth-tools ? They don't seem to be libraries.
- What's this:
%preun fastfabric
cd /usr/src/eth/mpi_apps >/dev/null 2>&1
make -k clean >/dev/null 2>&1 || : # suppress all errors and return codes from
the make clean.
Running make clean in preun on a system directory makes no sense/is suspicious.
- Add a BuildRequires for make
- Separate your changelog entries by a newline
- I assume this is a typo and that you meant openssl:
BuildRequires: penssl-devel
- Release should start at 1
- Changelog should contain the release after the version:
%changelog
* Fri Feb 05 2021 Jijun Wang <jijun.wang(a)intel.com> - 11.0.0.0~pre-1
- Cleaned up for upstream
* Mon Feb 26 2018 Jijun Wang <jijun.wang(a)intel.com> - 10.8.0.0-1
- Added epoch for RHEL address-resolution, basic and fastfabric
- Added component information in description for all rpms
* Thu Apr 13 2017 Scott Breyer <scott.j.breyer(a)intel.com> - 10.5.0.0-1
- Updates for spec file cleanup
* Fri Oct 10 2014 Erik E. Kahn <erik.kahn(a)intel.com> - 1.0.0-ifs-1
- Initial version
- Here's a cleaned up SPEC. You still ne to explain the preun thing, the files
in /usr/lib, and how to çake the build respect Fedora's default build flags
(CFLAGS, CXXFLAGS, LDFLAGS).
Name: eth-tools
Version: 11.0.0.0~pre
Release: 1%{?dist}
Summary: Intel Ethernet Fabric Suite basic tools and libraries for fabric
management
License: BSD
Url: https://github.com/intel/eth-fast-fabric
Source: %url/archive/%{version_no_tilde}/%{name}-%{version_no_tilde}.tar.gz
# The Intel(R) Ethernet Fabric Suite product line is only available on x86_64
# platforms at this time.
ExclusiveArch: x86_64
%description
This package contains the tools necessary to manage an Intel Ethernet fabric.
%package basic
Summary: Management level tools and scripts
Requires: bc
BuildRequires: expat-devel
BuildRequires: gcc-c++
BuildRequires: make
BuildRequires: openssl-devel
BuildRequires: ncurses-devel
BuildRequires: tcl-devel
BuildRequires: zlib-devel
BuildRequires: rdma-core-devel
BuildRequires: ibacm-devel
BuildRequires: net-snmp-devel
%description basic
Contains basic tools for fabric managment necessary on all compute nodes.
%package fastfabric
Summary: Management level tools and scripts
Requires: eth-tools-basic%{?_isa} >= %{version}-%{release}
Requires: cronie
%description fastfabric
Contains tools for managing fabric on a management node.
%prep
%autosetup -n eth-fast-fabric-%{version_no_tilde}
%build
%set_build_flags
cd OpenIb_Host
OPA_FEATURE_SET= ./ff_build.sh %{_builddir} $BUILD_ARGS
%install
BUILDDIR=%{_builddir} DESTDIR=%{buildroot} LIBDIR=%{_prefix}/lib
DSAP_LIBDIR=%{_libdir} ./OpenIb_Host/ff_install.sh
%preun fastfabric
cd /usr/src/eth/mpi_apps >/dev/null 2>&1
make -k clean >/dev/null 2>&1 || : # suppress all errors and return codes from
the make clean.
%files basic
%{_sbindir}/ethcapture
%{_prefix}/lib/eth-tools/setup_self_ssh
%{_prefix}/lib/eth-tools/usemem
%{_prefix}/lib/eth-tools/ethipcalc
%{_prefix}/lib/eth-tools/stream
%{_mandir}/man1/ethcapture.1*
%{_datadir}/eth-tools/samples/mgt_config.xml-sample
%dir %{_sysconfdir}/eth-tools/
%config(noreplace) %{_sysconfdir}/eth-tools/mgt_config.xml
%files fastfabric
%{_sysconfdir}/eth-tools/ethmon.si.conf
# Replace ethmon.si.conf, as it's a template config file.
%config(noreplace) %{_sysconfdir}/eth-tools/ethfastfabric.conf
%config(noreplace) %{_sysconfdir}/eth-tools/ethmon.conf
%config(noreplace) %{_sysconfdir}/eth-tools/allhosts
%config(noreplace) %{_sysconfdir}/eth-tools/chassis
%config(noreplace) %{_sysconfdir}/eth-tools/hosts
%config(noreplace) %{_sysconfdir}/eth-tools/switches
%{_sbindir}/*
%exclude %{_sbindir}/ethcapture
%{_prefix}/lib/eth-tools/*
%config(noreplace) %{_prefix}/lib/eth-tools/osid_wrapper
%exclude %{_prefix}/lib/eth-tools/setup_self_ssh
%exclude %{_prefix}/lib/eth-tools/usemem
%exclude %{_prefix}/lib/eth-tools/ethipcalc
%exclude %{_prefix}/lib/eth-tools/stream
%{_datadir}/eth-tools/
%exclude %{_datadir}/eth-tools/samples/mgt_config.xml-sample
%{_mandir}/man8/eth*.8*
%{_usrsrc}/eth/
%changelog
* Fri Feb 05 2021 Jijun Wang <jijun.wang(a)intel.com> - 11.0.0.0~pre-1
- Cleaned up for upstream
* Mon Feb 26 2018 Jijun Wang <jijun.wang(a)intel.com> - 10.8.0.0-1
- Added epoch for RHEL address-resolution, basic and fastfabric
- Added component information in description for all rpms
* Thu Apr 13 2017 Scott Breyer <scott.j.breyer(a)intel.com> - 10.5.0.0-1
- Updates for spec file cleanup
* Fri Oct 10 2014 Erik E. Kahn <erik.kahn(a)intel.com> - 1.0.0-ifs-1
- Initial version
--
You are receiving this mail because:
You are on the CC list for the bug.
You are always notified about changes to this product and component
3 years, 1 month