home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / netdor3.zip / VNDINST / FRNTENDS / IBMC2 / PACKRUN.CMD < prev   
OS/2 REXX Batch file  |  1996-04-04  |  7KB  |  227 lines

  1. /******************************************************************
  2.  
  3. Description:    IBM C/2 Compiler Run Exec.
  4.  
  5. Details:        This exec sets up the appropriate IBM C/2 envir.
  6.                 It reads defaults from OS2.INI regarding what
  7.                 components should be included when setting up
  8.                 the environment.
  9.  
  10.                 This exec also sets up the appropriate OS/2
  11.                 Programmer's Toolkit environment.
  12.  
  13. Dependencies:
  14.    Externals:   RXUTILS.DLL  - Part of VENDOR package.
  15.                 PMBROWSE.EXE - Part of VENDOR package.
  16.    Drive(s):    See install exec for this package.
  17.    Directories: See install exec for this package.
  18.    Window Type: FS/Win
  19.    App Title:   None
  20.  
  21. Last Updated:   6/17/92
  22. ******************************************************************/
  23.  trace 'o'
  24.  '@echo off'
  25.  
  26. /* Add external funcs */
  27.  call RxFuncAdd 'RXOS2INI',    'RXUTILS', 'RXOS2INI'
  28.  
  29. /* Check the OS2.INI for toolkit information */
  30.  File = 'USER'
  31.  App = 'IBMC2'
  32.  Toolkit = 'Toolkit'
  33.  TCPIP = 'TCPIP'
  34.  TCPIPR3 = 'TCPIPR3'
  35.  TCPIPR0 = 'TCPIPR0'
  36.  SQLLIB  = 'SQLLIB'
  37.  OS2='OS2ENVIRONMENT'
  38.  
  39. /* Query OS2.INI */
  40.   CurTKver  =RxOs2Ini(File,  App, Toolkit)
  41.   LinkTCP   =RxOs2Ini(File,  App, TCPIP)
  42.   LinkTCPR3 =RxOs2Ini(File,  App, TCPIPR3)
  43.   LinkTCPR0 =RxOs2Ini(File,  App, TCPIPR0)
  44.   LinkSQL   =RxOs2Ini(File,  App, SQLLIB )
  45.  
  46. /* Information not found so call the Ini program */
  47.  if CurTKver = '$RXERROR' | LinkTCP = 'Y' then do
  48.    call AskUser
  49.    CurTKver=RxOs2Ini(File, App, Toolkit)
  50.    LinkTCPR3 =RxOs2Ini(File,  App, TCPIPR3)
  51.    LinkTCPR0 =RxOs2Ini(File,  App, TCPIPR0)
  52.    LinkSQL=RxOs2Ini(File,  App, SQLLIB )
  53.  end
  54.  
  55. /* Set up the PATH and LIB PATH strings */
  56.  parse source . . exec
  57.  Cdr=left(exec, lastpos('\', exec))
  58.  Netdr=Cdr'NETSRC\'
  59.  TKdr=Cdr''CurTKver'\'
  60.  
  61. /* Test if SQLLIB libraries should be included in LIB PATH */
  62.  if left(LinkSQL,1) = 'Y' then
  63.    SQLdr=Cdr'SQLLIB;'
  64.  else
  65.    SQLdr=''
  66.  
  67. /* Test if TCPIP r3 libraries should be included in LIB PATH */
  68.  if left(LinkTCPR3,1) = 'Y' then do
  69.    COREdr=value('CORE.DRIVE',,OS2)     /* Usually W:\ */
  70.    TCPdr=COREdr'TCPIP\LIB;'
  71.  end
  72.  else
  73.    TCPdr=''
  74.  
  75. /* Test if TCPIP r0 libraries should be included in LIB PATH */
  76.  if left(LinkTCPR0,1) = 'Y' then do
  77.    COREdr=value('CORE.DRIVE',,OS2)     /* Usually W:\ */
  78.    TCPdr=COREdr'TCPIPR0\LIB;'
  79.  end
  80.  else
  81.    TCPdr=''
  82.  
  83. /* Setup C drive for IBMC2\ path statements */
  84.  Cdr=Cdr'IBMC2\'
  85.  
  86. /* Test what version of the Programming Reference is required */
  87.  if CurTKver = 'TOOLKT12' then
  88.    progref = 'PRINTRO.INF+PRCP.INF+PRGPI.INF+PRWIN.INF+PRDATA.INF'
  89.  else if CurTKver = 'TOOLKT13' then
  90.    progref = 'PRINTRO.INF+PRCP.INF+PRGPIFN.INF+PRWINFN.INF+PRDATA.INF'
  91.  else       /* TOOLKT11 has no online progref */
  92.    progref = ''
  93.  
  94.  say; say 'Setting up IBM C/2 environment for this session...'
  95.  say '  Setting up OS/2 Programming Tools and Information Toolkit Ver ',
  96.  right(CurTKver,2)/10'...'
  97.  if LinkTCPR0='Y' then say '  Setting up TCP/IP Ring 0 Library...'
  98.  if LinkTCPR3='Y' then say '  Setting up TCP/IP Ring 3 Library...'
  99.  if LinkSQL='Y' then say '  Setting up SQL Library and Headers...'
  100.  
  101.  'call pmbrowse copyrite.ibm'    /* Display copyright notice */
  102.                                  /* Required for legal reasons */
  103.  
  104.  oldpath = value('PATH',,OS2)
  105.  newpath = Cdr'BINP;'Cdr'BIN;'TKdr'BIN;'oldpath
  106.  oldhelp = value('HELP',,OS2)
  107.  newhelp = TKdr'DM;'TKdr'DTL;'TKdr'BIN;'oldhelp
  108.  oldbook = value('BOOKSHELF',,OS2)
  109.  newbook = TKdr'PROGREF;'oldbook
  110.  oldlib  = value('LIB',,OS2)
  111.  lib     = Cdr'LIB;'TKdr'LIB;'Netdr'LIB;'TCPdr||SQLdr'C:\OS2;'oldlib
  112.  OldINC = value('INCLUDE',,OS2)
  113.  inc     = Cdr'INCLUDE;'TKdr'C\INCLUDE;'Netdr'H;'TCPdr||SQLdr||OldInc
  114.  ipf     = TkDr'IPFC'
  115.  
  116.  call value 'BOOKSHELF', newbook, OS2
  117.  call value 'HELP',      newhelp, OS2
  118.  call value 'PATH',      newpath, OS2
  119.  call value 'LIB',       lib,     OS2
  120.  call value 'INCLUDE',   inc,     OS2
  121.  call value 'PROGREF',   progref, OS2
  122.  call value 'IPFC',      ipf,     OS2
  123.  call value 'C.DRIVE',   left(Cdr,2), OS2
  124.  if value('TMP',,OS2)='' then do
  125.    'if not exist c:\temp\nul md c:\temp>nul'
  126.    call value 'TMP',  'C:\TEMP', OS2
  127.  end
  128.  say 'Done'; say
  129.  if curTKver \= 'TOOLKT11' then
  130.    say 'To view the on-line OS/2 Programming Ref, execute:  VIEW PROGREF'
  131.  
  132.  exit 0
  133.  
  134.  
  135. AskUser:
  136.  call RxFuncAdd 'RXOS2INI',    'RXUTILS', 'RXOS2INI'
  137.  
  138.   File = 'USER'
  139.   App = 'IBMC2'
  140.   Toolkit = 'Toolkit'
  141.   TCPIP   = 'TCPIP'
  142.   TCPIPR3 = 'TCPIPR3'
  143.   TCPIPR0 = 'TCPIPR0'
  144.   SQLLIB  = 'SQLLIB'
  145.  
  146.   CurTKver  =RxOs2Ini(File,  App, Toolkit)
  147.   LinkTCP   =RxOs2Ini(File,  App, TCPIP)
  148.   LinkTCPR3 =RxOs2Ini(File,  App, TCPIPR3)
  149.   LinkTCPR0 =RxOs2Ini(File,  App, TCPIPR0)
  150.   LinkSQL   =RxOs2Ini(File,  App, SQLLIB )
  151.   if LinkTCP='Y' then
  152.      call RxOs2Ini File,  App, TCPIP, '$RXDEL'
  153.  
  154.   if CurTKver <> '$RXERROR' then do
  155.     Ver=right(CurTKver,1)
  156.     say 'Current OS/2 Programming Toolkit: 1.'Ver
  157.     if left(LinkTCP,1) = 'Y' then
  158.        say 'Link to TCPIP Libraries: Yes'
  159.     else if left(LinkTCPR3,1) = 'Y' then
  160.        say 'Link to TCPIP Ring 3 Libraries: Yes'
  161.     else if left(LinkTCPR0,1) = 'Y' then
  162.        say 'Link to TCPIP Ring 0 Libraries: Yes'
  163.     else
  164.        say 'Link to TCPIP Libraries: No'
  165.     if left(LinkSQL,1) = 'Y' then
  166.        say 'Link with SQL support: Yes'
  167.     else
  168.        say 'Link with SQL support: No'
  169.     say;
  170.     say 'You can choose to change the current settings or accept them.'
  171.     say;
  172.   end
  173.  
  174.   say 'IBM C/2 can link your applications with any of the following'
  175.   say 'Programming Toolkits:'
  176.   say '     1. IBM OS/2 Programming Tools and Information Ver 1.1'
  177.   say '     2. IBM OS/2 Programming Tools and Information Ver 1.2'
  178.   say '     3. IBM OS/2 Programming Tools and Information Ver 1.3'
  179.   say;
  180.   say 'Choose which toolkit you want to link your applications with:'
  181.   do until WhichTK='1' | WhichTK='2' | WhichTK='3'
  182.     WhichTK = left(linein(STDIN),1)
  183.   end
  184.  
  185.   LinkTCPR0 = 'N'
  186.   LinkTCPR3 = 'N'
  187.   say
  188.   say 'If you are writing TCP/IP applications you will want to link with'
  189.   say 'TCP Libraries.'
  190.   say 'Do you want to include the TCPIP libraries in the LIB path? (Y/N)'
  191.   do until LinkTCP='Y' | LinkTCP='N'
  192.     LinkTCP = translate(left(linein(STDIN),1))
  193.   end
  194.   if LinkTCP = 'Y' then do
  195.     say
  196.     say 'Would you like to link TCP/IP Ring 0 or Ring 3 libraries:'
  197.     say '   1. TCPIP Ring 0 Libraries'
  198.     say '   2. TCPIP Ring 3 Libraries'
  199.     say 'Choose which library you want to link your applications with:'
  200.     do until WhichLib='1' | WhichLib='2'
  201.       WhichLib = left(linein(STDIN),1)
  202.     end
  203.     if WhichLib = '1' then
  204.       LinkTCPR0 = 'Y'
  205.     else
  206.       LinkTCPR3 = 'Y'
  207.   end
  208.  
  209.   say
  210.   say'If you are writing Query Manager applications you will want to'
  211.   say 'link with the SQL Libraries and header files.'
  212.   say 'Do you want to include the SQL libraries and headers? (Y/N)'
  213.   do until LinkSQL='Y' | LinkSQL='N'
  214.     LinkSQL = translate(left(linein(STDIN),1))
  215.   end
  216.  
  217.   CurTKver = 'TOOLKT1'WhichTK
  218.  
  219.   call RxOs2Ini File, App, TCPIPR0, LinkTCPR0
  220.   call RxOs2Ini File, App, TCPIPR3, LinkTCPR3
  221.   call RxOs2Ini File, App, SQLLIB,  LinkSQL
  222.   call RxOs2Ini File, App, Toolkit, CurTKver
  223.  
  224.   say
  225.   say 'IBMC2 Toolkit version, TCPIP and SQL link access saved.'
  226. return
  227.