#!/bin/ksh93
#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
#
# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
#
#ident "@(#)install-sfw 1.3 10/04/22 SMI"
VERS=pegasus-2.8.0
PREFIX=${ROOT}/usr
SBINDIR=${PREFIX}/sbin
BINDIR=${PREFIX}/bin
LIBDIR=${PREFIX}/lib
ETCDIR=${ROOT}/etc
SHAREDIR=${PREFIX}/share
MAN1DIR=${SHAREDIR}/man/man1
MAN8DIR=${SHAREDIR}/man/man8
ETCPEGDIR=${ETCDIR}/Pegasus
INCDIR=${PREFIX}/include/Pegasus
BLDDIR=${VERS}/build32_${MACH}
PEGDIR=${VERS}/pegasus
. ${SRC}/tools/install.subr
PEG_INC_ROOT=${PEGDIR}/src/Pegasus
# Include Files
PEG_CLIENT_DIR="Client"
PEG_CLIENT_INCLIST="\
${PEG_CLIENT_DIR}/CIMClient.h \
${PEG_CLIENT_DIR}/CIMClientException.h \
${PEG_CLIENT_DIR}/ClientOpPerformanceDataHandler.h \
${PEG_CLIENT_DIR}/Linkage.h "
PEG_COMMON_DIR="Common"
PEG_COMMON_INCLIST="\
${PEG_COMMON_DIR}/AcceptLanguageList.h \
${PEG_COMMON_DIR}/Array.h \
${PEG_COMMON_DIR}/ArrayInter.h \
${PEG_COMMON_DIR}/CIMClass.h \
${PEG_COMMON_DIR}/CIMDateTime.h \
${PEG_COMMON_DIR}/CIMFlavor.h \
${PEG_COMMON_DIR}/CIMIndication.h \
${PEG_COMMON_DIR}/CIMInstance.h \
${PEG_COMMON_DIR}/CIMMethod.h \
${PEG_COMMON_DIR}/CIMName.h \
${PEG_COMMON_DIR}/CIMObject.h \
${PEG_COMMON_DIR}/CIMObjectPath.h \
${PEG_COMMON_DIR}/CIMOperationType.h \
${PEG_COMMON_DIR}/CIMParamValue.h \
${PEG_COMMON_DIR}/CIMParameter.h \
${PEG_COMMON_DIR}/CIMProperty.h \
${PEG_COMMON_DIR}/CIMPropertyList.h \
${PEG_COMMON_DIR}/CIMQualifier.h \
${PEG_COMMON_DIR}/CIMQualifierDecl.h \
${PEG_COMMON_DIR}/CIMScope.h \
${PEG_COMMON_DIR}/CIMStatusCode.h \
${PEG_COMMON_DIR}/CIMType.h \
${PEG_COMMON_DIR}/CIMValue.h \
${PEG_COMMON_DIR}/Char16.h \
${PEG_COMMON_DIR}/Config.h \
${PEG_COMMON_DIR}/ContentLanguageList.h \
${PEG_COMMON_DIR}/Exception.h \
${PEG_COMMON_DIR}/LanguageTag.h \
${PEG_COMMON_DIR}/Linkage.h \
${PEG_COMMON_DIR}/OperationContext.h \
${PEG_COMMON_DIR}/ResponseHandler.h \
${PEG_COMMON_DIR}/SSLContext.h \
${PEG_COMMON_DIR}/String.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_CC.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_SPARC_CC_64.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_IX86_CC.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_SPARC_GNU.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_SPARC_CC.h \
${PEG_COMMON_DIR}/Platform_SOLARIS_X86_64_CC.h "
PEG_CONSUMER_DIR="Consumer"
PEG_CONSUMER_INCLIST="\
${PEG_CONSUMER_DIR}/CIMIndicationConsumer.h \
${PEG_CONSUMER_DIR}/Linkage.h "
PEG_LISTENER_DIR="Listener"
PEG_LISTENER_INCLIST="\
${PEG_LISTENER_DIR}/CIMListener.h \
${PEG_LISTENER_DIR}/Linkage.h \
${PEG_LISTENER_DIR}/CIMListenerIndicationDispatcher.h \
${PEG_LISTENER_DIR}/List.h "
PEG_PROVIDER_DIR="Provider"
PEG_PROVIDER_INCLIST="\
${PEG_PROVIDER_DIR}/CIMAssociationProvider.h \
${PEG_PROVIDER_DIR}/CIMIndicationConsumerProvider.h \
${PEG_PROVIDER_DIR}/CIMIndicationProvider.h \
${PEG_PROVIDER_DIR}/CIMInstanceProvider.h \
${PEG_PROVIDER_DIR}/CIMMethodProvider.h \
${PEG_PROVIDER_DIR}/CIMOMHandle.h \
${PEG_PROVIDER_DIR}/CIMProvider.h \
${PEG_PROVIDER_DIR}/Linkage.h \
${PEG_PROVIDER_DIR}/ProviderException.h \
${PEG_PROVIDER_DIR}/CMPI/cmpidt.h \
${PEG_PROVIDER_DIR}/CMPI/cmpift.h \
${PEG_PROVIDER_DIR}/CMPI/cmpimacs.h \
${PEG_PROVIDER_DIR}/CMPI/cmpios.h \
${PEG_PROVIDER_DIR}/CMPI/cmpipl.h "
mkdir -p -m 755 ${INCDIR}/Client
mkdir -p -m 755 ${INCDIR}/Common
mkdir -p -m 755 ${INCDIR}/Consumer
mkdir -p -m 755 ${INCDIR}/Listener
mkdir -p -m 755 ${INCDIR}/Provider
mkdir -p -m 755 ${INCDIR}/Provider/CMPI
for i in ${PEG_CLIENT_INCLIST}
do
_install N ${PEG_INC_ROOT}/${i} ${INCDIR}/${i} 444
done
for i in ${PEG_COMMON_INCLIST}
do
_install N ${PEG_INC_ROOT}/${i} ${INCDIR}/${i} 444
done
for i in ${PEG_CONSUMER_INCLIST}
do
_install N ${PEG_INC_ROOT}/${i} ${INCDIR}/${i} 444
done
for i in ${PEG_LISTENER_INCLIST}
do
_install N ${PEG_INC_ROOT}/${i} ${INCDIR}/${i} 444
done
for i in ${PEG_PROVIDER_INCLIST}
do
_install N ${PEG_INC_ROOT}/${i} ${INCDIR}/${i} 444
done
# Library Files
PEG_LIBLIST="\
libCIMQueryCapabilitiesProvider.so \
libCIMxmlIndicationHandler.so \
libCertificateProvider.so \
libCMPIProviderManager.so \
libConfigSettingProvider.so \
libDefaultProviderManager.so \
libInteropProvider.so \
libIPProviderModule.so \
libNamespaceProvider.so \
libProviderRegistrationProvider.so \
libUserAuthProvider.so \
libcmpiCppImpl.so \
libpegCLIClientLib.so \
libpegauthentication.so \
libpegclient.so \
libpegcliutils.so \
libpegcommon.so \
libpegcompiler.so \
libpegconfig.so \
libpegcql.so \
libpegexportclient.so \
libpegexportserver.so \
libpeggetoopt.so \
libpeghandlerservice.so \
libpegindicationservice.so \
libpeglistener.so \
libpegpmservice.so \
libpegprm.so \
libpegprovider.so \
libpegprovidermanager.so \
libpegquerycommon.so \
libpegqueryexpression.so \
libpegrepository.so \
libpegserver.so \
libpegservice.so \
libpegslp.so \
libpegslp_client.so \
libpeguser.so \
libpegwql.so \
libsnmpIndicationHandler.so \
libComputerSystemProvider.so \
libOSProvider.so \
libProcessProvider.so \
libProcessorProviderModule.so \
libSLPProvider.so \
libSimpleDisplayConsumer.so \
libpegdynlistener.so \
libpegmanagedclient.so "
mkdir -p -m 755 ${LIBDIR}
for i in ${PEG_LIBLIST}
do
_install D ${BLDDIR}/lib/${i} ${LIBDIR}/${i} 755
done
# sbin
PEG_SBINLIST="\
cimauth \
cimconfig \
cimcrl \
cimprovagt \
cimreparchive \
cimserver \
cimtrust \
cimuser \
repupgrade"
mkdir -p -m 755 ${SBINDIR}
for i in ${PEG_SBINLIST}
do
_install E ${BLDDIR}/bin/${i} ${SBINDIR}/${i} 750
done
# bin
PEG_BINLIST="\
cimcli \
cimmof \
cimmofl \
cimprovider \
cimsub \
osinfo \
wbemexec"
mkdir -p -m 755 ${BINDIR}
for i in ${PEG_BINLIST}
do
_install E ${BLDDIR}/bin/${i} ${BINDIR}/${i} 755
done
# man8
PEG_MAN8LIST="\
cimauth.8 \
cimcrl.8 \
cimserver.8 \
cimuser.8 \
cimconfig.8 \
cimreparchive.8 \
cimtrust.8"
MANSCRIPT=sunman-stability
mkdir -p -m 755 ${MAN8DIR}
for i in ${PEG_MAN8LIST}
do
_install M ${PEGDIR}/rpm/manLinux/man8.Z/${i} ${MAN8DIR}/${i} 444
done
# man1
PEG_MAN1LIST="\
cimmof.1 \
cimprovider.1 \
osinfo.1 \
cimmofl.1 \
cimsub.1 \
wbemexec.1"
mkdir -p -m 755 ${MAN1DIR}
for i in ${PEG_MAN1LIST}
do
_install M ${PEGDIR}/rpm/manLinux/man1.Z/${i} ${MAN1DIR}/${i} 444
done
# MOF files
PEG_MOFLIST=`cd ${PEGDIR}; find Schemas -name "*.mof" -print`
PEG_MOFDIRS=`cd ${PEGDIR}; find Schemas -type d -print`
for i in ${PEG_MOFDIRS}
do
mkdir -p -m 755 ${ETCPEGDIR}/${i}
done
for i in ${PEG_MOFLIST}
do
_install N ${PEGDIR}/${i} ${ETCPEGDIR}/${i} 444
done
# config files
_install N Solaris/genOpenPegasusSSLCerts ${ROOT}/etc/Pegasus/genOpenPegasusSSLCerts 555
mkdir -p -m 755 ${ETCPEGDIR}/ssl
# SMF
mkdir -p -m 755 ${ROOT}/lib/svc/method
mkdir -p -m 755 ${ROOT}/lib/svc/manifest/network
_install S Solaris/svc-cimserver ${ROOT}/lib/svc/method/svc-cimserver 555
_install N Solaris/cimserver.xml ${ROOT}/lib/svc/manifest/network/cimserver.xml 444
# supporting directories
mkdir -p -m 755 ${ROOT}/var/Pegasus
mkdir -p -m 755 ${ROOT}/var/Pegasus/localauth
mkdir -p -m 755 ${ROOT}/var/Pegasus/repository
mkdir -p -m 755 ${ROOT}/var/Pegasus/repository/root
mkdir -p -m 755 ${ROOT}/var/Pegasus/repository/root/classes
mkdir -p -m 755 ${ROOT}/var/Pegasus/repository/root/instances
mkdir -p -m 755 ${ROOT}/var/Pegasus/repository/root/qualifiers
exit 0