PROCEDURE install_ppm (
  status)


VAR
  ignore_status: status
  local_status: status

  name_dev_catalog: name = dev
  name_tmp_catalog: name = tmp
  name_usr_catalog: name = usr
  name_null_file: name = null

  c_catalog: file
  c_dev_catalog: file
  c_tmp_catalog: file
  c_usr_catalog: file
  c_usr_tmp_catalog: file
  c_dev_null_file: file

  rav$installation_defaults: (XREF) rat$installation_defaults
  rav$installation_environment: (XREF) rat$installation_environment
  rav$subproduct_information: (XREF) rat$subproduct_information

VAREND


  IF rav$subproduct_information.subproduct_type = release THEN
    c_catalog = rav$subproduct_information.actual_installation_path

    c_dev_catalog = c_catalog//name_dev_catalog
    c_tmp_catalog = c_catalog//name_tmp_catalog
    c_usr_catalog = c_catalog//name_usr_catalog
    c_usr_tmp_catalog = c_usr_catalog//name_tmp_catalog
    c_dev_null_file = c_dev_catalog//name_null_file

    $system.create_catalog c_catalog status=ignore_status
    $system.create_catalog c_dev_catalog status=ignore_status
    $system.create_catalog c_tmp_catalog status=ignore_status
    $system.create_catalog c_usr_catalog status=ignore_status
    $system.create_catalog c_usr_tmp_catalog status=ignore_status

    $system.create_catalog_permit c_tmp_catalog g=public ..
      am=(all, cycle, control) sm=none status=ignore_status
    $system.create_catalog_permit c_usr_tmp_catalog g=public ..
      am=(all, cycle, control) sm=none status=ignore_status

    COLLECT_TEXT c_dev_null_file until='END_COLLECT' status=ignore_status
END_COLLECT

    $system.change_file_attributes c_dev_null_file fc=unknown fs=unknown ..
      ra=(11 11 11) status=ignore_status
    $system.create_file_permit c_dev_null_file g=public am=none sm=none status=ignore_status
  IFEND

  EXIT procedure WITH local_status WHEN NOT local_status.normal

PROCEND install_ppm

