carbidecpp20devenv/plugins/org.apache.ant_1.7.0.v200803061910/bin/runrc.cmd
author cawthron
Wed, 18 Mar 2009 17:21:00 -0500
changeset 1 82d1d1de1a01
permissions -rw-r--r--
import Carbide.c++
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     1
/* 
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     2
    Copyright 2003-2004 The Apache Software Foundation
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     3
  
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     4
    Licensed under the Apache License, Version 2.0 (the "License");
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     5
    you may not use this file except in compliance with the License.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     6
    You may obtain a copy of the License at
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     7
  
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     8
        http://www.apache.org/licenses/LICENSE-2.0
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
     9
  
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    10
    Unless required by applicable law or agreed to in writing, software
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    11
    distributed under the License is distributed on an "AS IS" BASIS,
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    12
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    13
    See the License for the specific language governing permissions and
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    14
    limitations under the License.
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    15
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    16
    Run RC file, name is in the first arg, second arg is either PATH
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    17
    ENV  or -r or nothing 
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    18
*/
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    19
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    20
parse arg name path rest
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    21
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    22
if name = '' then do
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    23
  say 'RC file name is missing'
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    24
  exit 1
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    25
end
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    26
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    27
if rest \= '' then do
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    28
  say 'Too many parameters'
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    29
  exit 1
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    30
end
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    31
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    32
call runit name path
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    33
exit 0
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    34
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    35
runit: procedure
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    36
parse arg name path dir
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    37
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    38
if path \= '' & path \= '-r' then do
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    39
  dir = value(translate(path),,'OS2ENVIRONMENT')
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    40
  if dir = '' then return
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    41
  dir = translate(dir, '\', '/') /* change UNIX-like path to OS/2 */
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    42
end
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    43
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    44
if dir = '' then dir = directory()
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    45
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    46
if path = '-r' then do /* recursive call */
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    47
  subdir = filespec('path', dir)
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    48
  if subdir \= '\' then do
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    49
    subdir = left(subdir, length(subdir)-1)
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    50
    call runit name path filespec('drive', dir) || subdir
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    51
  end
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    52
end
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    53
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    54
/* Look for the file and run it */
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    55
if right(dir, 1) \= '\' then dir = dir || '\'
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    56
rcfile = stream(dir || name, 'c', 'query exists')
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    57
if rcfile \= '' then interpret 'call "' || rcfile || '"'
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    58
82d1d1de1a01 import Carbide.c++
cawthron
parents:
diff changeset
    59
return