# File:         psf-1.2.10-11.11
#
# Purpose:      OpenAFS Product Specification File (PSF) for swpackage
#
# Copyright:    Copyright (c) 2003 International Business Machines Corporation and others. All Rights Reserved.
#
# Header:       $Header$
#
# Description:  This PSF contains a valid product definition which includes
#               all attributes for OpenAFS installation via software Distributor
#		This psf is to be used on openafs compiled as 32bit binaries.
#
#
# Not all control scripts are required for installation of a product/fileset
# 
# Below is the list of control scripts that can be used on either
# Products or filesets
      # Control script definition(s):
      #
      # Control scripts are optional.  If defined, then specify the
      # path to the script file.
      #
      # NOTE: control scripts can be defined for products too.

      #checkinstall path         # Install check script
      #preinstall   path         # Install pre-load script
      #postinstall  path         # Install post-load script
      #configure    path         # Configure for use script
      #unconfigure  path         # Configure undo script
      #verify       path         # Verify integrity script
      #checkremove  path         # Remove check script
      #preremove    path         # Remove pre-remove script
      #postremove   path         # Remove post-remove script
      #control_file path         # Addition (sub)script or control data


 vendor

   tag       "OpenSource"		# The identifier for the vendor.
   title      "OpenSource Software"	# The name of the vendor.
#   uuid       ""			# The NetLs UUID for the vendor.
   description  < data/vendor.description # A multi-line description of the vendor.

 end #Vendor

  # Product definition(s):
  #
  # All product attributes are optional, except for the tag and the
  # filesets which must be contained within it.

  product

    tag         "OPENAFS"		# The identifier for the product.
    title       "Open Source Andrews File System" # The name of the product.
    revision    "A.1.2.10"	# The revision (release) number of the product.

    #number	"the_number"       # The order/part number for the product.
    category    "OpenSource"" # The type of software (identifier).
    #category_title "the category title" # The type of software (string).

    description < data/product.description  # A file containing a 
				#multi-line description of the product.

    copyright   "(c)Copyright 2002 International Business Machines Corporation and others. All Rights Reserved."

    readme      < data/product.README # A multi-page README for the product.


    architecture HP-UX_B.11.11_32/64 # A concise summary of hardware/OS'es 
				     #supported.

    machine_type *:32*   	# Machines the product supports (uname -m).
    os_name      HP-UX   	# OS'es the product supports (uname -s).
    os_release   ?.11.11	# OS releases the product supports (uname -r).
    os_version   *	 	# OS versions the product supports (uname -v).

    directory   /usr/afs # The root directory for the product
    is_locatable false   # If defined then users can install the product
                         # into any directory they specify.

      # Control script definition(s):
      #
      # Control scripts are optional.  If defined, then specify the
      # path to the script file.
      #
      # NOTE: control scripts can be defined for products or filesets

        configure  scripts/openafs.configure
        unconfigure  scripts/openafs.unconfigure

    # Subproduct definition(s):
    #
    # Subproducts are optional.  If defined, then they group/partition
    # the product's filesets into logical sets.  If defined, then the
    # tag and contents are required.
    #
    # The Runtime subproduct contains anything that is pertinant to
    # either the server or client products
    #
    #
    subproduct
      tag	Runtime
      title     "Rutime Requirements for OpenAFS Client and Server"
      contents  OPENAFS-RUN
    end # Runtime subproduct
      fileset
        tag     OPENAFS-RUN
        title   "OpenAFS Runtime"
        revision   A.1.2.10
        architecture HP-UX_B.11.11_32/64
        machine_type *:32*   	# Machines the product supports (uname -m).
        os_name      HP-UX   	# OS'es the product supports (uname -s).
        os_release   ?.11.11	# OS releases the product supports (uname -r).
        os_version   *	 	# OS versions the product supports (uname -v).
        ancestor OPENAFS.OPENAFS-RUN,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10

        description < data/openafs-run.description

        is_kernel false
        is_reboot false

        # Dependency definition(s):
        #

        # prerequisite
        # corequisite


        #configure  scripts/openafs-run.configure
        #unconfigure  scripts/openafs-run.unconfigure
        #preremove    scripts/openafs-run.preremove
        #postremove   scripts/openafs-run.postremove
        
      # File definition(s):
      #
      # To define the files contained in a fileset, you can:
      #
      #         1) specify default permissions,
      #         2) specify files explicitly,
      #         3) specify files implicitly,
      #         4) map source pathnames to target pathnames.

        file_permissions -m 755 -o root -g sys
        directory    /usr/afs

        file_permissions -u 222 -o root -g sys
        directory    /usr/vice
        directory    /usr/vice/etc
        directory    /usr/vice/etc/config

        file_permissions -m 755 -o root -g sys
        directory    ../../../hp_ux110/dest/bin = /usr/afs/bin
        file_permissions -u 222 -o root -g sys

          file  afsmonitor
          file  bos
          file  compile_et
          file  dlog
          file  dpass
          file  fs
          file  install
          file  klog
          file  klog.krb
          file  knfs
          file  kpasswd
          file  livesys
          file  rxgen
          file  pagsh
          file  pagsh.krb
          file  pts
          file  scout
          file  sys
          file  tokens
          file  tokens.krb
          file  translate_et
          file  udebug
          file  unlog
          file  xstat_cm_test
          file  xstat_fs_test

        file_permissions -m 755 -o root -g sys
        directory    ../../../hp_ux110/dest/etc = /usr/afs/bin
        file_permissions -u 222 -o root -g sys
          file	backup
          file  butc
          file  copyauth
	  file	fms
	  file	fstrace
          file	kas
	  file	read_tape
	  file	restorevol
	  file	rxdebug
	  file	uss
          file	vos

        file_permissions -u 222 -o bin -g bin
        directory    ../../../hp_ux110/dest/root.client/usr/vice/etc/dkload = /usr/newconfig/sbin/init.d
	file	afs.rc	afs

      end # fileset
#
# The DocsByLang subproduct contains documentation pages by language

    subproduct
      tag       DocsByLang
      title     "Manuals by Language"
      contents  OPENAFS-ENG-DOC
    end # Manuals subproduct
      fileset
        tag     OPENAFS-ENG-DOC
        title   "OpenAFS English Documentation"
        revision   A.1.2.10
        machine_type *:32*   	# Machines the product supports (uname -m).
        os_name      HP-UX   	# OS'es the product supports (uname -s).
        os_release   ?.11.11	# OS releases the product supports (uname -r).
        os_version   *	 	# OS versions the product supports (uname -v).
        architecture HP-UX_B.11.11_32/64
        ancestor OPENAFS.OPENAFS-ENG-DOC,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10

        description < data/openafs-run.description

        is_kernel false
        is_reboot false

        # Dependency definition(s):
        #

        # prerequisite
        # corequisite


        #unconfigure  scripts/openafs-eng-man.unconfigure
        #verify       scripts/openafs-eng-man.verify
        #checkremove  scripts/openafs-eng-man.checkremove
        #preremove    scripts/openafs-eng-man.preremove
        #postremove   scripts/openafs-eng-man.postremove
        #control_file scripts/openafs-eng-man.subscript


      file_permissions -u 222 -o root -g sys
      directory    ../../../doc = /usr/afs/doc
	file	*

      end # fileset

    fileset
      tag     OPENAFS-SRV
      title   "OpenAFS Server"
      machine_type *:32*   	# Machines the product supports (uname -m).
      os_name      HP-UX   	# OS'es the product supports (uname -s).
      os_release   ?.11.11	# OS releases the product supports (uname -r).
      os_version   *	 	# OS versions the product supports (uname -v).
      revision   A.1.2.10
      architecture HP-UX_B.11.11_32/64
      ancestor OPENAFS.OPENAFS-SRV,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10

      description < data/openafs-srv.description

      is_kernel false
      is_reboot false

      # Dependency definition(s):
      #

      # Require that the Runtime product be in place before installing 
      # Server product. 

      prerequisite OPENAFS.OPENAFS-RUN
      prerequisite OPENAFS.OPENAFS-KRN32 | OPENAFS.OPENAFS-KRN64
      # corequisite


      configure    scripts/openafs-srv.configure
      unconfigure  scripts/openafs-srv.unconfigure
      preremove  scripts/openafs-srv.preremove

      #verify       scripts/openafs-srv.verify
      #checkremove  scripts/openafs-srv.checkremove
      #preremove    scripts/openafs-srv.preremove
      #postremove   scripts/openafs-srv.postremove
      #control_file scripts/openafs-srv.subscript

      # File definition(s):
      #

      file_permissions -u 222 -o bin -g bin
      directory    /sbin/fs/afs

      file_permissions -u 222 -o bin -g bin
      directory    ../../../hp_ux110/dest/root.server/etc = /sbin/fs/afs
	file	bcheckrc
	file	mount
	file	umount
	file	vfsck 	fsck

      file_permissions -m 755 -o root -g sys
      directory    ../../../hp_ux110/dest/root.server/usr/afs/bin = /usr/afs/bin
      file_permissions -u 222 -o root -g sys
        file	bosserver
        file	buserver
        file	fileserver
        file	kaserver
        file	kpwvalid
        file	pt_util
        file	ptserver
        file	salvager
        file	upclient
        file	upserver
        file	vlserver
        file	volinfo
        file	volserver

      file_permissions -m 755 -o root -g sys
      directory    ../../../hp_ux110/dest/etc = /usr/afs/bin
      file_permissions -u 222 -o root -g sys
        file    kadb_check
        file    kdb
        file    kseal
        file    rmtsysd
        file    vsys
	file	prdb_check
	file	vldb_check
	file	vldb_convert

    end # fileset

    fileset
      tag     OPENAFS-CLNT
      title   "OpenAFS Client"
      revision   A.1.2.10
      machine_type *:32*   	# Machines the product supports (uname -m).
      os_name      HP-UX   	# OS'es the product supports (uname -s).
      os_release   ?.11.11	# OS releases the product supports (uname -r).
      os_version   *	 	# OS versions the product supports (uname -v).
      architecture HP-UX_B.11.11_32/64
      ancestor OPENAFS.OPENAFS-CLNT,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10

      description < data/openafs-clnt.description

      is_kernel false
      is_reboot false

      # Dependency definition(s):
      #
      # If the client is installed, you must install the kernel driver
      #
      # This prereq means that either kernel fileset must be installed
      # the KRN32 for 32 bitOS or KRN64 for 64BIT OS

      prerequisite OPENAFS.OPENAFS-RUN
      prerequisite OPENAFS.OPENAFS-KRN32 | OPENAFS.OPENAFS-KRN64
      # corequisite

      checkinstall	scripts/openafs-clnt.checkinstall
      preinstall	scripts/openafs-clnt.preinstall
      configure		scripts/openafs-clnt.configure
      unconfigure	scripts/openafs-clnt.unconfigure
      preremove		scripts/openafs-clnt.preremove

      # Have SD create the /usr/vice/cache directories
      #
      file_permissions -u 222 -o root -g sys
      directory    /usr/vice/cache

      file_permissions -u 222 -o bin -g bin
      directory    /usr/newconfig/vice
      directory    /usr/newconfig/vice/etc

      file_permissions -u 222 -o root -g sys
      directory    files/afs = /afs

      file_permissions -u 222 -o bin -g bin
      directory    files/usr/vice/etc = /usr/newconfig/usr/vice/etc
	file	CellServDB
	file	SuidCells
	file	cacheinfo

      file_permissions -u 222 -o root -g sys
      directory    ../../../hp_ux110/dest/root.client/usr/vice/etc = /usr/vice/etc
	file	afsd

      directory    ../../../hp_ux110/dest/lib = /usr/lib/security
      file_permissions -u 222 -o bin -g bin
        file   pam_afs.so.1
        file   pam_afs.krb.so.1

	# Startup links will be configured in the configure script

      # File definition(s):
      #
      # To define the files contained in a fileset, you can:
      #
      #         1) specify default permissions,
      #         2) specify files explicitly,
      #         3) specify files implicitly,
      #         4) map source pathnames to target pathnames.

        file_permissions -u 222 -o bin -g bin
        directory    ../../../hp_ux110/dest/bin = /usr/afs/bin
        file  up
        file  cmdebug

    end # fileset

    #
    # Put the afs kernel driver filesets into a subproduct
    # in order that the prerequisite for the client filelset
    # will automatically select the correct kernel fileset
    # based on os-bitness
    subproduct
      tag	Kernel
      title	"OpenAFS Kernel Drivers"
      contents	OPENAFS-KRN32 OPENAFS-KRN64
    end
      fileset
        tag     OPENAFS-KRN32
        title   "OpenAFS 32bit Kernel Drivers"
        revision   A.1.2.10
        machine_type *:32*   	# Machines the product supports (uname -m).
        os_name      HP-UX   	# OS'es the product supports (uname -s).
        os_release   ?.11.11	# OS releases the product supports (uname -r).
        os_version   *	 	# OS versions the product supports (uname -v).
        architecture HP-UX_B.11.11_32
        ancestor OPENAFS.OPENAFS-KRN,fa=HP-UX_B.11.11_32,fr=<A.1.2.10

        description < data/openafs-krn.description

        is_kernel true
        is_reboot true

        # Dependency definition(s):
        #

        # prerequisite
        # corequisite
        exrequisite	OPENAFS.OPENAFS-KRN64

        checkremove  scripts/openafs-krn.checkremove
        configure  scripts/openafs-krn.configure
        postinstall   scripts/openafs-krn.postinstall
        unconfigure  scripts/openafs-krn.unconfigure
        verify       scripts/openafs-krn.verify

        # File definition(s):
        #

        file_permissions -u 222 -o bin -g bin
        directory    ../../../hp_ux110/dest/root.client/bin = /usr/conf/lib
          file	libafs.nonfs.a	libafs.a

        file_permissions -u 222 -o bin -g bin
        directory    ../../../hp_ux110/dest/root.client/usr/vice/etc = /usr/conf/master.d
          file   afs.driver	afs

      end # fileset
      fileset
        tag     OPENAFS-KRN64
        title   "OpenAFS 64 bit Kernel Drivers"
        revision   A.1.2.10
        os_name      HP-UX   	# OS'es the product supports (uname -s).
        os_release   ?.11.11	# OS releases the product supports (uname -r).
        os_version   *	 	# OS versions the product supports (uname -v).
        machine_type *:64*
        architecture HP-UX_B.11.11_64
        ancestor OPENAFS.OPENAFS-KRN,fa=HP-UX_B.11.11_64,fr=<A.1.2.10

        description < data/openafs-krn.description

        is_kernel true
        is_reboot true

        # Dependency definition(s):
        #

        # prerequisite
        # corequisite
        exrequisite	OPENAFS.OPENAFS-KRN32


        checkremove  scripts/openafs-krn.checkremove
        configure  scripts/openafs-krn.configure
        postinstall   scripts/openafs-krn.postinstall
        unconfigure  scripts/openafs-krn.unconfigure
        verify       scripts/openafs-krn.verify

        # File definition(s):
        #

        file_permissions -u 222 -o bin -g bin
        directory    ../../../hp_ux110/dest/root.client/bin = /usr/conf/lib
          file   libafs64.nonfs.a   libafs.a

      end # fileset
    # End of Kernel subproduct
    # 
    # We can call this whatever you like, the name falls in line
    # with other SD packaged media
    #
    fileset
      tag     OPENAFS-DEV
      title   "OpenAFS Developers Kit"
      revision   A.1.2.10
      architecture HP-UX_B.11.11_64
      ancestor OPENAFS.OPENAFS-DEV,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10
      machine_type *:32*

      description < data/openafs-krn.description

      is_kernel false
      is_reboot false

      # Dependency definition(s):
      #

      # prerequisite
      # corequisite


      #unconfigure  scripts/openafs-dev.unconfigure
      #verify       scripts/openafs-dev.verify
      #checkremove  scripts/openafs-dev.checkremove
      #preremove    scripts/openafs-dev.preremove
      #postremove   scripts/openafs-dev.postremove
      #ucontrol_file scripts/openafs-dev.subscript

      # File definition(s):
      #

#      file_permissions -u 222 -o bin -g bin
#      directory    ../../../hp_ux110/dest/include = /usr/afs/include
#        file   *

      file_permissions -u 222 -o bin -g bin
      directory    ../../../hp_ux110/dest/root.perf/include/afs = /usr/afs/include/afs
#        file   afs_stats.h	# Included above
#        file   afs_sysnames.h	# Included above
        file   afs_usrops.h
#        file   param.h		# Different param.h than above
#        file   stds.h
        file   sysincludes.h

      end # fileset

    # The ManualsByLang subproduct contains manual pages by language

    subproduct
      tag       ManualsByLang
      title     "Manuals by Language"
      contents  OPENAFS-ENG-MAN
    end # Manuals subproduct
      fileset
        tag     OPENAFS-ENG-MAN
        title   "OpenAFS English Manual Pages"
        revision   A.1.2.10
        architecture HP-UX_B.11.11_32/64
        ancestor OPENAFS.OPENAFS-ENG-MAN,fa=HP-UX_B.11.11_32/64,fr=<A.1.2.10

        # description < data/openafs-run.description

        is_kernel false
        is_reboot false

        # Dependency definition(s):
        #

        # prerequisite
        # corequisite


        configure  scripts/openafs-eng-man.configure
        unconfigure  scripts/openafs-eng-man.unconfigure
        #verify       scripts/openafs-eng-man.verify
        #checkremove  scripts/openafs-eng-man.checkremove
        #preremove    scripts/openafs-eng-man.preremove
        #postremove   scripts/openafs-eng-man.postremove
        #control_file scripts/openafs-eng-man.subscript

      # File definition(s):
      #

      file_permissions -u 222 -o bin -g bin
      directory   /usr/afs/man
      directory   /usr/afs/man/man1
      directory    ../../../src/man = /usr/afs/man/man1
        file   *

      end # fileset
  end # product
