@echo off
REM ############################################################################
REM #  Copyright (c) 2002-2009, Oracle. All rights reserved.
REM #  Shell Script Wrapper for perl
REM #
REM #  $Id: rda.cmd,v 1.12 2009/05/08 17:13:55 mschenke Exp $
REM #  ARCS: $Header: /u02/webapps/workbench/cvs/RDA_4/src/scripting/bin/rda.cmd,v 1.12 2009/05/08 17:13:55 mschenke Exp $
REM ############################################################################

setlocal

if not "%RDA_CWD%"=="" goto CHDIR
FOR %%D IN ("%CD%") DO set RDA_CWD=%%~sD
:CHDIR
cd /d %~dps0.

set PERL_EXE=perl.exe

if not "%RDA_NO_NATIVE%"=="" goto CHKAPPS
FOR %%I IN (perl.exe) DO set PERL_DIR=%%~dp$PATH:I
if "%PERL_DIR%"=="" goto CHKAPPS
set PERL5OLD=%PERL5LIB%
set PERL5LIB=.
"%PERL_DIR%perl" -e "die 'too old' if $] < 5.005; use strict" >NUL 2>NUL
if NOT ERRORLEVEL 1 goto EXEC
set PERL5LIB=%PERL5OLD%

:CHKAPPS
if "%ADPERLPRG%"=="" goto CHKHOME
"%ADPERLPRG%" -e "die 'too old' if $] < 5.005; use strict" >NUL 2>NUL
if ERRORLEVEL 1 goto CHHOME
set PERL_EXE=%ADPERLPRG%
set PERL5LIB=.;%PERL5LIB%
goto EXEC

:CHKHOME
if not "%ORACLE_HOME%"=="" goto CHKIAS
FOR %%I IN (sqlplus.exe) DO set ORACLE_BIN=%%~dp$PATH:I...
if not "%ORACLE_BIN%"=="..." goto SETHOME
@echo Error: ORACLE_HOME is not set
@echo Please set your ORACLE_HOME.
goto END

:SETHOME
set ORACLE_HOME=%ORACLE_BIN:\bin\...=%

:CHKIAS
set ORA_HOME=%IAS_ORACLE_HOME%
if not "%ORA_HOME%"=="" goto CHKPERL
set ORA_HOME=%ORACLE_HOME%

:CHKPERL
if exist "%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-x86\perl.exe" goto A553
if exist "%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-x64\perl.exe" goto A553l
if exist "%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-IA64\perl.exe" goto A553w
if exist "%ORA_HOME%\perl\5.6.1\bin\MSWin32-x86\perl.exe" goto R561
if exist "%ORA_HOME%\perl\5.6.1\bin\MSWin32-x64\perl.exe" goto R561l
if exist "%ORA_HOME%\perl\5.6.1\bin\MSWin32-IA64\perl.exe" goto R561w
if exist "%ORA_HOME%\perl\5.8.3\bin\MSWin32-x86-multi-thread\perl.exe" goto R583
if exist "%ORA_HOME%\perl\5.8.3\bin\MSWin32-x64-multi-thread\perl.exe" goto R583l
if exist "%ORA_HOME%\perl\5.8.3\bin\MSWin32-IA64-multi-thread\perl.exe" goto R583w
@echo Error: Perl not found in the PATH or in known folder locations.
@echo Although the default RDA engine requires Perl, a compiled version without
@echo Perl requirements is available. Please download the platform-specific RDA
@echo engine from MetaLink and place within the top folder of your RDA
@echo installation.
goto END

:A553
set PATH=%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-x86;%PATH%
set PERL5LIB=%ORA_HOME%\Apache\perl\5.00503\lib\MSWin32-x86;%ORA_HOME%\Apache\perl\5.00503\lib;.
goto EXEC

:A553l
set PATH=%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-x64;%PATH%
set PERL5LIB=%ORA_HOME%\Apache\perl\5.00503\lib\MSWin32-x64;%ORA_HOME%\Apache\perl\5.00503\lib;.
goto EXEC

:A553w
set PATH=%ORA_HOME%\Apache\perl\5.00503\bin\MSWin32-IA64;%PATH%
set PERL5LIB=%ORA_HOME%\Apache\perl\5.00503\lib\MSWin32-IA64;%ORA_HOME%\Apache\perl\5.00503\lib;.
goto EXEC

:R561
set PATH=%ORA_HOME%\perl\5.6.1\bin\MSWin32-x86;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.6.1\lib\MSWin32-x86;%ORA_HOME%\perl\5.6.1\lib;.
goto EXEC

:R561l
set PATH=%ORA_HOME%\perl\5.6.1\bin\MSWin32-x64;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.6.1\lib\MSWin32-x64;%ORA_HOME%\perl\5.6.1\lib;.
goto EXEC

:R561w
set PATH=%ORA_HOME%\perl\5.6.1\bin\MSWin32-IA64;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.6.1\lib\MSWin32-IA64;%ORA_HOME%\perl\5.6.1\lib;.
goto EXEC

:R583
set PATH=%ORA_HOME%\perl\5.8.3\bin\MSWin32-x86-multi-thread;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.8.3\lib\MSWin32-x86-multi-thread;%ORA_HOME%\perl\5.8.3\lib;.
goto EXEC

:R583l
set PATH=%ORA_HOME%\perl\5.8.3\bin\MSWin32-x64-multi-thread;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.8.3\lib\MSWin32-x64-multi-thread;%ORA_HOME%\perl\5.8.3\lib;.
goto EXEC

:R583w
set PATH=%ORA_HOME%\perl\5.8.3\bin\MSWin32-IA64-multi-thread;%PATH%
set PERL5LIB=%ORA_HOME%\perl\5.8.3\lib\MSWin32-IA64-multi-thread;%ORA_HOME%\perl\5.8.3\lib;.
goto EXEC

:EXEC
if not exist %SystemRoot%\SysWOW64 goto NOCMD
if exist %SystemRoot%\Sysnative\cmd.exe goto NOCMD
if not exist %SystemRoot%\system32\cmd.exe goto NOCMD
copy %SystemRoot%\system32\cmd.exe %RDA_CWD% >NUL 2>NUL

:NOCMD
set PAGER=more
set RDA_NO_PAUSE=1

"%PERL_EXE%" rda.pl %*

:END
endlocal

if not "%1" == "" goto EXIT
pause
:EXIT
