# # spec file for package openais (Version 1.1.2) # # Copyright (c) 2010 SUSE LINUX Products 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: openais Summary: The OpenAIS Standards-Based Cluster Framework executive and APIs Version: 1.1.2 Release: 0. License: BSD 3-Clause Group: Productivity/Clustering/HA Url: http://www.openais.org/ Source0: http://www.osdl.org/downloads/openais-%{version}/openais-%{version}.tar.gz Patch1: openais-suse-init.patch # Runtime bits Requires(post): /sbin/chkconfig Requires(preun): /sbin/chkconfig Requires: corosync Requires: libopenais3 = %{version}-%{release} # Setup/build bits BuildRequires: libcorosync-devel %define buildtrunk 0 %{?_with_buildtrunk: %define buildtrunk 1} %if %{buildtrunk} BuildRequires: autoconf automake %endif BuildRoot: %{_tmppath}/%{name}-%{version}-build %prep %setup -q -n openais-%{version} %patch1 -p1 %build %if %{buildtrunk} ./autogen.sh %endif %{configure} make %{_smp_mflags} %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} mkdir -p %{buildroot}%{_initrddir} install -m 755 init/suse %{buildroot}%{_initrddir}/openais %if 0%{?suse_version} ln -sf ../../etc/init.d/openais %{buildroot}%{_sbindir}/rcopenais %endif mkdir -p %{buildroot}%{_sysconfdir}/ais cat< %{buildroot}%{_sysconfdir}/ais/openais.conf # This configuration file is not used any more # Please refer to %{_sysconfdir}/corosync/corosync.conf EOF ## tree fixup # drop static libs rm -f %{buildroot}%{_libdir}/*.a # drop docs and html docs for now rm -rf %{buildroot}%{_docdir}/* # the docdir is /usr/share/doc/ in the configuration rm -rf %{buildroot}%{_datadir}/doc/* %clean rm -rf %{buildroot} %description This package contains the openais executive, openais service handlers, default configuration files and init script. Authors: -------- Steven Dake Mark Haverkamp Muni Bajpai Daniel McNiel Miyotaka Sakai Daniel Stodden Kristen Smith Patrick Caulfield Fabien Thomas Hans Feldt Lars Holm Anders Eriksson Renaud Metrich Frederic Hermann Alejandro Lopez David Teigland Robert Peterson Abhijith Das %pre ais2coroconf() { # rules: # consensus > 1.2 * token conf=$1 filter=`mktemp` awk ' BEGIN{cons=0; tok=0} $1=="token:"{tok=$2} $1=="consensus:"{cons=$2} $1=="timestamp:"{timestamp=$2} END{ if( cons>0 && tok>0 && 1.2*cons <= tok ) { newcons = tok*1.2; printf "$1==\"consensus:\"{$2=%d}\n",newcons printf "WARN: consensus in corosync.conf adjusted from %d to %d\n",cons,newcons > "/dev/stderr" } if( timestamp == "on" ) { printf "$1==\"timestamp:\"{$2=\"off\"}\n" printf "WARN: timestamp in corosync.conf set to off\n" > "/dev/stderr" } } ' $conf >> $filter echo '{print}' >> $filter awk -f $filter $conf rm -f $filter } if [ -f %{_sysconfdir}/ais/openais.conf ]; then mkdir -p %{_sysconfdir}/corosync [ -f %{_sysconfdir}/ais/authkey -a ! -f %{_sysconfdir}/corosync/authkey ] && cp -p %{_sysconfdir}/ais/authkey %{_sysconfdir}/corosync [ -f %{_sysconfdir}/corosync/corosync.conf ] || ais2coroconf %{_sysconfdir}/ais/openais.conf > %{_sysconfdir}/corosync/corosync.conf fi %post %{fillup_and_insserv -n openais} # This code addresses bnc#549579 - a previous package version wrongly # disabled openais in %postun, which this needs to work around: if chkconfig -c openais; then touch /var/run/start_open_ais_on_boot fi %posttrans if test -f /var/run/start_open_ais_on_boot; then chkconfig --add openais rm -f /var/run/start_open_ais_on_boot fi %preun %stop_on_removal openais %postun %restart_on_update openais %{insserv_cleanup} %files %defattr(-,root,root,-) %doc LICENSE README.amf %dir %{_sysconfdir}/corosync %dir %{_sysconfdir}/ais %config(noreplace) %{_sysconfdir}/corosync/amf.conf.example %config(missingok) %{_sysconfdir}/ais/openais.conf %{_initrddir}/openais %if 0%{?suse_version} %{_sbindir}/rcopenais %endif %dir %{_libexecdir}/lcrso %{_libexecdir}/lcrso/openaisserviceenable.lcrso %{_libexecdir}/lcrso/service_amf.lcrso %{_libexecdir}/lcrso/service_ckpt.lcrso %{_libexecdir}/lcrso/service_clm.lcrso %{_libexecdir}/lcrso/service_evt.lcrso %{_libexecdir}/lcrso/service_lck.lcrso %{_libexecdir}/lcrso/service_msg.lcrso %{_libexecdir}/lcrso/service_tmr.lcrso %{_mandir}/man8/openais_overview.8* %{_mandir}/man5/openais.conf.5* %{_mandir}/man5/amf.conf.5* %{_sbindir}/aisexec %{_sbindir}/openais-instantiate %package -n libopenais3 License: BSD 3-Clause Summary: The openais Standards-Based Cluster Framework libraries Group: Productivity/Clustering/HA Obsoletes: libopenais2 Conflicts: libopenais2 %description -n libopenais3 This package contains openais libraries. Authors: -------- Steven Dake Mark Haverkamp Muni Bajpai Daniel McNiel Miyotaka Sakai Daniel Stodden Kristen Smith Patrick Caulfield Fabien Thomas Hans Feldt Lars Holm Anders Eriksson Renaud Metrich Frederic Hermann Alejandro Lopez David Teigland Robert Peterson Abhijith Das %files -n libopenais3 %defattr(-,root,root,-) %doc LICENSE %{_libdir}/libSaAmf.so.* %{_libdir}/libSaCkpt.so.* %{_libdir}/libSaClm.so.* %{_libdir}/libSaEvt.so.* %{_libdir}/libSaLck.so.* %{_libdir}/libSaMsg.so.* %{_libdir}/libSaTmr.so.* %post -n libopenais3 -p /sbin/ldconfig %postun -n libopenais3 -p /sbin/ldconfig %package -n libopenais-devel License: BSD 3-Clause Summary: The openais Standards-Based Cluster Framework libraries Group: Development/Libraries/C and C++ Requires: libopenais3 = %{version}-%{release} Requires: pkgconfig Provides: openais-devel = %{version} Obsoletes: openais-devel < 0.92 Conflicts: openais-devel < 0.92 %description -n libopenais-devel This package contains the libraries and include files used to develop using openais APIs. Authors: -------- Steven Dake Mark Haverkamp Muni Bajpai Daniel McNiel Miyotaka Sakai Daniel Stodden Kristen Smith Patrick Caulfield Fabien Thomas Hans Feldt Lars Holm Anders Eriksson Renaud Metrich Frederic Hermann Alejandro Lopez David Teigland Robert Peterson Abhijith Das %files -n libopenais-devel %defattr(-,root,root,-) %doc LICENSE %dir %{_includedir}/openais/ %{_includedir}/openais/saAis.h %{_includedir}/openais/saAmf.h %{_includedir}/openais/saCkpt.h %{_includedir}/openais/saClm.h %{_includedir}/openais/saEvt.h %{_includedir}/openais/saLck.h %{_includedir}/openais/saMsg.h %{_includedir}/openais/saTmr.h %{_libdir}/libSaAmf.so %{_libdir}/libSaCkpt.so %{_libdir}/libSaClm.so %{_libdir}/libSaEvt.so %{_libdir}/libSaLck.so %{_libdir}/libSaMsg.so %{_libdir}/libSaTmr.so %{_libdir}/pkgconfig/*.pc %changelog