diff --git a/baselibs.conf b/baselibs.conf index b6d8f4a..55e4a9d 100644 --- a/baselibs.conf +++ b/baselibs.conf @@ -1,3 +1,10 @@ -libcorosync4 - requires -corosync- - requires "libcorosync4- = " +libcfg6 +libcmap4 +libcorosync_common4 + obsoletes "libcorosync4- < " + provides "libcorosync4- = " +libcpg4 +libquorum5 +libsam4 +libtotem_pg5 +libvotequorum8 diff --git a/corosync.changes b/corosync.changes index 8e233f4..0d4f829 100644 --- a/corosync.changes +++ b/corosync.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Sep 12 14:40:51 UTC 2017 - jengelh@inai.de + +- Restore conformance to shared library packaging guideline. +- Remove redundant cleaning in %install and %clean. + ------------------------------------------------------------------- Tue Aug 29 07:50:16 UTC 2017 - bliu@suse.com diff --git a/corosync.spec b/corosync.spec index c50e6ec..b156ded 100644 --- a/corosync.spec +++ b/corosync.spec @@ -80,7 +80,14 @@ Obsoletes: openais < 1.2 Conflicts: openais < 1.2 # Runtime bits -Requires: libcorosync4 = %{version}-%{release} +Requires: libcfg6 = %{version}-%{release} +Requires: libcmap4 = %{version}-%{release} +Requires: libcorosync_common4 = %{version}-%{release} +Requires: libcpg4 = %{version}-%{release} +Requires: libquorum5 = %{version}-%{release} +Requires: libsam4 = %{version}-%{release} +Requires: libtotem_pg5 = %{version}-%{release} +Requires: libvotequorum8 = %{version}-%{release} Requires(pre): /usr/sbin/useradd Requires(post): /sbin/chkconfig Requires(preun): /sbin/chkconfig @@ -206,9 +213,7 @@ export rdmacm_LIBS=-lrdmacm \ make %{_smp_mflags} %install -rm -rf %{buildroot} - -make install DESTDIR=%{buildroot} +%make_install %if %{with dbus} mkdir -p -m 0700 %{buildroot}/%{_sysconfdir}/dbus-1/system.d @@ -262,9 +267,6 @@ sed -i -e 's/^COROSYNC_QNETD_RUNAS=""$/COROSYNC_QNETD_RUNAS="coroqnetd"/' \ %endif %endif -%clean -rm -rf %{buildroot} - %description This package contains the Corosync Cluster Engine Executive, several default APIs and libraries, default configuration files, and an init script. @@ -379,40 +381,145 @@ This package contains corosync test agents. %endif -# library -# -%package -n libcorosync4 -Summary: The Corosync Cluster Engine Libraries +%package -n libcfg6 +Summary: Corosync configuration database library +Group: System/Libraries + +%description -n libcfg6 +This package contains the Corosync configuration database library. + +%package -n libcmap4 +Summary: Corosync configuration map library +Group: System/Libraries + +%description -n libcmap4 +The CMAP library is used to interact with the configuration database +used by Corosync. The library provides a mechanism to +create/chage/remove keys, iterate over them and track changes to +keys. + +%package -n libcorosync_common4 +Summary: The Corosync Cluster Engine library # openais is indeed gone and should be uninstalled. Yes, we do not # provide libopenais on purpose, the package has been deleted. Group: System/Libraries Obsoletes: libopenais3 < 1.2 Conflicts: libopenais3 < 1.2 +Obsoletes: libcorosync4 < %{version}-%{release} +Provides: libcorosync4 = %{version}-%{release} -%description -n libcorosync4 -This package contains corosync libraries. +%description -n libcorosync_common4 +This package contains the central Corosync library. -%files -n libcorosync4 -%defattr(-,root,root,-) -%doc LICENSE +%package -n libcpg4 +Summary: Corosync group message API +Group: System/Libraries + +%description -n libcpg4 +A group message API called CPG, part of Corosync. This library is +used to create distributed applications that operate properly during +cluster partitions, merges, and faults. + +%package -n libquorum5 +Summary: Corosync quorum library +Group: System/Libraries + +%description -n libquorum5 +The quorum library is the external interface to the quorum service. +This service is loaded into all nodes in a Corosync cluster and track +the quorum status of a node. + +%package -n libsam4 +Summary: Corosync Simple Availability Manager API +Group: System/Libraries + +%description -n libsam4 +The SAM library provide a tool to check the health of an application. +The main purpose of SAM is to restart a local process when it fails +to respond to a healthcheck request in a configured time interval. + +%package -n libtotem_pg5 +Summary: Corosync Totem protocol +Group: System/Libraries + +%description -n libtotem_pg5 +An implementation of the Totem Single Ring Ordering and Membership +protocol providing the Extended Virtual Synchrony model for messaging +and membership. + +%package -n libvotequorum8 +Summary: Corosync vote quorum library +Group: System/Libraries + +%description -n libvotequorum8 +The votequorum library is the external interface to the vote-based +quorum service. This service is optionally loaded into all nodes in a +Corosync cluster to avoid split-brain situations. It does this by +having a number of votes assigned to each system in the cluster and +ensuring that only when a majority of the votes are present, cluster +operations are allowed to proceed. + +%files -n libcfg6 +%defattr(-,root,root) %{_libdir}/libcfg.so.* -%{_libdir}/libcpg.so.* + +%files -n libcmap4 +%defattr(-,root,root) %{_libdir}/libcmap.so.* -%{_libdir}/libtotem_pg.so.* -%{_libdir}/libquorum.so.* -%{_libdir}/libvotequorum.so.* -%{_libdir}/libsam.so.* + +%files -n libcpg4 +%defattr(-,root,root) +%{_libdir}/libcpg.so.* + +%files -n libcorosync_common4 +%defattr(-,root,root) %{_libdir}/libcorosync_common.so.* -%post -n libcorosync4 -p /sbin/ldconfig +%files -n libquorum5 +%defattr(-,root,root) +%{_libdir}/libquorum.so.* -%postun -n libcorosync4 -p /sbin/ldconfig +%files -n libsam4 +%defattr(-,root,root) +%{_libdir}/libsam.so.* + +%files -n libtotem_pg5 +%defattr(-,root,root) +%{_libdir}/libtotem_pg.so.* + +%files -n libvotequorum8 +%defattr(-,root,root) +%{_libdir}/libvotequorum.so.* + +%post -n libcfg6 -p /sbin/ldconfig +%postun -n libcfg6 -p /sbin/ldconfig +%post -n libcmap4 -p /sbin/ldconfig +%postun -n libcmap4 -p /sbin/ldconfig +%post -n libcorosync_common4 -p /sbin/ldconfig +%postun -n libcorosync_common4 -p /sbin/ldconfig +%post -n libcpg4 -p /sbin/ldconfig +%postun -n libcpg4 -p /sbin/ldconfig +%post -n libquorum5 -p /sbin/ldconfig +%postun -n libquorum5 -p /sbin/ldconfig +%post -n libsam4 -p /sbin/ldconfig +%postun -n libsam4 -p /sbin/ldconfig +%post -n libtotem_pg5 -p /sbin/ldconfig +%postun -n libtotem_pg5 -p /sbin/ldconfig +%post -n libvotequorum8 -p /sbin/ldconfig +%postun -n libvotequorum8 -p /sbin/ldconfig %package -n libcorosync-devel Summary: The Corosync Cluster Engine Development Kit Group: Development/Libraries/C and C++ -Requires: libcorosync4 = %{version}-%{release} +Requires: libcfg6 = %{version}-%{release} +Requires: libcmap4 = %{version}-%{release} +Requires: libcorosync_common4 = %{version}-%{release} +Requires: libcpg4 = %{version}-%{release} Requires: libqb-devel +Requires: libquorum5 = %{version}-%{release} +Requires: libsam4 = %{version}-%{release} +Requires: libtotem_pg5 = %{version}-%{release} +Requires: libvotequorum8 = %{version}-%{release} Requires: pkgconfig Provides: corosync-devel = %{version} Obsoletes: corosync-devel < 0.92-7