Blame openhpi.spec.in

Packit db01ca
%define _topdir @abs_top_srcdir@
Packit db01ca
%define _tmpdir /tmp
Packit db01ca
%define _rpmtopdir %{_topdir}/rpm
Packit db01ca
%define _builddir %{_rpmtopdir}/BUILD
Packit db01ca
%define _rpmdir %{_rpmtopdir}/RPMS
Packit db01ca
%define _sourcedir %{_topdir}
Packit db01ca
%define _specdir %{_topdir}
Packit db01ca
%define _srcrpmdir %{_rpmtopdir}/SRPMS
Packit db01ca
%define _docdir %{_datadir}/doc/%{name}
Packit db01ca
Packit db01ca
%if %{undefined suse_version}
Packit db01ca
# For systems where libuuid is provided in e2fsprogs rpm
Packit db01ca
%define uuid_provider e2fsprogs
Packit db01ca
%define uuid libuuid
Packit db01ca
%endif
Packit db01ca
%if %{defined suse_version}
Packit db01ca
# For systems where libuuid is provided in libuuid rpm
Packit db01ca
%define uuid_provider libuuid
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%define with_openssl @WITH_OPENSSL@
Packit db01ca
Packit db01ca
%define with_ipmi @WITH_IPMI@
Packit db01ca
Packit db01ca
%if "x@IPMIDIRECT@" == "xipmidirect"
Packit db01ca
%define with_ipmidirect 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%define with_bladecenter @WITH_SNMP_BC@
Packit db01ca
Packit db01ca
%if "x@SIMULATOR@" == "xsimulator"
Packit db01ca
%define with_simulator 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if "x@DYNAMIC_SIMULATOR@" == "xdynamic_simulator"
Packit db01ca
%define with_dynamic_simulator 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%define with_rtas @WITH_RTAS@
Packit db01ca
%define with_sysfs @WITH_SYSFS@
Packit db01ca
Packit db01ca
%if "x@WATCHDOG@" == "xwatchdog"
Packit db01ca
%define with_watchdog 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%define with_ilo2_ribcl @WITH_ILO2_RIBCL@
Packit db01ca
%define with_oa_soap @WITH_OA_SOAP@
Packit db01ca
%define with_ov_rest @WITH_OV_REST@
Packit db01ca
Packit db01ca
%if "x@SLAVE@" == "xslave"
Packit db01ca
%define with_slave 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if "x@TEST_AGENT@" == "xtest_agent"
Packit db01ca
%define with_test_agent 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if "x@HPICRYPT@" == "xhpicrypt"
Packit db01ca
%define with_gcrypt 1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
Name: @HPI_PKG@
Packit db01ca
Version: @VERSION@
Packit db01ca
Release: 1
Packit db01ca
#
Packit db01ca
Summary: Open implementation of the SAF Hardware Platform Interface
Packit db01ca
#
Packit db01ca
License: BSD
Packit db01ca
Group: System/Monitoring
Packit db01ca
#
Packit db01ca
Vendor: OpenHPI Project
Packit db01ca
Packager: renier@openhpi.org
Packit db01ca
#
Packit db01ca
URL: http://www.openhpi.org
Packit db01ca
Source: http://prdownloads.sourceforge.net/openhpi/%{name}-%{version}.tar.gz
Packit db01ca
#
Packit db01ca
Buildroot: %{_rpmtopdir}/INSTALL
Packit db01ca
BuildRequires: pkgconfig automake autoconf libtool gcc-c++ glib2-devel libstdc++-devel
Packit db01ca
%if 0%{?with_openssl}
Packit db01ca
BuildRequires: openssl-devel
Packit db01ca
%endif
Packit db01ca
%if 0%{?with_gcrypt}
Packit db01ca
BuildRequires: libgcrypt-devel
Packit db01ca
%endif
Packit db01ca
#Requires: glib2 libstdc++
Packit db01ca
%if 0%{?with_openssl}
Packit db01ca
Requires: openssl
Packit db01ca
%endif
Packit db01ca
%if 0%{?with_gcrypt}
Packit db01ca
%if 0%{?suse_version}
Packit db01ca
Requires: libgcrypt20
Packit db01ca
%else
Packit db01ca
Requires: libgcrypt
Packit db01ca
%endif
Packit db01ca
%endif
Packit db01ca
%if %{undefined suse_version}
Packit db01ca
Requires: glib2 libstdc++
Packit db01ca
%endif
Packit db01ca
%if 0%{?suse_version} <= 1100
Packit db01ca
Requires:  glib2 libstdc++
Packit db01ca
%define uuid libuuid
Packit db01ca
%endif
Packit db01ca
%if 0%{?suse_version} >= 1100 && 0%{?suse_version} <= 1140
Packit db01ca
Requires:  glib2 libstdc++43
Packit db01ca
%define uuid libuuid1
Packit db01ca
%endif
Packit db01ca
%if 0%{?suse_version} >= 1200
Packit db01ca
Requires:  glib2 libstdc++6
Packit db01ca
%define uuid libuuid1
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%package devel
Packit db01ca
Summary: OpenHPI and SAF header files 
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
Packit db01ca
%package clients
Packit db01ca
Summary: OpenHPI command-line utilities
Packit db01ca
Group: System/Monitoring
Packit db01ca
%if 0%{?suse_version}
Packit db01ca
BuildRequires: popt-devel
Packit db01ca
%endif
Packit db01ca
Requires: openhpi = %{version} popt
Packit db01ca
Packit db01ca
%if 0%{?with_ipmi}
Packit db01ca
%package ipmi
Packit db01ca
Summary: OpenHPI plugin for OpenIPMI (deprecated)
Packit db01ca
Group: System/Monitoring
Packit db01ca
BuildRequires: OpenIPMI-devel
Packit db01ca
Requires: openhpi = %{version} OpenIPMI
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ipmidirect}
Packit db01ca
%package ipmidirect
Packit db01ca
Summary: OpenHPI plugin for IPMI-enabled systems
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_rtas}
Packit db01ca
%package rtas
Packit db01ca
Summary: OpenHPI plugin for IBM PPC systems
Packit db01ca
Group: System/Monitoring
Packit db01ca
BuildRequires: librtas-devel
Packit db01ca
Requires: openhpi = %{version} librtas
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_simulator}
Packit db01ca
%package simulator
Packit db01ca
Summary: OpenHPI plugin for testing the core library
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_dynamic_simulator}
Packit db01ca
%package dynamic_simulator
Packit db01ca
Summary: OpenHPI plugin for testing the core library
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_bladecenter}
Packit db01ca
%package bladecenter
Packit db01ca
Summary: OpenHPI plugin for the IBM Blade Center
Packit db01ca
Group: System/Monitoring
Packit db01ca
BuildRequires: net-snmp-devel %{uuid_provider}-devel
Packit db01ca
Requires: openhpi = %{version} net-snmp > 5.0 %{uuid}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_sysfs}
Packit db01ca
%package sysfs
Packit db01ca
Summary: OpenHPI plugin for sysfs
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version} libsysfs
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_watchdog}
Packit db01ca
%package watchdog
Packit db01ca
Group: System/Monitoring
Packit db01ca
Summary: OpenHPI plugin for Linux software watchdog support
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ilo2_ribcl}
Packit db01ca
%package ilo2_ribcl
Packit db01ca
Summary: OpenHPI plugin for HP ProLiant Rack Mount Servers
Packit db01ca
Group: System/Monitoring
Packit db01ca
BuildRequires: libxml2-devel
Packit db01ca
Requires: openhpi = %{version} libxml2 openssl
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_oa_soap}
Packit db01ca
%package oa_soap
Packit db01ca
Summary: OpenHPI plugin for HP BladeSystem c-Class
Packit db01ca
Group: System/Monitoring
Packit db01ca
BuildRequires: libxml2-devel
Packit db01ca
Requires: openhpi = %{version} libxml2 openssl
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ov_rest}
Packit db01ca
%package ov_rest
Packit db01ca
Summary: OpenHPI plugin for HP One View
Packit db01ca
Group: System/Monitoring
Packit db01ca
%if 0%{?suse_version}
Packit db01ca
BuildRequires: libcurl-devel libjson-c-devel
Packit db01ca
%else
Packit db01ca
BuildRequires: libcurl-devel json-c-devel librabbitmq-devel
Packit db01ca
%endif
Packit db01ca
%if 0%{?suse_version}
Packit db01ca
Requires: openhpi = %{version} libjson-c2 libcurl-devel 
Packit db01ca
%else
Packit db01ca
Requires: openhpi = %{version} json-c libcurl-devel librabbitmq-devel
Packit db01ca
%endif
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_slave}
Packit db01ca
%package slave
Packit db01ca
Summary: OpenHPI plugin for a slave OpenHPI daemon
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_test_agent}
Packit db01ca
%package test_agent
Packit db01ca
Summary: OpenHPI plugin for simulation with runtime configuration changes support
Packit db01ca
Group: System/Monitoring
Packit db01ca
Requires: openhpi = %{version}
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%description 
Packit db01ca
An open implementation of the Service Availability Forum (SAF)
Packit db01ca
Hardware Platform Interface (HPI). It includes support for multiple types of
Packit db01ca
hardware including: IPMI, IBM Blade Center (via SNMP), Linux Watchdog devices,
Packit db01ca
and Sysfs based systems.
Packit db01ca
Packit db01ca
%description devel
Packit db01ca
Contains header and other include files needed by developers
Packit db01ca
to build application that use the OpenHPI library.
Packit db01ca
Packit db01ca
%description clients
Packit db01ca
These command-line applications serve as HPI utilities that you can use
Packit db01ca
for looking at: sensor readings, vpd data, power machines on/off, etc.
Packit db01ca
They lso serve as examples to developers of HPI API usage.
Packit db01ca
Packit db01ca
%if 0%{?with_ipmi}
Packit db01ca
%description ipmi
Packit db01ca
This OpenHPI plugin uses OpenIPMI to connect to IPMI-enabled hardware
Packit db01ca
locally or over the network. Its focus is wide, created to support
Packit db01ca
any generic hardware topology that uses IPMI. This plugin is not maintained
Packit db01ca
any more; it is recommended to use ipmidirect plugin instead.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ipmidirect}
Packit db01ca
%description ipmidirect
Packit db01ca
This OpenHPI plugin connects directly to IPMI-enabled hardware
Packit db01ca
locally or over the network. Its focus is to support ATCA-type chassis.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_rtas}
Packit db01ca
%description rtas
Packit db01ca
Run-Time Abstraction Services (RTAS) plug-in
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_simulator}
Packit db01ca
%description simulator
Packit db01ca
OpenHPI plugin that reports fakes hardware used for
Packit db01ca
testing the core library.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_dynamic_simulator}
Packit db01ca
%description dynamic_simulator
Packit db01ca
OpenHPI plugin that reports fakes hardware defined in the file
Packit db01ca
simulation.data used for testing the core library.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_bladecenter}
Packit db01ca
%description bladecenter
Packit db01ca
OpenHPI plugin supporting the IBM BladeCenter. It also supports
Packit db01ca
RSA-enabled IBM systems, in addition to all types of BladeCenters.
Packit db01ca
This plugin uses snmp to connect to and gather information from all systems.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_sysfs}
Packit db01ca
%description sysfs
Packit db01ca
OpenHPI plugin that reads system information from sysfs.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_watchdog}
Packit db01ca
%description watchdog
Packit db01ca
OpenHPI plugin that uses the Linux software watchdog support
Packit db01ca
provided by the kernel.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ilo2_ribcl}
Packit db01ca
%description ilo2_ribcl
Packit db01ca
OpenHPI plugin supporting HP ProLiant Rack Mount Servers. This plug-in connects
Packit db01ca
to iLO2 on HP ProLiant Rack Mount Server using a SSL connection and exchanges
Packit db01ca
information via Remote Insight Board Command Language (RIBCL). 
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_oa_soap}
Packit db01ca
%description oa_soap
Packit db01ca
OpenHPI plug-in supporting HP BladeSystems c-Class. This plug-in connects
Packit db01ca
to the OA of a c-Class chassis using an SSL connection and manages the system
Packit db01ca
using an XML-encoded SOAP interface.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_ov_rest}
Packit db01ca
%description ov_rest
Packit db01ca
OpenHPI plug-in supporting HP One View. This plug-in connects
Packit db01ca
to OneView using curl and processing the output using json-c
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_slave}
Packit db01ca
%description slave
Packit db01ca
OpenHPI plug-in that allows to aggregate resources from different domains 
Packit db01ca
(slave domains) and to provide aggregated resources as part of the one domain 
Packit db01ca
(master domain).
Packit db01ca
%endif
Packit db01ca
Packit db01ca
%if 0%{?with_test_agent}
Packit db01ca
%description test_agent
Packit db01ca
OpenHPI plugin that reports fakes hardware and allows runtime configuration changes.
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%prep
Packit db01ca
###################################################
Packit db01ca
%setup
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%build
Packit db01ca
###################################################
Packit db01ca
%configure @ac_configure_args@ --prefix=/usr --with-varpath=/var/lib/%{name}
Packit db01ca
find . -type f -name "Makefile" | xargs -n1 sed -i -e 's/ -Wp,-D_FORTIFY_SOURCE=2//g;'
Packit db01ca
%{__make}
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%install
Packit db01ca
###################################################
Packit db01ca
make DESTDIR=%{buildroot} install
Packit db01ca
%{__install} -Dd -m 0755 %{buildroot}%{_sysconfdir}/%{name} %{buildroot}/var/lib/%{name}
Packit db01ca
%{__install} -m 0600 %{name}.conf.example %{buildroot}%{_sysconfdir}/%{name}/%{name}.conf
Packit db01ca
Packit db01ca
%post
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%files
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_docdir}/README*
Packit db01ca
%{_docdir}/COPYING
Packit db01ca
%{_docdir}/ChangeLog
Packit db01ca
%dir %{_sysconfdir}/%{name}/
Packit db01ca
%config(noreplace) %attr(0600,root,root) %{_sysconfdir}/%{name}/%{name}.conf
Packit db01ca
%config(noreplace) %attr(0600,root,root) %{_sysconfdir}/%{name}/simulation.data
Packit db01ca
%dir %{_libdir}/%{name}
Packit db01ca
%dir /var/lib/%{name}
Packit db01ca
%{_libdir}/libopenhpi*.so.*
Packit db01ca
%{_mandir}/man7/%{name}.7*
Packit db01ca
%{_mandir}/man8/%{name}d.8*
Packit db01ca
%{_sbindir}/openhpid
Packit db01ca
%{_sysconfdir}/init.d/openhpid
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%files devel
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_includedir}/%{name}
Packit db01ca
%{_libdir}/pkgconfig/openhpi.pc
Packit db01ca
%{_libdir}/pkgconfig/openhpiutils.pc
Packit db01ca
%{_libdir}/libopenhpi*.so
Packit db01ca
%{_libdir}/libopenhpi*.la
Packit db01ca
%{_libdir}/*.a
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%files clients
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_bindir}/hpi*
Packit db01ca
%{_bindir}/ohhandler
Packit db01ca
%{_bindir}/ohparam
Packit db01ca
%{_bindir}/ohdomainlist
Packit db01ca
%{_mandir}/man1/*.1*
Packit db01ca
%{_sysconfdir}/openhpi/openhpiclient.conf
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_ipmi}
Packit db01ca
%files ipmi
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libipmi.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_ipmidirect}
Packit db01ca
%files ipmidirect
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libipmidirect.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_rtas}
Packit db01ca
%files rtas
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/librtas2hpi.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_simulator}
Packit db01ca
%files simulator
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libsimulator.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_dynamic_simulator}
Packit db01ca
%files dynamic_simulator
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libdyn_simulator.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_bladecenter}
Packit db01ca
%files bladecenter
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libsnmp_bc.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_sysfs}
Packit db01ca
%files sysfs
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libsysfs2hpi.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_watchdog}
Packit db01ca
%files watchdog
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libwatchdog.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_ilo2_ribcl}
Packit db01ca
%files ilo2_ribcl
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libilo2_ribcl.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_oa_soap}
Packit db01ca
%files oa_soap
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/liboa_soap.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_ov_rest}
Packit db01ca
%files ov_rest
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libov_rest.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_slave}
Packit db01ca
%files slave
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libslave.*
Packit db01ca
%endif
Packit db01ca
Packit db01ca
###################################################
Packit db01ca
%if 0%{?with_test_agent}
Packit db01ca
%files test_agent
Packit db01ca
###################################################
Packit db01ca
%defattr(-,root,root)
Packit db01ca
%{_libdir}/%{name}/libtest_agent.*
Packit db01ca
%endif
Packit db01ca