File openhpi.spec of Package openhpi

#
# spec file for package openhpi
#
# Copyright (c) 2011 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:           openhpi
Version:        3.0.0
Release:        4
#
Group:          System/Monitoring
License:        BSD-3-Clause
#
BuildRequires:  OpenIPMI-devel docbook-toys docbook-utils e2fsprogs-devel fam-devel gcc-c++ gdbm-devel glib2-devel ncurses-devel net-snmp-devel tcpd-devel udev xorg-x11 xorg-x11-devel
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
#
Url:            http://sourceforge.net/projects/openhpi/
# http://downloads.sourceforge.net/openhpi/openhpi-2.10.1.tar.gz
Source:         openhpi-%{version}.tar.bz2
Source1:        openhpi-rpmlintrc
Source2:        AUTHORS
Patch:          unlink-pidfile-on-error.patch
#
Summary:        Implementation of SA Forum's Hardware Platform Interface (HPI)

%description
OpenHPI is an open source project created with the intent of providing
an implementation of the SA Forum's Hardware Platform Interface (HPI).
HPI provides an abstracted interface to managing computer hardware,
typically for chassis and rack based servers. HPI includes a resource
modeling; access to and control over sensor, control, watchdog, and
inventory data associated with resources; abstracted System Event Log
interfaces; hardware events and alerts; and a managed hotswap
interface.

OpenHPI provides a modular mechanism for adding new hardware and device
support easily. Many plug-ins exist in the OpenHPI source tree to
provide access to various types of hardware. This includes, but is not
limited to, IPMI based servers, Blade Center, and machines that export
data via sysfs. For up-to-date status on these components, check out
the status page.

%package devel
License:        BSD-3-Clause
Group:          Development/Libraries/C and C++
Requires:       openhpi = %{version} libtool glibc-devel e2fsprogs-devel net-snmp-devel openssl-devel popt-devel bzip2 zlib-devel openhpi-daemon libstdc++-devel ncurses-devel OpenIPMI-devel gdbm-devel glib2-devel
Summary:        Development Files for HPI

%description devel
Contains additional files needed for a developer to create applications
and/or middleware that use the Service Availability Forum's HPI
specification


%package clients
License:        BSD-3-Clause
Group:          System/Monitoring
Requires:       openhpi = %{version}
Summary:        HPI Command-line Applications

%description clients
This package contains HPI command-line utilities

Open HPI is an open source implementation of the SA Forum's Hardware
Platform Interface (HPI). HPI provides an abstracted interface to
managing computer hardware, typically for chassis and rack based
servers.

%package daemon
License:        BSD-3-Clause
Group:          System/Monitoring
Requires:       openhpi = %{version}
Summary:        Implementation of SA Forum's Hardware Platform Interface (HPI)
PreReq:         %insserv_prereq %fillup_prereq

%description daemon
OpenHPI is an open source project created with the intent of providing
an implementation of the SA Forum's Hardware Platform Interface (HPI).
HPI provides an abstracted interface to managing computer hardware,
typically for chassis and rack based servers. HPI includes a resource
modeling; access to and control over sensor, control, watchdog, and
inventory data associated with resources; abstracted System Event Log
interfaces; hardware events and alerts; and a managed hotswap
interface.

OpenHPI provides a modular mechanism for adding new hardware and device
support easily. Many plugins exist in the OpenHPI source tree to
provide access to various types of hardware. This includes, but is not
limited to, IPMI based servers, Blade Center, and machines which export
data via sysfs. For up-to-date status on these components, please check
out the status page.


%prep
%setup -q
%patch -p1

%build
cp %{S:2} .
#autoreconf --install --force
export CFLAGS="%{optflags} -fno-strict-aliasing"
export CXXFLAGS="%{optflags} -fno-strict-aliasing"
%configure \
    --disable-static \
    --enable-ipmi --disable-sysfs --enable-daemon \
    --enable-snmp_client --enable-simulator --enable-clients \
    --with-varpath=/var/lib/%{name}
%{__make}
%{__make} documentation
###################################################

%install
###################################################
%makeinstall
%{__install} -Dd -m 0755 \
    %{buildroot}%{_sysconfdir}/openhpi \
    %{buildroot}/var/lib/openhpi
%{__install} -m 0644 openhpi.conf.example %{buildroot}%{_sysconfdir}/openhpi/openhpi.conf
#%{__cp} -a README COPYING docs/hld/openhpi-manual %{buildroot}%{_docdir}/%{name}/
%{__rm} -rv %{buildroot}%{_datadir}/doc/%{name}-%{version}
%{__rm} -v %{buildroot}%{_libdir}/{,openhpi/}*.la

%clean
%{__rm} -rv %{buildroot}

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%preun daemon
%stop_on_removal openhpid

%post daemon
/sbin/ldconfig
%fillup_and_insserv -f openhpid
echo "Check OPENHPI_UNCONFIGURED in /etc/openhpi/openhpi.conf !"

%postun daemon
/sbin/ldconfig
%insserv_cleanup
%restart_on_update openhpid

%files
%defattr(-,root,root,0755)
%dir %attr(0750,root,root) %{_sysconfdir}/openhpi
%config(noreplace) %attr(0640,root,root) %{_sysconfdir}/openhpi/*
%doc AUTHORS README *.example
#%doc %{_docdir}/%{name}/
%dir /var/lib/openhpi
%dir %{_libdir}/openhpi
%{_libdir}/libopen*.so.*
%{_libdir}/openhpi/lib*.so*
%{_mandir}/man7/openhpi.7*

%files devel
%defattr(-,root,root)
%{_includedir}/openhpi
%{_libdir}/pkgconfig/openhpi.pc
%{_libdir}/pkgconfig/openhpiutils.pc
%{_libdir}/libopen*.so

%files clients
%defattr(-,root,root)
%{_bindir}/hpi*
%{_mandir}/man1/hpi*.1*
%{_bindir}/oh*
%{_mandir}/man1/oh*.1*

%files daemon
%defattr(-,root,root)
%doc README.daemon
/etc/init.d/openhpid
%{_sbindir}/openhpid
%{_mandir}/man8/openhpid.8*

%changelog
openSUSE Build Service is sponsored by