#!/usr/bin/perl
#
# $Header: //sapdb/V74/c_01/develop/sys/src/install/perl/packages/pcr/instpcr#1 $
# $DateTime: 2001/10/02 16:51:35 $
# $Change: 9444 $
#
# Desc:


import SAPDB::Install::StdIO;
import SAPDB::Install::System;
import SAPDB::Install::Registry;
import SAPDB::Install::Tools;
import SAPDB::Install::SetUser;


$path{'name'} = 'precompiler 7301 path';
$path{'default'} = getSysProgPath().'/sapdb/indep_data';
$path{'mode'}=0775;
$path{'opt'}='pcr_7301=s';

unless($SAPDB::Install::StartInstall::opt_INSTANCE){ # these option makes no sense while instance upgrade
	$usage= " [-pcr_7301 <precompiler runtime 7301 path>]";
	$usage_desc = "\t-pcr_7301 <precompiler runtime 7301 path>\tinstallation root for pcr 7301\n";
}

@paths = (\%path);
$main_path=\%path;
@opts=();

my $data;
my $prog;

sub preinstall{
      local @ARGV=@_;
      ($data,$prog)=readIndepPath();
	#unless(-d $prog){
	#	print2stderr("no independent program path found\n");
	#	diesoft($SAPDB::Install::Values::diemsg);
	#}
	$prog !~ /\S/ and $prog = $SAPDB::Install::Values::indep_prog_path;
	$prog !~ /\S/ and print2stderr("independent program path not found\n") and diesoft($SAPDB::Install::Values::diemsg);
	$data !~ /\S/ and $data = $SAPDB::Install::Values::indep_data_path;
	$path{'value'}=$prog;
}

sub postinstall{
}

sub registerWin{
        my $path = $progpath{'value'};
        $prog=~s/\//\\/g;
        $ENV{'PATH'}="$prog\\bin;$prog\\pgm;$ENV{'PATH'}";
        my $callstring = "\"$prog\\runtime\\7301\\bin\\irconf\" -i -p \"$prog\\runtime\\7301\"";
        $callstring=~s/\//\\/g;
        callsystem($callstring);
}

sub registerUX{
        callsystem("$prog/runtime/7301/bin/irconf -i -p $prog/runtime/7301");
}


*register =             $^O =~ /^MsWin/i ? \&registerWin :
        \&registerUX;



sub unregisterWin{
	($data,$prog)=readIndepPath();
       $prog=~s/\//\\/g;
       $ENV{'PATH'}="$prog\\bin;$prog\\pgm;$ENV{'PATH'}";
       my $callstring = "\"$prog\\runtime\\7301\\bin\\irconf\" -r -p \"$prog\\runtime\\7301\"";
       $callstring=~s/\//\\/g;
       callsystem($callstring,undef,1);

}

sub unregisterUX{
	($data,$prog)=readIndepPath();
	callsystem("$prog/runtime/7301/bin/irconf -r -p $prog/runtime/7301",undef,1);

}

*unregister =           $^O =~ /^MsWin/i ? \&unregisterWin :
        \&unregisterUX;

sub preuninstall{

}

sub postuninstall{

}

1;
