From dc709feedec5b50bd9f19b299f12c2fb15342f5e Mon Sep 17 00:00:00 2001 From: Vitezslav Crhonek Date: Wed, 3 Nov 2010 15:15:38 +0100 Subject: [PATCH] Update to upstream version 2.9.2, Cleanup the spec file, use upstream Makefile --- .gitignore | 1 + pegasus-2.7.2-baseelif.patch | 15 - pegasus-2.9.0-cmpi-provider-lib.patch | 12 +- pegasus-2.9.0-no_privilege_separation.patch | 12 - pegasus-2.9.0-redhat-config.patch | 32 +- pegasus-2.9.1-getpagesize.patch | 66 +++ pegasus-2.9.1-makefile-initscript.patch | 27 + sources | 2 +- tog-pegasus.spec | 583 +++++++++----------- 9 files changed, 372 insertions(+), 378 deletions(-) delete mode 100644 pegasus-2.7.2-baseelif.patch delete mode 100644 pegasus-2.9.0-no_privilege_separation.patch create mode 100644 pegasus-2.9.1-getpagesize.patch create mode 100644 pegasus-2.9.1-makefile-initscript.patch diff --git a/.gitignore b/.gitignore index a8c16e6..77e001d 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ pegasus-2.7.0.tar.gz pegasus-2.7.1.tar.gz pegasus-2.7.2.tar.gz pegasus-2.9.0.tar.gz +/pegasus-2.9.2.tar.gz diff --git a/pegasus-2.7.2-baseelif.patch b/pegasus-2.7.2-baseelif.patch deleted file mode 100644 index 4281e80..0000000 --- a/pegasus-2.7.2-baseelif.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -ru pegasus.orig/src/Pegasus/Provider/CMPI/CmpiImpl.cpp pegasus/src/Pegasus/Provider/CMPI/CmpiImpl.cpp ---- pegasus.orig/src/Pegasus/Provider/CMPI/CmpiImpl.cpp 2009-02-28 13:30:38.000000000 +0000 -+++ pegasus/src/Pegasus/Provider/CMPI/CmpiImpl.cpp 2009-02-28 13:32:02.000000000 +0000 -@@ -3245,9 +3245,9 @@ - //-- - //----------------------------------------------------------- - --#ifdef CMPI_VER_200 -+#if defined(CMPI_VER_200) - static CMPIBroker __providerBaseBroker = {0,0,0,0,0}; --#elif CMPI_VER_100 -+#elif defined(CMPI_VER_100) - static CMPIBroker __providerBaseBroker = {0,0,0,0}; - #else - static CMPIBroker __providerBaseBroker = {0,0,0}; diff --git a/pegasus-2.9.0-cmpi-provider-lib.patch b/pegasus-2.9.0-cmpi-provider-lib.patch index 9777c31..6feb308 100644 --- a/pegasus-2.9.0-cmpi-provider-lib.patch +++ b/pegasus-2.9.0-cmpi-provider-lib.patch @@ -1,12 +1,12 @@ diff -up pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h_old pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h ---- pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h_old 2008-12-02 10:01:24.000000000 +0100 -+++ pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h 2009-03-18 15:35:41.000000000 +0100 -@@ -61,7 +61,7 @@ - {"crlStore", PEGASUS_SSL_SERVER_CRL}, +--- pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h_old 2010-11-02 12:06:56.267640012 +0100 ++++ pegasus/src/Pegasus/Config/FixedPropertyTableLinux.h 2010-11-02 12:30:32.090223380 +0100 +@@ -59,7 +59,7 @@ # endif {"repositoryDir", PEGASUS_REPOSITORY_DIR}, -- {"providerDir", PEGASUS_PROVIDER_LIB_DIR ":/usr/" PEGASUS_ARCH_LIB "/cmpi"}, -+ {"providerDir", PEGASUS_PROVIDER_LIB_DIR ":" PEGASUS_DEST_LIB_DIR "/cmpi"}, + {"providerDir", PEGASUS_EXTRA_PROVIDER_LIB_DIR PEGASUS_PROVIDER_LIB_DIR +- ":/usr/" PEGASUS_ARCH_LIB "/cmpi"}, ++ ":" PEGASUS_DEST_LIB_DIR "/cmpi"}, {"providerManagerDir", PEGASUS_PROVIDER_MANAGER_LIB_DIR}, # else /* PEGASUS_OVERRIDE_DEFAULT_RELEASE_DIRS */ {"traceFilePath", "/var/opt/tog-pegasus/cache/trace/cimserver.trc"}, diff --git a/pegasus-2.9.0-no_privilege_separation.patch b/pegasus-2.9.0-no_privilege_separation.patch deleted file mode 100644 index 1c7c66c..0000000 --- a/pegasus-2.9.0-no_privilege_separation.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up pegasus/env_var_Linux.status_old pegasus/env_var_Linux.status ---- pegasus/env_var_Linux.status_old 2009-06-08 16:35:15.000000000 +0200 -+++ pegasus/env_var_Linux.status 2009-06-08 16:35:36.000000000 +0200 -@@ -34,7 +34,7 @@ PEGASUS_USE_RELEASE_DIRS=true - PEGASUS_USE_SYSLOGS=true - PEGASUS_CIM_SCHEMA=CIM217 - PEGASUS_USE_NET_SNMP=true --PEGASUS_ENABLE_PRIVILEGE_SEPARATION=true -+PEGASUS_ENABLE_PRIVILEGE_SEPARATION=false - - PEGASUS_PROD_DIR = /usr - PEGASUS_SBIN_DIR = $(PEGASUS_PROD_DIR)/sbin diff --git a/pegasus-2.9.0-redhat-config.patch b/pegasus-2.9.0-redhat-config.patch index cfb81d0..5b87fca 100644 --- a/pegasus-2.9.0-redhat-config.patch +++ b/pegasus-2.9.0-redhat-config.patch @@ -1,6 +1,6 @@ -diff -up pegasus/env_var_Linux.status_old pegasus/env_var_Linux.status ---- pegasus/env_var_Linux.status_old 2009-01-23 00:39:36.000000000 +0100 -+++ pegasus/env_var_Linux.status 2009-03-12 16:08:47.000000000 +0100 +diff -up pegasus/env_var_Linux.status.redhat-config pegasus/env_var_Linux.status +--- pegasus/env_var_Linux.status.redhat-config 2010-09-17 08:41:32.000000000 +0200 ++++ pegasus/env_var_Linux.status 2010-11-02 12:33:32.196567328 +0100 @@ -19,7 +19,8 @@ ifndef PEGASUS_STAGING_DIR PEGASUS_STAGING_DIR = $(PEGASUS_HOME)/stagingDir endif @@ -11,7 +11,7 @@ diff -up pegasus/env_var_Linux.status_old pegasus/env_var_Linux.status PEGASUS_DISABLE_OBJECT_NORMALIZATION=true PEGASUS_DISABLE_PERFINST=yes PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=true -@@ -28,7 +29,6 @@ PEGASUS_HAS_SSL=yes +@@ -28,13 +29,12 @@ PEGASUS_HAS_SSL=yes PEGASUS_USE_SSL_RANDOMFILE=false PEGASUS_NOASSERTS=yes PEGASUS_PAM_AUTHENTICATION=true @@ -19,26 +19,14 @@ diff -up pegasus/env_var_Linux.status_old pegasus/env_var_Linux.status PEGASUS_USE_RELEASE_CONFIG_OPTIONS=true PEGASUS_USE_RELEASE_DIRS=true PEGASUS_USE_SYSLOGS=true -@@ -72,23 +72,22 @@ PEGASUS_VARDATA_CACHE_DIR = $(PEGASUS_VA - PEGASUS_LOCAL_AUTH_DIR = $(PEGASUS_VARDATA_CACHE_DIR)/localauth - PEGASUS_TRACE_DIR = $(PEGASUS_VARDATA_CACHE_DIR)/trace - PEGASUS_TRACE_FILE_PATH = $(PEGASUS_VARDATA_CACHE_DIR)/trace/cimserver.trc -+PEGASUS_CONFIG_DIR = /etc/Pegasus - PEGASUS_CORE_DIR = $(PEGASUS_TRACE_DIR) - PEGASUS_PLANNED_CONFIG_FILE = cimserver_planned.conf - PEGASUS_PLANNED_CONFIG_FILE_PATH = \ -- $(PEGASUS_VARDATA_DIR)/$(PEGASUS_PLANNED_CONFIG_FILE) -+ $(PEGASUS_CONFIG_DIR)/$(PEGASUS_PLANNED_CONFIG_FILE) - PEGASUS_CURRENT_CONFIG_FILE = cimserver_current.conf - PEGASUS_CURRENT_CONFIG_FILE_PATH = \ -- $(PEGASUS_VARDATA_DIR)/$(PEGASUS_CURRENT_CONFIG_FILE) -+ $(PEGASUS_CONFIG_DIR)/$(PEGASUS_CURRENT_CONFIG_FILE) + PEGASUS_CIM_SCHEMA=CIM222 + PEGASUS_USE_NET_SNMP=true +-PEGASUS_ENABLE_PRIVILEGE_SEPARATION=true ++PEGASUS_ENABLE_PRIVILEGE_SEPARATION=false - PEGASUS_LOG_DIR = $(PEGASUS_VARDATA_DIR)/log - PEGASUS_INSTALL_LOG = $(PEGASUS_LOG_DIR)/install.log + PEGASUS_ENABLE_INTEROP_PROVIDER=false --PEGASUS_CONFIG_DIR = /etc/Pegasus -- +@@ -97,7 +97,7 @@ PEGASUS_CONFIG_DIR = /etc/Pegasus PEGASUS_VARRUN_DIR = /var/run/tog-pegasus PEGASUS_CIMSERVER_START_FILE = $(PEGASUS_VARRUN_DIR)/cimserver.pid PEGASUS_CIMSERVER_START_LOCK_FILE = $(PEGASUS_VARRUN_DIR)/cimserver_start.lock diff --git a/pegasus-2.9.1-getpagesize.patch b/pegasus-2.9.1-getpagesize.patch new file mode 100644 index 0000000..00c8279 --- /dev/null +++ b/pegasus-2.9.1-getpagesize.patch @@ -0,0 +1,66 @@ +diff -up pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp_old pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp +--- pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp_old 2010-01-14 15:06:36.757941652 +0100 ++++ pegasus/src/Providers/ManagedSystem/Process/Process_Linux.cpp 2010-01-14 15:08:12.113962655 +0100 +@@ -539,7 +539,7 @@ NOTES : + */ + Boolean Process::getRealText(Uint64& i64) const + { +- i64 = pInfo.pst_tsize * getpagesize() / 1024; ++ i64 = pInfo.pst_tsize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -555,7 +555,7 @@ NOTES : + */ + Boolean Process::getRealData(Uint64& i64) const + { +- i64 = pInfo.pst_dsize * getpagesize() / 1024; ++ i64 = pInfo.pst_dsize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -603,7 +603,7 @@ NOTES : + */ + Boolean Process::getVirtualData(Uint64& i64) const + { +- i64 = pInfo.pst_vdsize * getpagesize() / 1024; ++ i64 = pInfo.pst_vdsize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -619,7 +619,7 @@ NOTES : + */ + Boolean Process::getVirtualStack(Uint64& i64) const + { +- i64 = pInfo.pst_vssize * getpagesize() / 1024; ++ i64 = pInfo.pst_vssize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -635,7 +635,7 @@ NOTES : + */ + Boolean Process::getVirtualMemoryMappedFileSize(Uint64& i64) const + { +- i64 = pInfo.pst_vmmsize * getpagesize() / 1024; ++ i64 = pInfo.pst_vmmsize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -651,7 +651,7 @@ NOTES : + */ + Boolean Process::getVirtualSharedMemory(Uint64& i64) const + { +- i64 = pInfo.pst_vshmsize * getpagesize() / 1024; ++ i64 = pInfo.pst_vshmsize * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + +@@ -721,7 +721,7 @@ Boolean Process::getRealSpace(Uint64& i6 + i64 = (pInfo.pst_dsize + // real data + pInfo.pst_tsize) // real text may need to figure out how to get + // realStackSize +- * getpagesize() / 1024; ++ * sysconf(_SC_PAGESIZE) / 1024; + return true; + } + diff --git a/pegasus-2.9.1-makefile-initscript.patch b/pegasus-2.9.1-makefile-initscript.patch new file mode 100644 index 0000000..6322a94 --- /dev/null +++ b/pegasus-2.9.1-makefile-initscript.patch @@ -0,0 +1,27 @@ +diff -up pegasus/Makefile.Release_old pegasus/Makefile.Release +--- pegasus/Makefile.Release_old 2010-11-01 15:20:18.487489899 +0100 ++++ pegasus/Makefile.Release 2010-11-01 15:23:12.016562644 +0100 +@@ -426,14 +426,15 @@ ifdef PEGASUS_PAM_AUTHENTICATION + $(COPY) $(ROOT)/rpm/access.conf $(PEGASUS_STAGING_DIR)$(PEGASUS_CONFIG_DIR)/access.conf + endif + $(MKDIRHIER) $(PEGASUS_STAGING_DIR)/etc/init.d +- $(COPY) $(ROOT)/rpm/preamble-tog-pegasus.rc $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "CIMSERVER_BIN=$(PEGASUS_SBIN_DIR)/cimserver" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "PEGASUS_SCRIPT_DIR=$(PEGASUS_SCRIPT_DIR)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "PEGASUS_SSL_CONF_FILE=$(PEGASUS_PEM_DIR)/ssl.cnf" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "PEGASUS_SSL_CERT_FILE=$(PEGASUS_SSL_CERT_FILE_PATH)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "PEGASUS_SSL_KEY_FILE=$(PEGASUS_SSL_KEY_FILE_PATH)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- @$(ECHO-E) "PEGASUS_SSL_TRUSTSTORE=$(PEGASUS_SSL_CLIENT_TRUSTSTORE)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus +- $(CAT) $(ROOT)/rpm/commands-tog-pegasus.rc >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# use tog-pegasus.rc that we already patched, do not create new one ++ $(COPY) $(ROOT)/rpm/tog-pegasus.rc $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "CIMSERVER_BIN=$(PEGASUS_SBIN_DIR)/cimserver" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "PEGASUS_SCRIPT_DIR=$(PEGASUS_SCRIPT_DIR)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "PEGASUS_SSL_CONF_FILE=$(PEGASUS_PEM_DIR)/ssl.cnf" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "PEGASUS_SSL_CERT_FILE=$(PEGASUS_SSL_CERT_FILE_PATH)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "PEGASUS_SSL_KEY_FILE=$(PEGASUS_SSL_KEY_FILE_PATH)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# @$(ECHO-E) "PEGASUS_SSL_TRUSTSTORE=$(PEGASUS_SSL_CLIENT_TRUSTSTORE)" >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus ++# $(CAT) $(ROOT)/rpm/commands-tog-pegasus.rc >> $(PEGASUS_STAGING_DIR)/etc/init.d/tog-pegasus + endif + + setpermissions_PegasusSystemFiles: FORCE diff --git a/sources b/sources index 40b3eb4..d1c1897 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -6cd2b72831a389033c0a9471d28bc257 pegasus-2.9.0.tar.gz +dac7e4cf92001441fec14ada4fb480dd pegasus-2.9.2.tar.gz diff --git a/tog-pegasus.spec b/tog-pegasus.spec index 4b064f4..11bba75 100644 --- a/tog-pegasus.spec +++ b/tog-pegasus.spec @@ -1,108 +1,72 @@ -# -# -# OpenPegasus (Red Hat release) RPM .spec file -# -# tog-pegasus.spec -# -# Copyright (c) 2000 - 2006, -# The Open Group; Hewlett-Packard Development Company, L.P.; -# IBM Corp.; BMC Software; Tivoli Systems. -# Licensed under the "Open Group Pegasus Open Source" license -# shipped with this software. -# -# Upstream tog-pegasus.spec file modified for Red Hat build - -# April 2006, Jason Vas Dias , Red Hat Inc. -# - -%{?!LINUX_VERSION: %define LINUX_VERSION %{?dist}} -# -%{?!PEGASUS_BUILD_TEST_RPM: %define PEGASUS_BUILD_TEST_RPM 0} +%{?!PEGASUS_BUILD_TEST_RPM: %define PEGASUS_BUILD_TEST_RPM 0} # do "rpmbuild --define 'PEGASUS_BUILD_TEST_RPM 1'" to build test RPM. -# -%{?!NOCLEAN: %define NOCLEAN 0} -# ^- 1: don't do %clean -%{?!NODEBUGINFO: %define NODEBUGINFO 0} -# ^- 1: don't generate debuginfo or strip binaries -%if %{NODEBUGINFO} -%define debug_package %{nil} -%endif -%define srcname pegasus -%define pegasus_gid 65 -%define pegasus_uid 66 -%define multilib 0 -%define bsx '' -%ifarch %{ix86} x86_64 ppc ppc64 s390 s390x sparcv9 sparc64 -%define multilib 1 -%define bsx -32 -%ifarch x86_64 ppc64 s390x sparc64 -%define bsx -64 -%endif -%endif +%define srcname pegasus +%define major_ver 2.9 +%define pegasus_gid 65 +%define pegasus_uid 66 + +Name: tog-pegasus +Version: %{major_ver}.2 +Release: 1%{?dist} +Epoch: 2 +Summary: OpenPegasus WBEM Services for Linux + +Group: Systems Management/Base +License: MIT +URL: http://www.openpegasus.org +Source0: http://www.openpegasus.org/uploads/40/18361/pegasus-%{version}.tar.gz +# 1: Description of security enhacements +Source1: README.RedHat.Security +# 2: Script for setting SSL certificates - used in init script when cimserver is started for the first time +Source2: genOpenPegasusSSLCerts +# 3: Description of SSL settings +Source3: README.RedHat.SSL +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) -Version: 2.9.0 -Release: 11%{?dist} -Epoch: 2 -# -Summary: OpenPegasus WBEM Services for Linux -Name: tog-pegasus -Group: System Environment/Daemons -URL: http://www.openpegasus.org -# -License: MIT -# -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-%{_target_cpu}-%(%{__id} -u -n) -# -Source: http://www.openpegasus.org/uploads/40/18361/pegasus-%{version}.tar.gz -Source1: README.RedHat.Security -Source2: genOpenPegasusSSLCerts -Source3: pegasus_arch_alternatives -Source4: RedHat.OpenPegasus.Makefile -Source5: README.RedHat.SSL -# # 0: Still not fixed by http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5008 -Patch0: pegasus-2.9.0-initscript.patch +# Changes to the init script to make it LSB compliant +Patch0: pegasus-2.9.0-initscript.patch # 1: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5011 -Patch1: pegasus-2.9.0-no-rpath.patch -Patch2: pegasus-2.7.0-PIE.patch +# Removing insecure -rpath +Patch1: pegasus-2.9.0-no-rpath.patch +# 2: Adding -fPIE +Patch2: pegasus-2.7.0-PIE.patch # 3: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5016 -Patch3: pegasus-2.9.0-redhat-config.patch +# Configuration variables +Patch3: pegasus-2.9.0-redhat-config.patch # 4: don't see how http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5099 fixed it -Patch4: pegasus-2.9.0-cmpi-provider-lib.patch +# Changing provider dir to the directory we use +Patch4: pegasus-2.9.0-cmpi-provider-lib.patch # 5: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5010 -Patch5: pegasus-2.9.0-local-or-remote-auth.patch +# We distinguish between local and remote user and behave adequately (will be upstream once) +Patch5: pegasus-2.9.0-local-or-remote-auth.patch # 6: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5012 -Patch6: pegasus-2.5.1-pam-wbem.patch +# Modifies pam rules to use access cofiguration file and local/remote differences +Patch6: pegasus-2.5.1-pam-wbem.patch # 7: http://cvs.rdg.opengroup.org/bugzilla/show_bug.cgi?id=5006 -Patch7: pegasus-2.9.0-fix_tests.patch -Patch9: pegasus-2.6.0-cimuser.patch -Patch11: pegasus-2.9.0-no_privilege_separation.patch -Patch12: pegasus-2.7.0-no_snmp_tests.patch -Patch13: pegasus-2.9.0-sparc.patch -Patch14: pegasus-2.7.2-baseelif.patch -Patch15: pegasus-2.9.0-openssl.patch -# -Conflicts: openwbem -Provides: tog-pegasus-cimserver -# -BuildRequires: bash, sed, grep, coreutils, procps, gcc, gcc-c++ -BuildRequires: imake, libstdc++, make, pam-devel -BuildRequires: openssl-devel >= 0.9.8b, e2fsprogs -BuildRequires: net-snmp-devel -# -Requires: bash, sed, grep, coreutils, procps, openssl >= 0.9.8b, pam -Requires: chkconfig, sysvinit -Requires: e2fsprogs, bind-utils, net-tools -Requires(post): bash, sed, grep, coreutils, procps, openssl >= 0.9.8b, pam -Requires(post): chkconfig, sysvinit -Requires(post): e2fsprogs, bind-utils, net-tools -Requires(pre): bash, sed, grep, coreutils, procps, openssl >= 0.9.8b, pam -Requires(pre): chkconfig, sysvinit -Requires(pre): e2fsprogs, bind-utils, net-tools -Requires(postun): bash, sed, grep, coreutils, procps, openssl >= 0.9.8b, pam -Requires(postun): chkconfig, sysvinit -Requires(postun): e2fsprogs, bind-utils, net-tools -Requires: net-snmp +# Modifies Makefile for the tests +Patch7: pegasus-2.9.0-fix_tests.patch +# 9: Adds cimuser binary to admin commands +Patch9: pegasus-2.6.0-cimuser.patch +# 12: Removes snmp tests, which we don't want to perform +Patch12: pegasus-2.7.0-no_snmp_tests.patch +# 13: Changes to make package compile on sparc +Patch13: pegasus-2.9.0-sparc.patch +# 15: SSL fix +Patch15: pegasus-2.9.0-openssl.patch +# 16: Fixes "getpagesize" build error +Patch16: pegasus-2.9.1-getpagesize.patch +# 18: Let the makefile install initscript we want to use +Patch18: pegasus-2.9.1-makefile-initscript.patch + +BuildRequires: bash, sed, grep, coreutils, procps, gcc, gcc-c++ +BuildRequires: libstdc++, make, pam-devel +BuildRequires: openssl-devel >= 0.9.6 +BuildRequires: net-snmp-devel +Requires: net-snmp +Requires: %{name}-libs = %{epoch}:%{version}-%{release} +Provides: cimserver %description OpenPegasus WBEM Services for Linux enables management solutions that deliver @@ -112,12 +76,10 @@ communication protocol for monitoring and controlling resources from diverse sources. %package devel -Summary: The OpenPegasus Software Development Kit -Group: Systems Management/Base -Requires: tog-pegasus >= %{version}-%{release} -Obsoletes: tog-pegasus-sdk -Requires: make, gcc, gcc-c++ -Requires(preun): make +Summary: The OpenPegasus Software Development Kit +Group: Systems Management/Base +Requires: tog-pegasus >= %{version}-%{release} +Obsoletes: tog-pegasus-sdk %description devel The OpenPegasus WBEM Services for Linux SDK is the developer's kit for the @@ -125,16 +87,85 @@ OpenPegasus WBEM Services for Linux release. It provides Linux C++ developers with the WBEM files required to build WBEM Clients and Providers. It also supports C provider developers via the CMPI interface. +%package libs +Summary: The OpenPegasus Libraries +Group: Systems Management/Base + +%description libs +The OpenPegasus libraries. + %if %{PEGASUS_BUILD_TEST_RPM} %package test -Summary: The OpenPegasus Tests -Group: Systems Management/Base -Requires: tog-pegasus >= %{version}-%{release}, make +Summary: The OpenPegasus Tests +Group: Systems Management/Base +Requires: tog-pegasus >= %{version}-%{release}, make %description test The OpenPegasus WBEM tests for the OpenPegasus %{version} Linux rpm. %endif + +%ifarch ia64 +%global PEGASUS_HARDWARE_PLATFORM LINUX_IA64_GNU +%else +%ifarch x86_64 +%global PEGASUS_HARDWARE_PLATFORM LINUX_X86_64_GNU +%else +%ifarch ppc +%global PEGASUS_HARDWARE_PLATFORM LINUX_PPC_GNU +%else +%ifarch ppc64 +%global PEGASUS_HARDWARE_PLATFORM LINUX_PPC64_GNU +%else +%ifarch s390 +%global PEGASUS_HARDWARE_PLATFORM LINUX_ZSERIES_GNU +%else +%ifarch s390x +%global PEGASUS_HARDWARE_PLATFORM LINUX_ZSERIES64_GNU +%else +%ifarch sparcv9 +%global PEGASUS_HARDWARE_PLATFORM LINUX_SPARCV9_GNU +%else +%ifarch sparc64 +%global PEGASUS_HARDWARE_PLATFORM LINUX_SPARC64_GNU +%else +%global PEGASUS_HARDWARE_PLATFORM LINUX_IX86_GNU +%endif +%endif +%endif +%endif +%endif +%endif +%endif +%endif + +%global PEGASUS_ARCH_LIB %{_lib} +%global OPENSSL_HOME /usr +%global OPENSSL_BIN /usr/bin +%global PEGASUS_PEM_DIR /etc/Pegasus +%global PEGASUS_SSL_CERT_FILE server.pem +%global PEGASUS_SSL_KEY_FILE file.pem +%global PEGASUS_SSL_TRUSTSTORE client.pem +%global PAM_CONFIG_DIR /etc/pam.d +%global PEGASUS_CONFIG_DIR /etc/Pegasus +%global PEGASUS_VARDATA_DIR /var/lib/Pegasus +%global PEGASUS_VARDATA_CACHE_DIR /var/lib/Pegasus/cache +%global PEGASUS_LOCAL_DOMAIN_SOCKET_PATH /var/run/tog-pegasus/socket/cimxml.socket +%global PEGASUS_CIMSERVER_START_FILE /var/run/tog-pegasus/cimserver.pid +%global PEGASUS_TRACE_FILE_PATH /var/lib/Pegasus/cache/trace/cimserver.trc +%global PEGASUS_CIMSERVER_START_LOCK_FILE /var/run/tog-pegasus/cimserver_start.lock +%global PEGASUS_REPOSITORY_DIR /var/lib/Pegasus/repository +%global PEGASUS_PREV_REPOSITORY_DIR_NAME prev_repository +%global PEGASUS_REPOSITORY_PARENT_DIR /var/lib/Pegasus +%global PEGASUS_PREV_REPOSITORY_DIR /var/lib/PegasusXXX/prev_repository +%global PEGASUS_SBIN_DIR /usr/sbin +%global PEGASUS_DOC_DIR /usr/share/doc/%{name}-%{version} + +%global PEGASUS_RPM_ROOT $RPM_BUILD_DIR/%{srcname} +%global PEGASUS_RPM_HOME %PEGASUS_RPM_ROOT/build +%global PEGASUS_INSTALL_LOG /var/lib/Pegasus/log/install.log + + %prep %setup -q -n %{srcname} %patch1 -p1 -b .no-rpath @@ -144,184 +175,104 @@ The OpenPegasus WBEM tests for the OpenPegasus %{version} Linux rpm. %patch6 -p1 -b .pam-wbem %patch7 -p1 -b .fix-tests %patch9 -p1 -b .cimuser -%patch11 -p1 -b .no_privilege_separation %patch12 -p1 -b .no_snmp_tests %patch5 -p1 -b .local-or-remote-auth %patch13 -p1 -b .sparc -%patch14 -p1 -b .bareelif %patch15 -p1 -b .openssl %patch0 -p1 -b .initscript -find . -name 'CVS' -exec /bin/rm -rf '{}' ';' >/dev/null 2>&1 ||:; +%patch16 -p1 -b .getpagesize +%patch18 -p1 -b .makefile-initscript + %build -rm -rf ${RPM_BUILD_ROOT} || :; cp -fp %SOURCE1 doc cp -fp %SOURCE2 rpm -cp -fp %SOURCE4 .; -cp -fp %SOURCE5 doc +cp -fp %SOURCE3 doc -export RPM_ARCH_LIB=%{_lib} -export RPM_ARCH=%{_target_cpu} -export RPM_BUILD_DIR=`pwd` -export RPM_ARCH=`uname -i` -export RPM_OPT_FLAGS=`rpm -q rpm --qf '%{OPTFLAGS}'` -%ifarch ia64 - export PEGASUS_PLATFORM=LINUX_IA64_GNU -%else - %ifarch x86_64 - export PEGASUS_PLATFORM=LINUX_X86_64_GNU - %else - %ifarch ppc - export PEGASUS_PLATFORM=LINUX_PPC_GNU - %else - %ifarch ppc64 - export PEGASUS_PLATFORM=LINUX_PPC64_GNU - %else - %ifarch s390 - export PEGASUS_PLATFORM=LINUX_ZSERIES_GNU - %else - %ifarch s390x - export PEGASUS_PLATFORM=LINUX_ZSERIES64_GNU - %else - %ifarch sparcv9 - export PEGASUS_PLATFORM=LINUX_SPARCV9_GNU - %else - %ifarch sparc64 - export PEGASUS_PLATFORM=LINUX_SPARC64_GNU - %else - export PEGASUS_PLATFORM=LINUX_IX86_GNU - %endif - %endif - %endif - %endif - %endif - %endif - %endif -%endif -export PEGASUS_ROOT=${RPM_BUILD_DIR} -export PEGASUS_HOME=${PEGASUS_ROOT}/build -export PEGASUS_ARCH_LIB=${RPM_ARCH_LIB} -export PEGASUS_ENVVAR_FILE=${PEGASUS_ROOT}/env_var_Linux.status -export PEGASUS_EXTRA_C_FLAGS="${RPM_OPT_FLAGS} -Wno-unused" -export PEGASUS_EXTRA_CXX_FLAGS=${PEGASUS_EXTRA_C_FLAGS} -export PEGASUS_EXTRA_PROGRAM_LINK_FLAGS="-pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack" -export OPENSSL_HOME=/usr -export OPENSSL_BIN=/usr/bin +export PEGASUS_ROOT=%PEGASUS_RPM_ROOT +export PEGASUS_HOME=%PEGASUS_RPM_HOME +export PEGASUS_PLATFORM=%PEGASUS_HARDWARE_PLATFORM +export PEGASUS_ARCH_LIB=%PEGASUS_ARCH_LIB +export PEGASUS_ENVVAR_FILE=$PEGASUS_ROOT/env_var_Linux.status + +export OPENSSL_HOME=%OPENSSL_HOME +export OPENSSL_BIN=%OPENSSL_BIN +export LD_LIBRARY_PATH=$PEGASUS_HOME/lib +export PATH=$PEGASUS_HOME/bin:$PATH + +export PEGASUS_EXTRA_C_FLAGS="$RPM_OPT_FLAGS -fPIC -g -Wall -Wno-unused" +export PEGASUS_EXTRA_CXX_FLAGS="$PEGASUS_EXTRA_C_FLAGS" +export PEGASUS_EXTRA_LINK_FLAGS="$RPM_OPT_FLAGS" +export PEGASUS_EXTRA_PROGRAM_LINK_FLAGS="-g -pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack" export SYS_INCLUDES=-I/usr/kerberos/include -export LD_LIBRARY_PATH=${PEGASUS_HOME}/lib -export PATH=${PEGASUS_HOME}/bin:${PATH} make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release create_ProductVersionFile make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release create_CommonProductDirectoriesInclude make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release create_ConfigProductDirectoriesInclude -make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release depend make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release all make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.Release repository -%if %{PEGASUS_BUILD_TEST_RPM} - make %{?_smp_mflags} -f ${PEGASUS_ROOT}/Makefile.ReleaseTest -s create_repository -%endif + %install -export RPM_ARCH_LIB=%{_lib} -export RPM_ARCH=%{_target_cpu} -export BSX=%{bsx} -export RPM_BUILD_DIR=`pwd` -export RPM_ARCH=`uname -i` -export RPM_OPT_FLAGS=`rpm -q rpm --qf '%{OPTFLAGS}'` -%ifarch ia64 - export PEGASUS_PLATFORM=LINUX_IA64_GNU -%else - %ifarch x86_64 - export PEGASUS_PLATFORM=LINUX_X86_64_GNU - %else - %ifarch ppc - export PEGASUS_PLATFORM=LINUX_PPC_GNU - %else - %ifarch ppc64 - export PEGASUS_PLATFORM=LINUX_PPC64_GNU - %else - %ifarch s390 - export PEGASUS_PLATFORM=LINUX_ZSERIES_GNU - %else - %ifarch s390x - export PEGASUS_PLATFORM=LINUX_ZSERIES64_GNU - %else - %ifarch sparcv9 - export PEGASUS_PLATFORM=LINUX_SPARCV9_GNU - %else - %ifarch sparc64 - export PEGASUS_PLATFORM=LINUX_SPARC64_GNU - %else - export PEGASUS_PLATFORM=LINUX_IX86_GNU - %endif - %endif - %endif - %endif - %endif - %endif - %endif -%endif -export PEGASUS_ROOT=${RPM_BUILD_DIR} -export PEGASUS_HOME=${PEGASUS_ROOT}/build -export PEGASUS_ARCH_LIB=${RPM_ARCH_LIB} -export PEGASUS_ENVVAR_FILE=${PEGASUS_ROOT}/env_var_Linux.status -export PEGASUS_EXTRA_C_FLAGS="${RPM_OPT_FLAGS} -Wno-unused" -export PEGASUS_EXTRA_CXX_FLAGS=${PEGASUS_EXTRA_C_FLAGS} -export PEGASUS_EXTRA_PROGRAM_LINK_FLAGS="-pie -Wl,-z,relro,-z,now,-z,nodlopen,-z,noexecstack" -export OPENSSL_HOME=/usr -export OPENSSL_BIN=/usr/bin -export SYS_INCLUDES=-I/usr/kerberos/include -export LD_LIBRARY_PATH=${PEGASUS_HOME}/lib -export PATH=${PEGASUS_HOME}/bin:${PATH} +rm -rf $RPM_BUILD_ROOT +export PEGASUS_ROOT=%PEGASUS_RPM_ROOT +export PEGASUS_HOME=%PEGASUS_RPM_HOME +export PEGASUS_PLATFORM=%PEGASUS_HARDWARE_PLATFORM +export PEGASUS_ARCH_LIB=%PEGASUS_ARCH_LIB +export PEGASUS_ENVVAR_FILE=$PEGASUS_ROOT/env_var_Linux.status -make -f RedHat.OpenPegasus.Makefile install prefix=$RPM_BUILD_ROOT libdir=%{_libdir} root_user=%(%{__id} -u -n) pegasus_user=%(%{__id} -u -n) +export OPENSSL_BIN=%OPENSSL_BIN +export LD_LIBRARY_PATH=$PEGASUS_HOME/lib +export PATH=$PEGASUS_HOME/bin:$PATH + +export PEGASUS_STAGING_DIR=$RPM_BUILD_ROOT %if %{PEGASUS_BUILD_TEST_RPM} - make -f %{SOURCE4} install_tests prefix=${RPM_BUILD_ROOT} root_user=%(%{__id} -u -n) pegasus_user=%(%{__id} -u -n) -%endif - -%if %{multilib} - %{SOURCE3} --list '%ghost' | grep 'bin/' > ghost_arch_binaries; - %{SOURCE3} --list '%ghost' | grep 'mak/' > ghost_arch_devel; - %{SOURCE3} --list '%ghost' | grep 'test/'> ghost_arch_test; - cp -fp %{SOURCE3} $RPM_BUILD_ROOT/%{_datadir}/Pegasus/scripts; +make -f $PEGASUS_ROOT/Makefile.Release stage \ + PEGASUS_STAGING_DIR=$PEGASUS_STAGING_DIR \ + PEGASUS_BUILD_TEST_RPM=%{PEGASUS_BUILD_TEST_RPM} %else - touch ghost_arch_binaries; - touch ghost_arch_devel; - touch ghost_arch_test; -%endif -%if %{NODEBUGINFO} - /usr/lib/rpm/brp-compress; - exit 0; +make -f $PEGASUS_ROOT/Makefile.Release stage \ + PEGASUS_STAGING_DIR=$PEGASUS_STAGING_DIR %endif -:; +# move files to right directories +mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d/ +mv $RPM_BUILD_ROOT/etc/init.d/tog-pegasus $RPM_BUILD_ROOT/etc/rc.d/init.d/tog-pegasus +# cimserver_planned.conf is on the right place since 2.9.2 +#mv $RPM_BUILD_ROOT/var/lib/Pegasus/cimserver_planned.conf $RPM_BUILD_ROOT/etc/Pegasus/cimserver_planned.conf +mkdir -p $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version} +mv $RPM_BUILD_ROOT/usr/share/doc/%{name}-%{major_ver}/* $RPM_BUILD_ROOT/%{_docdir}/%{name}-%{version} +rm -rf $RPM_BUILD_ROOT/usr/share/doc/%{name}-%{major_ver} +# create symlink for libcmpiCppImpl +pushd $RPM_BUILD_ROOT/usr/%{_lib} +ln -s libcmpiCppImpl.so.1 libcmpiCppImpl.so +popd -%files -f ghost_arch_binaries -%defattr(0750, root, pegasus, 0750) -%if !%{NODEBUGINFO} -%exclude /usr/lib/debug -%endif +%clean +rm -rf $RPM_BUILD_ROOT + + +%files +%defattr(0640, root, pegasus, 0750) +%verify(not md5 size mtime mode group) /var/lib/Pegasus/repository +%defattr(0644, root, pegasus, 0755) +/usr/share/Pegasus/mof +%dir /usr/share/Pegasus %defattr(0755, root, pegasus, 0750) -/usr/%{_lib}/* /usr/share/Pegasus/scripts -%defattr(0750, root, pegasus, 0750) -/usr/sbin/* -%attr(0755, root, pegasus) /usr/sbin/cimauth -%attr(0755, root, pegasus) /usr/sbin/cimconfig -%attr(0755, root, pegasus) /usr/sbin/cimprovagt -%attr(0755, root, pegasus) /usr/sbin/cimserver -%attr(0755, root, pegasus) /usr/sbin/cimuser -%attr(0755, root, pegasus) /usr/sbin/repupgrade -/usr/bin/* -%attr(0755, root, pegasus) /usr/bin/cimmof -%attr(0755, root, pegasus) /usr/bin/cimmofl -%attr(0755, root, pegasus) /usr/bin/cimprovider -%attr(0755, root, pegasus) /usr/bin/osinfo -%attr(0755, root, pegasus) /usr/bin/wbemexec +%defattr(0640, root, pegasus, 0750) +%dir /var/lib/Pegasus +/var/lib/Pegasus/cache +%dir /var/lib/Pegasus/log +%defattr(0640, root, pegasus, 0750) +%dir /etc/Pegasus +%dir %attr(1750,root,pegasus) /var/run/tog-pegasus +%ghost /var/run/tog-pegasus/cimserver.pid +%ghost /var/run/tog-pegasus/cimserver_start.lock +%ghost %attr(1640,root,pegasus) /var/run/tog-pegasus/cimxml.socket %attr(0755, root, pegasus) %config(noreplace) /etc/rc.d/init.d/tog-pegasus %defattr(0640, root, pegasus, 0750) -%dir /etc/Pegasus %ghost %config(noreplace) /etc/Pegasus/cimserver_current.conf %ghost %config(noreplace) /etc/Pegasus/cimserver_planned.conf %config(noreplace) /etc/Pegasus/access.conf @@ -333,60 +284,56 @@ make -f RedHat.OpenPegasus.Makefile install prefix=$RPM_BUILD_ROOT libdir=%{_lib %ghost /etc/Pegasus/cimserver_trust %ghost /etc/Pegasus/indication_trust %ghost /etc/Pegasus/crl -%dir /var/lib/Pegasus -/var/lib/Pegasus/repository -/var/lib/Pegasus/cache -%dir /var/lib/Pegasus/log -%ghost /var/lib/Pegasus/log/install.log -%ghost /var/lib/Pegasus/cache/trace/cimserver.trc -%dir %attr(1750,root,pegasus) /var/run/tog-pegasus -%ghost /var/run/tog-pegasus/cimserver.pid -%ghost /var/run/tog-pegasus/cimserver_start.lock -%ghost %attr(1640,root,pegasus) /var/run/tog-pegasus/cimxml.socket +%ghost %verify(not md5 size mtime) /var/lib/Pegasus/log/install.log +%ghost %verify(not md5 size mtime) /var/lib/Pegasus/cache/trace/cimserver.trc +%defattr(0750, root, pegasus, 0750) +/usr/sbin/* +/usr/bin/* %defattr(0644, root, pegasus, 0755) -%dir /usr/share/Pegasus -/usr/share/Pegasus/mof /usr/share/man/man8/* /usr/share/man/man1/* %doc doc/license.txt doc/Admin_Guide_Release.pdf doc/PegasusSSLGuidelines.htm doc/SecurityGuidelinesForDevelopers.html doc/README.RedHat.Security src/Clients/repupgrade/doc/repupgrade.html doc/README.RedHat.SSL - -%files devel -f ghost_arch_devel +%files devel %defattr(0644,root,pegasus,0755) -/usr/include/Pegasus /usr/share/Pegasus/samples +/usr/include/Pegasus /usr/share/Pegasus/html +%files libs +%defattr(0755, root, pegasus, 0750) +/usr/%{_lib}/* + %if %{PEGASUS_BUILD_TEST_RPM} -%files test -f ghost_arch_test +%files test %defattr(0644,root,pegasus,0755) %dir /usr/share/Pegasus/test -/usr/share/Pegasus/test/Makefile%{bsx} +/usr/share/Pegasus/test/Makefile /usr/share/Pegasus/test/mak -/var/lib/Pegasus/testrepository +%dir /usr/share/Pegasus/test/tmp +%ghost /usr/share/Pegasus/test/tmp/procIdFile +%ghost /usr/share/Pegasus/test/tmp/trapLogFile +%ghost /usr/share/Pegasus/test/tmp/IndicationStressTestLog +%ghost /usr/share/Pegasus/test/tmp/oldIndicationStressTestLog +%verify(not md5 size mtime) /var/lib/Pegasus/testrepository %defattr(0750,root,pegasus,0755) /usr/share/Pegasus/test/bin -/usr/share/Pegasus/test/lib +/usr/share/Pegasus/test/%PEGASUS_ARCH_LIB %endif -%clean -%if !%{NOCLEAN} -[ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf $RPM_BUILD_ROOT; -[ "${RPM_BUILD_DIR}" != "/" ] && rm -rf ${RPM_BUILD_DIR}/%{srcname}; -%endif %pre if [ $1 -eq 1 ]; then # first install: create the 'pegasus' user and group: /usr/sbin/groupadd -g %{pegasus_gid} -f -r pegasus >/dev/null 2>&1 || :; /usr/sbin/useradd -u %{pegasus_uid} -r -N -M -g pegasus -s /sbin/nologin -d /var/lib/Pegasus \ - -c "tog-pegasus OpenPegasus WBEM/CIM services" pegasus >/dev/null 2>&1 || :; + -c "tog-pegasus OpenPegasus WBEM/CIM services" pegasus >/dev/null 2>&1 || :; elif [ $1 -gt 1 ]; then if [ -d /var/lib/Pegasus/repository ]; then - if [ -d /var/lib/Pegasus/prev_repository ]; then - mv /var/lib/Pegasus/prev_repository /var/lib/Pegasus/prev_repository_`date '+%Y-%m-%d-%s.%N'`.rpmsave; - fi; - mv /var/lib/Pegasus/repository /var/lib/Pegasus/prev_repository; + if [ -d /var/lib/Pegasus/prev_repository ]; then + mv /var/lib/Pegasus/prev_repository /var/lib/Pegasus/prev_repository_`date '+%Y-%m-%d-%s.%N'`.rpmsave; + fi; + mv /var/lib/Pegasus/repository /var/lib/Pegasus/prev_repository; fi fi :; @@ -394,16 +341,13 @@ fi %post ldconfig; chkconfig --add tog-pegasus; -if [ $1 -ge 1 ]; then +if [ $1 -ge 1 ]; then echo `date` >> /var/lib/Pegasus/log/install.log 2>&1 || :; -%if %{multilib} - %{_datadir}/Pegasus/scripts/pegasus_arch_alternatives || :; -%endif if [ $1 -gt 1 ]; then if [ -d /var/lib/Pegasus/prev_repository ]; then # The user's old repository was moved to /var/lib/Pegasus/prev_repository, which # now must be upgraded to the new repository in /var/lib/Pegasus/repository: - /usr/sbin/repupgrade 2>> /var/lib/Pegasus/log/install.log || :; + /usr/sbin/repupgrade 2>> /var/lib/Pegasus/log/install.log || :; mv /var/lib/Pegasus/prev_repository /var/lib/Pegasus/prev_repository_`date '+%Y-%m-%d-%s.%N'`.rpmsave; fi; /sbin/service tog-pegasus condrestart >/dev/null 2>&1 || :; @@ -415,54 +359,49 @@ fi if [ $1 -eq 0 ]; then /sbin/service tog-pegasus stop >/dev/null 2>&1 || :; /sbin/chkconfig --del tog-pegasus >/dev/null 2>&1 || :; -%if %{multilib} - if [ "$1" -eq 0 ]; then - /usr/sbin/alternatives --remove pegasus /usr/sbin/cimserver-64 >/dev/null 2>&1 || :; - /usr/sbin/alternatives --remove pegasus /usr/sbin/cimserver-32 >/dev/null 2>&1 || :; - fi -%endif fi :; %postun -p /sbin/ldconfig -%post devel -if [ $1 -ge 0 ]; then - %{_datadir}/Pegasus/scripts/pegasus_arch_alternatives devel || :; -fi -:; - %preun devel if [ $1 -eq 0 ] ; then make --directory /usr/share/Pegasus/samples -s clean >/dev/null 2>&1 || :; -%if %{multilib} - /usr/sbin/alternatives --remove pegasus-devel %{_datadir}/Pegasus/samples/mak/config.mak-64 >/dev/null 2>&1 || :; - /usr/sbin/alternatives --remove pegasus-devel %{_datadir}/Pegasus/samples/mak/config.mak-32 >/dev/null 2>&1 || :; -%endif fi :; -%if %{PEGASUS_BUILD_TEST_RPM} -%if %{multilib} -%post test -if [ $1 -ge 0 ]; then - %{_datadir}/Pegasus/scripts/pegasus_arch_alternatives test || :; -fi -:; +%post libs +if [ $1 -eq 1 ]; then + # Create Symbolic Links for SDK Libraries + # + ln -sf libpegclient.so.1 /usr/%PEGASUS_ARCH_LIB/libpegclient.so + ln -sf libpegcommon.so.1 /usr/%PEGASUS_ARCH_LIB/libpegcommon.so + ln -sf libpegprovider.so.1 /usr/%PEGASUS_ARCH_LIB/libpegprovider.so + ln -sf libDefaultProviderManager.so.1 /usr/%PEGASUS_ARCH_LIB/libDefaultProviderManager.so + ln -sf libCIMxmlIndicationHandler.so.1 /usr/%PEGASUS_ARCH_LIB/libCIMxmlIndicationHandler.so + ln -sf libsnmpIndicationHandler.so.1 /usr/%PEGASUS_ARCH_LIB/libsnmpIndicationHandler.so -%preun test -if [ $1 -eq 0 ]; then -%if %{multilib} - /usr/sbin/alternatives --remove pegasus-test %{_datadir}/Pegasus/test/Makefile-64 >/dev/null 2>&1 || :; - /usr/sbin/alternatives --remove pegasus-test %{_datadir}/Pegasus/test/Makefile-32 >/dev/null 2>&1 || :; -%endif + # Create Symbolic Links for Packaged Provider Libraries + # + ln -sf libComputerSystemProvider.so.1 /usr/%PEGASUS_ARCH_LIB/Pegasus/providers/libComputerSystemProvider.so + ln -sf libOSProvider.so.1 /usr/%PEGASUS_ARCH_LIB/Pegasus/providers/libOSProvider.so + ln -sf libProcessProvider.so.1 /usr/%PEGASUS_ARCH_LIB/Pegasus/providers/libProcessProvider.so + + # Create Symbolic Links for Packaged Provider Managers + # + ln -sf libCMPIProviderManager.so.1 /usr/%PEGASUS_ARCH_LIB/Pegasus/providerManagers/libCMPIProviderManager.so fi :; -%endif -%endif %changelog +* Wed Nov 3 2010 Vitezslav Crhonek - 2:2.9.2-1 +- Update to upstream version 2.9.2 +- Mark files in /var/lib/Pegasus as noverify in spec file +- Fix initscript permissions +- Add patch/source descriptions to the spec file +- Cleanup the spec file, use upstream Makefile + * Thu Apr 22 2010 Vitezslav Crhonek - 2:2.9.0-11 - Fix initscript permissions @@ -566,7 +505,7 @@ fi - Rebuild * Fri Nov 23 2007 Vitezslav Crhonek - 2:2.7.0-2 -- Fix OpenPegasus SRPM fails to build Test RPM +- Fix OpenPegasus SRPM fails to build Test RPM Resolves: #391961 * Mon Nov 19 2007 Vitezslav Crhonek - 2:2.7.0-1 @@ -635,7 +574,7 @@ fi o 5059: XMLWriter does not escape '>' in strings o 5072: Potential race condition with OOP response chunks o 5083: CIMRequestMessage buildResponse() should be const -- Fix bug 193121: restore world read access to libraries +- Fix bug 193121: restore world read access to libraries * Tue May 02 2006 Jason Vas Dias - 2:2.5.1-4 - fix bug 190432: %%exclude /usr/lib/debug from RPM @@ -648,13 +587,13 @@ fi o 4984 : Forked process hangs in system call o 4986 : Adding automated test for snmpIndication Handler ( http://cvs.opengroup.org/bugzilla/show_bug.cgi?id=? ) -- apply upstream update to 'pegasus-2.5.1-warnings.patch' +- apply upstream update to 'pegasus-2.5.1-warnings.patch' * Mon Apr 17 2006 Jason Vas Dias - 2:2.5.1-3 - Fix repupgrade (make it use correct paths) * Fri Apr 14 2006 Jason Vas Dias - 2:2.5.1-2 -- Apply patches for the two '2.5.2_APPROVED' upstream bugzillas +- Apply patches for the two '2.5.2_APPROVED' upstream bugzillas 4934(4943) and 4945 : (http://cvs.opengroup.org/bugzilla/buglist.cgi?bug_id=4943%%2C4945) - Fix the PATH_MAX and MAXHOSTNAMELEN issues (again) @@ -682,7 +621,7 @@ fi - rebuilt * Wed Nov 16 2005 Jason Vas Dias - 2:2.5-4 -- fix bug 173401: SSL support broken by openssl-0.9.7g -> 0.9.8a upgrade +- fix bug 173401: SSL support broken by openssl-0.9.7g -> 0.9.8a upgrade * Wed Nov 09 2005 Jason Vas Dias - 2:2.5-3 - Rebuild for new openssl dependencies