Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:m-grant-prg
swoc
swoc.spec
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File swoc.spec of Package swoc
# # spec file for package swoc # # Copyright (C) 2019-2024 Mark Grant <m.grant.prg@gmail.com> # # # openSUSE Leap has a peculiar release field, this define is used in the release # substitution provided by prep-spec-release.sh when building for Leap. (It will # convert 150000 to 150 for Leap 15.0 and 150100 to 151 for Leap 15.1). %if 0%{?is_opensuse} && 0%{?sle_version} %define leap_version %( echo $(( \ $(( %{?sle_version} / 1000 )) \ + $(( \ $(( %{?sle_version} \ - $(( \ $(( %{?sle_version} / 1000 )) \ * 1000 )) \ )) \ /100 )) \ ))) %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 # If a new library-version current value is needed to produce a new soname, # changing it here is all that is needed in this spec file. %define com_lib_soname 3 %define cli_lib_soname 2 %define srv_lib_soname 3 # Enter the Release numerics here. %define pkg_release 0.0 Name: swoc Version: 1.7.1 %if 0%{?suse_version} Release: lp%{?leap_version}.%{?pkg_release} %else Release: %{?pkg_release} %endif License: GPL-3.0 Summary: Server Wait On Clients system Url: https://github.com/m-grant-prg/swoc/wiki Group: System/Management Source0: https://github.com/m-grant-prg/swoc/release/%{name}-%{version}.tar.gz BuildRequires: autoconf, autoconf-archive, automake, libtool, make, systemd %if 0%{?fedora} %{?systemd_requires} %endif BuildRequires: dia, doxygen, graphviz, graphviz-gd, tar, txt2manwrap BuildRequires: libmgec7-devel, libmgec7, libmgesysutils2-devel, libmgesysutils2 BuildRequires: libssh-devel %{?suse_version:BuildRequires: libssh4} %{?fedora:BuildRequires: libssh} Requires: tar BuildRoot: %{_tmppath}/%{name}-%{version}-build %description The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. # Build the library package name to use. %define com_lib_pkg_name libswoccommon%{com_lib_soname} %define cli_lib_pkg_name libswocclient%{cli_lib_soname} %define srv_lib_pkg_name libswocserver%{srv_lib_soname} %package -n libswoccommon-devel Summary: Server Wait On Clients system Group: Development/Tools/Building Requires: %{com_lib_pkg_name} = %{version}-%{release} %description -n libswoccommon-devel Server Wait on Clients common library development files. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the development files for the common library such as static libraries, header files and man pages. %package -n swoccommon-conf Summary: Server Wait On Clients system Group: System/Management Requires: %{com_lib_pkg_name} = %{version}-%{release} %description -n swoccommon-conf Server Wait on Clients common library configuration files. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the configuration files for the common library such as swoc.conf and the configuration file setup utility swoc-setup.sh. %package -n %{com_lib_pkg_name} Summary: Server Wait On Clients system Group: System/Management Requires: swoccommon-conf %description -n %{com_lib_pkg_name} Server Wait on Clients common library. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the common library. %package -n libswocclient-devel Summary: Server Wait On Clients system Group: Development/Tools/Building Requires: %{cli_lib_pkg_name} = %{version}-%{release} %description -n libswocclient-devel Server Wait on Clients client library development files. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the development files for the client library such as static libraries, header files and man pages. %package -n %{cli_lib_pkg_name} Summary: Server Wait On Clients system Group: System/Management %description -n %{cli_lib_pkg_name} Server Wait on Clients client library. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the client library. %package -n libswocserver-devel Summary: Server Wait On Clients system Group: Development/Tools/Building Requires: %{srv_lib_pkg_name} = %{version}-%{release} %description -n libswocserver-devel Server Wait on Clients server library development files. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the development files for the server library such as static libraries, header files and man pages. %package -n %{srv_lib_pkg_name} Summary: Server Wait On Clients system Group: System/Management %description -n %{srv_lib_pkg_name} Server Wait on Clients server library. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the server library. %package doc Summary: Server Wait On Clients system Group: System/Management BuildArch: noarch %description doc Server Wait on Clients server library. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the library API documentation. %package -n %{name}-int-doc Summary: Server Wait On Clients system Group: System/Management BuildArch: noarch %description -n %{name}-int-doc Server Wait on Clients server library. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the library internal documentation. %package -n swocclient Summary: Server Wait On Clients system Group: System/Management Requires: %{cli_lib_pkg_name} = %{version}-%{release} %description -n swocclient Server Wait on Clients client application. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the client application. %package -n swocserver Summary: Server Wait On Clients system Group: System/Management Requires: %{srv_lib_pkg_name} = %{version}-%{release} %description -n swocserver Server Wait on Clients server application. The Server Wait On Clients system allows a client to register a lock on a server. This allows coordination and sequencing of jobs and activities between machines. This package contains the server application. %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/swocserver.service \ %{buildroot}%{_unitdir}/swocserver.service ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcswocserver install -D -m 644 $RPM_SOURCE_DIR/50-swocserver.preset \ %{buildroot}%{sysd_preset_dir}/50-swocserver.preset %post -n %{com_lib_pkg_name} /sbin/ldconfig %postun -n %{com_lib_pkg_name} /sbin/ldconfig %post -n %{cli_lib_pkg_name} /sbin/ldconfig %postun -n %{cli_lib_pkg_name} /sbin/ldconfig %post -n %{srv_lib_pkg_name} /sbin/ldconfig %postun -n %{srv_lib_pkg_name} /sbin/ldconfig %pre -n swocserver %if 0%{?suse_version} %service_add_pre swocserver.service %endif %post -n swocserver %if 0%{?suse_version} %service_add_post swocserver.service %endif %if 0%{?fedora} %systemd_post swocserver.service %endif %preun -n swocserver %if 0%{?suse_version} %stop_on_removal swocserver %service_del_preun swocserver.service %endif %if 0%{?fedora} %systemd_preun swocserver.service %endif %postun -n swocserver %if 0%{?suse_version} %service_del_postun swocserver.service %endif %if 0%{?fedora} %systemd_postun swocserver.service %endif %files -n libswoccommon-devel %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %{_libdir}/libswoccommon.a %if 0%{?fedora} >= 37 %else %{_libdir}/libswoccommon.la %endif %{_libdir}/libswoccommon.so %{_libdir}/pkgconfig/libswoccommon.pc %{_mandir}/man3/exch_msg.3* %{_mandir}/man3/parse_msg.3* %{_mandir}/man3/send_outgoing_msg.3* %{_mandir}/man3/close_ssh_tunnel.3* %{_mandir}/man3/open_ssh_tunnel.3* %{_mandir}/man3/close_sock.3* %{_mandir}/man3/est_connect.3* %{_mandir}/man3/init_conn.3* %{_mandir}/man3/listen_sock.3* %{_mandir}/man3/prep_recv_sock.3* %{_mandir}/man3/swcom_validate_config.3* %files -n swoccommon-conf %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %config %{_sysconfdir}/%{name}.conf %dir %{_libexecdir}/%{name} %{_libexecdir}/%{name}/swoc-setup.sh %{_mandir}/man5/swoc.conf.5* %files -n %{com_lib_pkg_name} %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %{_libdir}/libswoccommon.so.* %files -n libswocclient-devel %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %dir /usr/include/%{name} /usr/include/%{name}/libswocclient.h %{_libdir}/libswocclient.a %if 0%{?fedora} >= 37 %else %{_libdir}/libswocclient.la %endif %{_libdir}/libswocclient.so %{_libdir}/pkgconfig/libswocclient.pc %{_mandir}/man3/swc_block.3* %{_mandir}/man3/swc_client_wait.3* %{_mandir}/man3/swc_rel_lock.3* %{_mandir}/man3/swc_reset.3* %{_mandir}/man3/swc_set_lock.3* %{_mandir}/man3/swc_show_srv_block_status.3* %{_mandir}/man3/swc_show_status.3* %{_mandir}/man3/swc_unblock.3* %files -n %{cli_lib_pkg_name} %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %{_libdir}/libswocclient.so.* %files -n libswocserver-devel %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %dir /usr/include/%{name} /usr/include/%{name}/libswocserver.h %{_libdir}/libswocserver.a %if 0%{?fedora} >= 37 %else %{_libdir}/libswocserver.la %endif %{_libdir}/libswocserver.so %{_libdir}/pkgconfig/libswocserver.pc %{_mandir}/man3/sws_cli_block.3* %{_mandir}/man3/sws_cli_unblock.3* %{_mandir}/man3/sws_end_daemon.3* %{_mandir}/man3/sws_release.3* %{_mandir}/man3/sws_reload_config.3* %{_mandir}/man3/sws_server_wait.3* %{_mandir}/man3/sws_show_block_status.3* %{_mandir}/man3/sws_show_cli_blocklist.3* %{_mandir}/man3/sws_show_status.3* %{_mandir}/man3/sws_srv_block.3* %{_mandir}/man3/sws_srv_unblock.3* %files -n %{srv_lib_pkg_name} %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %{_libdir}/libswocserver.so.* %files doc %defattr(-,root,root,-) %dir %{_docdir}/%{name} %{_docdir}/%{name}/AUTHORS %{_docdir}/%{name}/COPYING %{_docdir}/%{name}/ChangeLog %{_docdir}/%{name}/NEWS %{_docdir}/%{name}/README %{_docdir}/%{name}/api %dir /usr/share/doc-base /usr/share/doc-base/%{name} %files -n %{name}-int-doc %defattr(-,root,root,-) %license COPYING %dir %{_docdir}/%{name} %{_docdir}/%{name}/int %doc AUTHORS ChangeLog NEWS README %dir /usr/share/doc-base /usr/share/doc-base/%{name}-int %files -n swocclient %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %{_sbindir}/swocclient %{_mandir}/man8/swocclient.8* %files -n swocserver %defattr(-,root,root,-) %license COPYING %doc AUTHORS ChangeLog NEWS README %config %{_sysconfdir}/swocserverd.conf %{_unitdir}/swocserver.service %{sysd_preset_dir}/50-swocserver.preset %dir %{_libexecdir}/%{name} %{_libexecdir}/%{name}/swocserverd-setup.sh %{_sbindir}/swocserver* %{_sbindir}/rcswocserver %{_mandir}/man5/swocserverd.conf.5* %{_mandir}/man8/swocserver*.8* %changelog
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor