init
This commit is contained in:
parent
c8248b95da
commit
145dd27617
BIN
opensm-3.3.20.tar.gz
Normal file
BIN
opensm-3.3.20.tar.gz
Normal file
Binary file not shown.
44
opensm.launch
Normal file
44
opensm.launch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Launch the necessary OpenSM daemons for systemd
|
||||||
|
#
|
||||||
|
# sysconfig: /etc/sysconfig/opensm
|
||||||
|
# config: /etc/rdma/opensm.conf
|
||||||
|
#
|
||||||
|
|
||||||
|
shopt -s nullglob
|
||||||
|
|
||||||
|
prog=/usr/sbin/opensm
|
||||||
|
[ -f /etc/sysconfig/opensm ] && . /etc/sysconfig/opensm
|
||||||
|
|
||||||
|
[ -n "$PRIORITY" ] && prio="-p $PRIORITY"
|
||||||
|
|
||||||
|
if [ -z "$GUIDS" ]; then
|
||||||
|
CONFIGS=""
|
||||||
|
CONFIG_CNT=0
|
||||||
|
for conf in /etc/rdma/opensm.conf.[0-9]*; do
|
||||||
|
CONFIGS="$CONFIGS $conf"
|
||||||
|
let CONFIG_CNT++
|
||||||
|
done
|
||||||
|
else
|
||||||
|
GUID_CNT=0
|
||||||
|
for guid in $GUIDS; do
|
||||||
|
let GUID_CNT++
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
# Start opensm
|
||||||
|
if [ -n "$GUIDS" ]; then
|
||||||
|
SUBNET_COUNT=0
|
||||||
|
for guid in $GUIDS; do
|
||||||
|
SUBNET_PREFIX=`printf "0xfe800000000000%02d" $SUBNET_COUNT`
|
||||||
|
(while true; do $prog $prio -g $guid --subnet_prefix $SUBNET_PREFIX; sleep 30; done) &
|
||||||
|
let SUBNET_COUNT++
|
||||||
|
done
|
||||||
|
elif [ -n "$CONFIGS" ]; then
|
||||||
|
for config in $CONFIGS; do
|
||||||
|
(while true; do $prog $prio -F $config; sleep 30; done) &
|
||||||
|
done
|
||||||
|
else
|
||||||
|
(while true; do $prog $prio; sleep 30; done) &
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
7
opensm.logrotate
Normal file
7
opensm.logrotate
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
/var/log/opensm.log {
|
||||||
|
missingok
|
||||||
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
weekly
|
||||||
|
compress
|
||||||
|
}
|
||||||
1
opensm.rwtab
Normal file
1
opensm.rwtab
Normal file
@ -0,0 +1 @@
|
|||||||
|
empty /var/cache/opensm
|
||||||
13
opensm.service
Normal file
13
opensm.service
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Starts the OpenSM InfiniBand fabric Subnet Manager
|
||||||
|
Documentation=man:opensm
|
||||||
|
DefaultDependencies=false
|
||||||
|
Before=network.target remote-fs-pre.target
|
||||||
|
After=rdma.service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
ExecStart=/usr/libexec/opensm-launch
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=network.target
|
||||||
114
opensm.spec
Normal file
114
opensm.spec
Normal file
@ -0,0 +1,114 @@
|
|||||||
|
Name: opensm
|
||||||
|
Version: 3.3.20
|
||||||
|
Release: 11
|
||||||
|
Summary: InfiniBand Subnet Manager and Administrator
|
||||||
|
License: GPLv2 or BSD
|
||||||
|
URL: https://www.openfabrics.org/
|
||||||
|
|
||||||
|
Source0: https://www.openfabrics.org/downloads/management/%{name}-%{version}.tar.gz
|
||||||
|
Source1: opensm.logrotate
|
||||||
|
Source2: opensm.service
|
||||||
|
Source3: opensm.launch
|
||||||
|
Source4: opensm.rwtab
|
||||||
|
BuildRequires: byacc flex libibumad-devel
|
||||||
|
|
||||||
|
Requires: logrotate rdma
|
||||||
|
Requires(post): systemd
|
||||||
|
Requires(preun): systemd
|
||||||
|
Requires(postun): systemd
|
||||||
|
ExcludeArch: %{arm}
|
||||||
|
|
||||||
|
Provides: opensm-libs = %{version}-%{release}
|
||||||
|
Provides: opensm-libs%{?_isa} = %{version}-%{release}
|
||||||
|
Obsoletes: opensm-libs < %{version}-%{release}
|
||||||
|
|
||||||
|
%description
|
||||||
|
OpenSM provides an implementation for an InfiniBand Subnet Manager and
|
||||||
|
Administrator. Such a software entity is required to run for in order
|
||||||
|
to initialize the InfiniBand hardware (at least one per each
|
||||||
|
InfiniBand subnet).
|
||||||
|
|
||||||
|
The full list of OpenSM features is described in the user manual
|
||||||
|
provided in the doc sub directory.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development files for opensm
|
||||||
|
Requires: %{name} = %{version}-%{release}
|
||||||
|
Provides: opensm-static = %{version}-%{release}
|
||||||
|
Provides: opensm-static%{?_isa} = %{version}-%{release}
|
||||||
|
Obsoletes: opensm-static < %{version}-%{release}
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
This package contains libraries for developing applications that use
|
||||||
|
opensm and static version of opensm libraries
|
||||||
|
|
||||||
|
%package_help
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{name}-%{version} -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
%configure --with-opensm-conf-sub-dir=rdma \
|
||||||
|
CFLAGS="$CFLAGS -fno-strict-aliasing"
|
||||||
|
|
||||||
|
make %{?_smp_mflags}
|
||||||
|
|
||||||
|
cd opensm
|
||||||
|
./opensm -c ../opensm-%{version}.conf
|
||||||
|
|
||||||
|
%install
|
||||||
|
%make_install
|
||||||
|
|
||||||
|
%delete_la
|
||||||
|
|
||||||
|
rm -fr %{buildroot}%{_sysconfdir}/init.d
|
||||||
|
install -D -m644 opensm-%{version}.conf %{buildroot}%{_sysconfdir}/rdma/opensm.conf
|
||||||
|
install -D -m644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/opensm
|
||||||
|
install -D -m644 %{SOURCE2} %{buildroot}%{_unitdir}/opensm.service
|
||||||
|
install -D -m755 %{SOURCE3} %{buildroot}%{_libexecdir}/opensm-launch
|
||||||
|
install -D -m644 %{SOURCE4} %{buildroot}%{_sysconfdir}/rwtab.d/opensm
|
||||||
|
mkdir -p ${RPM_BUILD_ROOT}/var/cache/opensm
|
||||||
|
|
||||||
|
%preun
|
||||||
|
%systemd_preun opensm.service
|
||||||
|
|
||||||
|
%post
|
||||||
|
%systemd_post opensm.service
|
||||||
|
|
||||||
|
/sbin/ldconfig
|
||||||
|
|
||||||
|
%postun
|
||||||
|
rm -rf /var/cache/opensm
|
||||||
|
|
||||||
|
%systemd_postun_with_restart opensm.service
|
||||||
|
|
||||||
|
/sbin/ldconfig
|
||||||
|
|
||||||
|
%files
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc COPYING AUTHORS
|
||||||
|
%dir /var/cache/opensm
|
||||||
|
%config(noreplace) %{_sysconfdir}/logrotate.d/opensm
|
||||||
|
%config(noreplace) %{_sysconfdir}/rdma/opensm.conf
|
||||||
|
%{_sysconfdir}/rwtab.d/opensm
|
||||||
|
%{_unitdir}/*
|
||||||
|
%{_libdir}/*.so.*
|
||||||
|
%{_libexecdir}/opensm-launch
|
||||||
|
%{_sbindir}/opensm
|
||||||
|
%{_sbindir}/osmtest
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_libdir}/lib*.so
|
||||||
|
%{_includedir}/infiniband
|
||||||
|
%{_libdir}/lib*.a
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%doc ChangeLog INSTALL README NEWS
|
||||||
|
%{_mandir}/man5/*5*
|
||||||
|
%{_mandir}/man8/*8*
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Mon Nov 18 2019 openEuler Buildteam <buildteam@openeuler.org> - 3.3.20-10
|
||||||
|
- Package init
|
||||||
Loading…
x
Reference in New Issue
Block a user