Name: ibacm Version: 1.0.7 Release: 2%{?dist} Summary: InfiniBand Communication Manager Assistant Group: System Environment/Daemons License: GPLv2 or BSD Url: http://www.openfabrics.org/ Source: http://www.openfabrics.org/downloads/rdmacm/%{name}-%{version}.tar.gz Source1: ibacm.service %if 0%{?fedora} >= 18 BuildRequires: systemd %else BuildRequires: systemd-units %endif BuildRequires: libibverbs-devel, autoconf, libtool, libibumad-devel Requires(post): systemd Requires(preun): systemd Requires(postun): systemd # IB hardware does not exist on s390 ExcludeArch: s390 s390x %description The ib_acm daemon helps reduce the load of managing path record lookups on large InfiniBand fabrics by providing a user space implementation of what is functionally similar to an ARP cache. The use of ib_acm, when properly configured, can reduce the SA packet load of a large IB cluster from O(n^2) to O(n). The ib_acm daemon is started and normally runs in the background, user applications need not know about this daemon as long as their app uses librdmacm to handle connection bring up/tear down. The librdmacm library knows how to talk directly to the ib_acm daemon to retrieve data. %package devel Summary: Headers file needed when building apps to talk directly to ib_acm Requires: %{name} = %{version}-%{release} %description devel Most applications do not need to know how to talk directly to the ib_acm daemon, but it does have a socket that it listens on, and it has a specific protocol for incoming/outgoing data. So if you wish to build the ability to communicate directly with ib_acm into your own application, the protocol used to communicate with it, and the data structures involved, are in this header file. Please note that this is an unsupported method of using this daemon. The only supported means of using this is via librdmacm. As such, even though this header file is provided, no further documentation is available. One must read the source if they wish to make use of this header file. %prep %setup -q %build aclocal -I config && libtoolize --force --copy && autoheader && \ automake --foreign --add-missing --copy && autoconf %configure CFLAGS="$CXXFLAGS -fno-strict-aliasing" LDFLAGS=-lpthread make %{?_smp_mflags} V=1 %install make DESTDIR=%{buildroot} install install -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/ibacm.service # remove installed sysv-init script rm %{buildroot}/etc/init.d/ibacm %post %if 0%{?fedora} >= 18 %systemd_post ibacm.service %else if [ $1 -eq 1 ] ; then # Initial installation /bin/systemctl daemon-reload >/dev/null 2>&1 || : fi %endif %preun %if 0%{?fedora} >= 18 %systemd_preun ibacm.service %else if [ $1 -eq 0 ] ; then # Package removal, not upgrade /bin/systemctl --no-reload disable ibacm.service > /dev/null 2>&1 || : /bin/systemctl stop ibacm.service > /dev/null 2>&1 || : fi %endif %postun %if 0%{?fedora} >= 18 %systemd_postun_with_restart ibacm.service %else /bin/systemctl daemon-reload >/dev/null 2>&1 || : if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall /bin/systemctl try-restart ibacm.service >/dev/null 2>&1 || : fi %endif %files %doc AUTHORS COPYING README %{_bindir}/ib_acme %{_sbindir}/ibacm %{_mandir}/man1/* %{_mandir}/man7/* %{_unitdir}/ibacm.service %files devel %{_includedir}/infiniband %changelog * Thu Oct 25 2012 Jon Stanley - 1.0.7-2 - Remove execute permissions from systemd unit file - More old specfile cruft - Drop specific version of libibverbs requirement - Make build verbose * Thu Oct 25 2012 Jon Stanley - 1.0.7-1 - Update to latest upstream - Drop upstreamed patches - Migrate to systemd * Thu Apr 05 2012 Doug Ledford - 1.0.5-3 - Until the next upstream release, the pid file is in a wonky location. Make the init script know about that location so we can stop properly. - Resolves: bz808599 * Thu Apr 05 2012 Doug Ledford - 1.0.5-2 - Don't install the address file or config file, the config file isn't strictly needed and defaults will be used if it isn't installed, but with the address file we specifically need to build one based upon the machine where the program is installed, a default file is not only not helpful, but it messes up the daemon. - Related: bz700285 * Tue Feb 28 2012 Doug Ledford - 1.0.5-1 - Ininital version for rhel6 - Related: bz700285