File s6.spec of Package s6
#
# spec file for package s6
#
# Copyright (c) 2018 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: s6
Version: 2.11.3.2
Release: 0
Summary: A small suite of programs for UNIX, designed to allow process supervision
License: ISC
Url: https://skarnet.org/
Source0: https://skarnet.org/software/s6/%{name}-%{version}.tar.gz
#Source1: https://git.sr.ht/~flexibeast/s6-man-pages
Source1: s6-man-pages-2.11.3.2.4.tar.gz
BuildRequires: gcc
BuildRequires: make >= 3.81
BuildRequires: skalibs-devel
BuildRequires: execline-devel
%description
s6 is a small suite of programs for UNIX, designed to allow process supervision
(a.k.a service supervision), in the line of daemontools and runit, as well as
various operations on processes and daemons. It is meant to be a toolbox for
low-level process and service administration, providing different sets of
independent tools that can be used within or without the framework, and that
can be assembled together to achieve powerful functionality with a very small
amount of code.
Examples of things you can do by assembling together several programs provided
by s6 - besides process supervision:
- syslogd functionality, using far fewer resources than the traditional syslogd.
- Reliable service readiness notification, which is the basis for service
dependency management.
- Controlled privileged gain as with sudo, without using any suid programs.
- The useful parts of socket activation without having to change application
code or link servers against any specific library, and without having to
switch to any specific init system.
Why "s6"?
Skarnet.org's Small and Secure Supervision Software Suite.
Also, s6 is a nice command name prefix to have: it identifies the origin of the
software, and it's short.
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
%description devel
Development bits (lib and headers) for %{name} suite of tools.
%prep
%autosetup -p1
%build
export CFLAGS='%{optflags} -ffat-lto-objects'
%configure \
--with-sysdeps=%{_libdir}/skalibs/sysdeps \
%{nil}
%make_build
# extract man-pages
tar xvf %{SOURCE1}
%install
%make_install
# install man-pages
pushd %{name}-man-pages
make DESTDIR="%{buildroot}" MANDIR="%{_mandir}" install
popd
gzip -9 %{buildroot}%{_mandir}/man?/*.[123456789]
%files
%license COPYING
%doc AUTHORS NEWS README
%{_bindir}/*
%{_libexecdir}/s6lockd-helper
%dir %attr(0555, root, root) %{_mandir}/man?
%{_mandir}/man?/*.gz
%files devel
%{_includedir}/%{name}
%{_libdir}/lib%{name}.a
%{_libdir}/lib%{name}auto.a
%changelog