File server-dependency.spec of Package server-dependency

#
# spec file for package server-dependency
#
# Copyright (C) 2019, 2021-2026 Mark Grant <m.grant.prg@gmail.com>
#
#

# openSUSE Leap has a peculiar release field and inconsistent versioning macros.
# Prior to 16.0 sle_version must be used to provide the version, it has the
# format 150600. For 16.0 and subsequent releases, suse_version must be used,
# it has the format 1600. N.B. This is all true of osc builds, OBS seems to work
# probably because it overrides the spec file Release field.
%if 0%{?is_opensuse}
	%if 0%{?suse_version} >= 1600
		%define major %(version=%{?suse_version}; echo ${version::2})
		%define minor %(version=%{?suse_version}; echo ${version:(-1)})
	%else
		%define major %(version=%{?sle_version}; echo ${version::2})
		%define minor %(version=%{?sle_version}; echo ${version:(-3):1})
	%endif
%endif

# Systemd presets are in /usr/lib/systemd/system-preset but lib and libdir are
# unreliable on this score, so define our own.
%define sysd_preset_dir /usr/lib/systemd/system-preset


# Enter the Release numerics here.
%define pkg_release 0.0

Name:		server-dependency
Version:	1.4.0

%if 0%{?is_opensuse}
Release:	lp%{?major}%{?minor}.%{?pkg_release}
%else
Release:	%{?pkg_release}
%endif

License:	GPL-3.0
Summary:	Boot time configuration depending on server availability
Url:		https://github.com/m-grant-prg/%{name}/wiki
Group:		System/Management
Source0:	https://github.com/m-grant-prg/%{name}/release/%{name}-%{version}.tar.gz
BuildRequires:	autoconf, automake, make, systemd
BuildRequires:	bash, tar
BuildRequires:	txt2manwrap
%if 0%{?fedora}
	%{?systemd_requires}
%endif
Requires:	bash, tar
Requires:	coreutils, gawk, iputils, util-linux
%{?suse_version:Requires:	util-linux-systemd}
BuildRoot:	%{_tmppath}/%{name}-%{version}-build
BuildArch:	noarch

%description
A script which is run by systemd at boot to perform some system configuration
dependent on server availability.

%prep
%setup -q -n %{name}-%{version}

%build
autoreconf -if
%configure docdir=%{_docdir}/%{name}
make %{?jobs:-j%jobs}

%install
%make_install
install -D -m 644 $RPM_SOURCE_DIR/%{name}.service \
	%{buildroot}%{_unitdir}/%{name}.service
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
install -D -m 644 $RPM_SOURCE_DIR/50-%{name}.preset \
	%{buildroot}%{sysd_preset_dir}/50-%{name}.preset

%pre
%if 0%{?suse_version}
	%service_add_pre %{name}.service
%endif

%post
%if 0%{?suse_version}
	%service_add_post %{name}.service
%endif
%if 0%{?fedora}
	%systemd_post %{name}.service
%endif

%preun
%if 0%{?suse_version}
	%stop_on_removal %{name}
	%service_del_preun %{name}.service
%endif
%if 0%{?fedora}
	%systemd_preun %{name}.service
%endif

%postun
%if 0%{?suse_version}
	%service_del_postun %{name}.service
%endif
%if 0%{?fedora}
	%systemd_postun %{name}.service
%endif

%files
%defattr(-,root,root,-)
%license COPYING
%doc %{_docdir}/%{name}
%config %{_sysconfdir}/dosab
%{_unitdir}/%{name}.service
%{sysd_preset_dir}/50-%{name}.preset
%{_datadir}/bash-completion/completions/dosab
%{_mandir}/man5/server.list.5.gz
%{_mandir}/man8/dosab.8.gz
%{_sbindir}/dosab
%{_sbindir}/rc%{name}

%changelog

openSUSE Build Service is sponsored by