# # spec file for package dapl-debug # # Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: dapl-debug Summary: A Library for userspace access to RDMA devices using OS Agnostic DAT APIs License: BSD-3-Clause or GPL-2.0+ or CPL-1.0 Group: Productivity/Networking/System Version: 2.0.42 Release: 0 Source0: https://www.openfabrics.org/downloads/dapl/dapl-%{version}.tar.gz Source1: baselibs.conf Source2: dapl-rpmlintrc Patch1: dapl-2.0.30-dat-ia-open-hang.patch Patch4: dapl-fix_type_punning.patch Patch5: dapl-define_NULL.patch Patch6: dapl-man_page_fixes.patch Patch7: dapl-fsf_address.patch Patch8: dapl-add-s390x-platform-support.patch Patch9: dapl-autotools.patch Patch10: dapl-rename_dtest.patch Patch11: dapl-add-aarch64-platform-support.patch Url: http://www.openfabrics.org BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf BuildRequires: automake BuildRequires: libibverbs-devel BuildRequires: librdmacm-devel BuildRequires: libtool %if "%name" == "dapl-debug" Conflicts: dapl %endif # bug437293 %ifarch ppc64 Obsoletes: dapl-64bit %endif # Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig Requires(post): sed Requires(post): coreutils # libdapl*.so work like plugins, hence they do not get a separate subpackage. %if "%{name}" == "dapl-debug" %define lname dapl-debug-libs %define other_lname libdat2-2 %else %define lname libdat2-2 %define other_lname dapl-debug-libs %endif %description Along with the OpenFabrics kernel drivers, libdat and libdapl provides a userspace RDMA API that supports DAT 2.0 specification and IB transport extensions for atomic operations and rdma write with immediate data. %package -n %lname Summary: DAPL runtime libraries Group: System/Libraries Conflicts: %other_lname Obsoletes: dapl2 < %version Provides: dapl2 = %version # Need dat.conf Requires: %name %description -n %lname Along with the OpenIB kernel drivers, libdat2 and libdapl provide a userspace RDMA API that supports DAT 2.0 specification. %description -n %lname This package contains the runtime libraries. %if "%{name}" == "dapl-debug" The libraries have tracing enabled. %endif %package devel Summary: Development files for the libdat and libdapl libraries Group: Development/Libraries/Other Requires: %{name} = %{version} Requires: glibc-devel %if "%{name}" == "dapl" Conflicts: dapl-debug-devel %else Provides: dapl-devel %endif %description devel Library links and header files for the libdat and libdapl libraries. %if "%{name}" != "dapl-debug" %package doc Summary: Manual pages for libdapl Group: Documentation/Man Requires: %{name} = %{version} Provides: dapl:%{_mandir}/man5/dat.conf.5.gz Provides: dapl_man %description doc Along with the OpenFabrics kernel drivers, libdat and libdapl provides a userspace RDMA API that supports DAT 2.0 specification and IB transport extensions for atomic operations and rdma write with immediate data. This package provides the Documentation for the library. %endif %package utils Summary: Test suites for the uDAPL library Group: Productivity/Networking/System Requires: %{name} = %{version}-%{release} %if "%{name}" == "dapl" Conflicts: dapl-debug-utils %endif %description utils Useful test suites to validate the uDAPL library APIs. %prep %setup -q -n dapl-%{version} %patch1 %patch4 %patch5 %patch6 %patch7 %patch8 -p1 %patch9 %patch10 %patch11 -p1 %build mv man/dtest.1 man/dpltest.1 %if %suse_version == 1110 export ac_cv_suse11=yes %endif autoreconf -fi %if "%name" == "dapl" %configure --disable-static --with-pic %else %configure --disable-static --with-pic --enable-debug %endif make %{?_smp_mflags} %check export MALLOC_CHECK_=2 make check unset MALLOC_CHECK_ %install make DESTDIR=%{buildroot} install rm -f %{buildroot}%_libdir/*.la %if "%{name}" == "dapl-debug" rm -rf %{buildroot}%{_mandir}/man{1,5}/* %endif mkdir -p %{buildroot}%_sysconfdir touch %{buildroot}%_sysconfdir/dat.conf %post -n %lname -p /sbin/ldconfig %postun -n %lname -p /sbin/ldconfig %post /sbin/ldconfig if test -e %_sysconfdir/dat.conf; then sed -i -e '/ofa-v2-.* u2/d' %_sysconfdir/dat.conf else touch %_sysconfdir/dat.conf fi cat <>%_sysconfdir/dat.conf ofa-v2-mlx4_0-1 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-mlx4_0-2 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-ib0 u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "ib0 0" "" ofa-v2-ib1 u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "ib1 0" "" ofa-v2-mthca0-1 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mthca0 1" "" ofa-v2-mthca0-2 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mthca0 2" "" ofa-v2-ipath0-1 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "ipath0 1" "" ofa-v2-ipath0-2 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "ipath0 2" "" ofa-v2-ehca0-2 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "ehca0 1" "" ofa-v2-iwarp u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "eth2 0" "" ofa-v2-mlx4_0-1u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-mlx4_0-2u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-mthca0-1u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mthca0 1" "" ofa-v2-mthca0-2u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mthca0 2" "" ofa-v2-cma-roe-eth2 u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "eth2 0" "" ofa-v2-cma-roe-eth3 u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "eth3 0" "" ofa-v2-scm-roe-mlx4_0-1 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-scm-roe-mlx4_0-2 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-mcm-1 u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-mcm-2 u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-scif0 u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "scif0 1" "" ofa-v2-scif0-u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "scif0 1" "" ofa-v2-mic0 u2.0 nonthreadsafe default libdaplofa.so.2 dapl.2.0 "mic0:ib 1" "" ofa-v2-mlx4_0-1s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-mlx4_0-2s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-mlx4_1-1s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_1 1" "" ofa-v2-mlx4_1-2s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx4_1 2" "" ofa-v2-mlx4_1-1u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx4_1 1" "" ofa-v2-mlx4_1-2u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx4_1 2" "" ofa-v2-mlx4_0-1m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_0 1" "" ofa-v2-mlx4_0-2m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_0 2" "" ofa-v2-mlx4_1-1m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_1 1" "" ofa-v2-mlx4_1-2m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx4_1 2" "" ofa-v2-mlx5_0-1s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx5_0 1" "" ofa-v2-mlx5_0-2s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx5_0 2" "" ofa-v2-mlx5_1-1s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx5_1 1" "" ofa-v2-mlx5_1-2s u2.0 nonthreadsafe default libdaploscm.so.2 dapl.2.0 "mlx5_1 2" "" ofa-v2-mlx5_0-1u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx5_0 1" "" ofa-v2-mlx5_0-2u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx5_0 2" "" ofa-v2-mlx5_1-1u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx5_1 1" "" ofa-v2-mlx5_1-2u u2.0 nonthreadsafe default libdaploucm.so.2 dapl.2.0 "mlx5_1 2" "" ofa-v2-mlx5_0-1m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx5_0 1" "" ofa-v2-mlx5_0-2m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx5_0 2" "" ofa-v2-mlx5_1-1m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx5_1 1" "" ofa-v2-mlx5_1-2m u2.0 nonthreadsafe default libdaplomcm.so.2 dapl.2.0 "mlx5_1 2" "" EOF #On update save configuration before uninstall of old package runs if [ $1 -gt 0 ]; then cp -p %_sysconfdir/dat.conf %_sysconfdir/dat.conf.rpmtmp fi %posttrans if [ -e "%_sysconfdir/dat.conf.rpmtmp" ]; then mv %_sysconfdir/dat.conf.rpmtmp %_sysconfdir/dat.conf fi %postun /sbin/ldconfig #remove if this isn't an update if [ $1 -eq 0 ]; then if test -e %_sysconfdir/dat.conf; then sed -i -e '/OpenIB-.* u1/d' %_sysconfdir/dat.conf fi fi %files %defattr(-, root, root) %doc AUTHORS README COPYING ChangeLog LICENSE.txt LICENSE2.txt LICENSE3.txt %_libdir/libdapl*.so.* %config %ghost %_sysconfdir/dat.conf %files -n %lname %defattr(-,root,root) %_libdir/libdat2.so.* %files devel %defattr(-, root, root) %_includedir/dat2/ %_libdir/*.so %if "%{name}" != "dapl-debug" %files doc %defattr(-, root, root) %_mandir/man1/* %_mandir/man5/* %endif %files utils %defattr(-,root,root,-) %{_bindir}/* %changelog