home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / viscobv7.zip / vac22os2 / ibmcobol / macros / build.lx < prev    next >
Text File  |  1998-02-24  |  2KB  |  77 lines

  1. /* build.lx - This macro provides a simple build function. */
  2. arg cmd parm
  3.  
  4. select
  5.  
  6.    /* initialize menus and action keys */
  7.    when "I" = cmd then do
  8.       'SET ACTIONBAR.LP_OPTIONS.B~uild.~Directory... MACRO build D'
  9.       'SET ACTIONBAR.LP_OPTIONS.B~uild.~Command... MACRO build C'
  10.       'SET ACTIONBAR.LP_ACTIONS.~Build\tCtrl+B ;SAVEALL PROMPT MACRO build B'
  11.    end
  12.  
  13.    when "D" = cmd then do
  14.       'SET LINEREAD.TITLE Build Directory'
  15.       'SET LINEREAD.PROMPT Enter build directory'
  16.       'EXTRACT GLOBAL.BUILD.DIR INTO BUILDDIR'
  17.       'LINEREAD 256' builddir
  18.       'EXTRACT LASTKEY'
  19.       if lastkey = "ENTER" then do
  20.          'EXTRACT LASTLINE'
  21.          'SET GLOBAL.BUILD.DIR 'lastline
  22.          'SET DIRECTORY 'lastline
  23.       end
  24.    end
  25.  
  26.    when "C" = cmd then do
  27.       'SET LINEREAD.TITLE Build Command'
  28.       'SET LINEREAD.PROMPT Enter build command'
  29.       'EXTRACT GLOBAL.BUILD.CMD INTO BUILDCMD'
  30.       'LINEREAD 256' buildcmd
  31.       'EXTRACT LASTKEY'
  32.       if lastkey = "ENTER" then do
  33.          'EXTRACT LASTLINE'
  34.          'SET GLOBAL.BUILD.CMD 'lastline
  35.       end
  36.    end
  37.  
  38.    when "B" = cmd then do
  39.       'EXTRACT DOCLIST'
  40.       if doclist \= '' then
  41.          'EXTRACT DOCNUM INTO SAVEDOCNUM'
  42.       else
  43.          savedocnum = 0
  44.       do while doclist \= ''
  45.          parse var doclist docnum doclist
  46.          'GODOC NOACT DOCNUM 'docnum
  47.          'EXTRACT DOCTYPE'
  48.          if doctype \= 'shl' then
  49.             'EMSG DELETE'
  50.       end
  51.       if savedocnum \= 0 then
  52.          'GODOC NOACT DOCNUM 'savedocnum
  53.  
  54.       'EXTRACT GLOBAL.BUILD.DIR INTO BUILDDIR'
  55.       drive = ''
  56.       if builddir \= '' then do
  57.          if (substr(builddir,2,1) = ":") then do
  58.             drive = substr(builddir,1,1);
  59.             'SET DRIVE 'drive
  60.             builddir = substr(builddir,3);
  61.          end
  62.          'SET DIRECTORY 'builddir
  63.       end
  64.       'LP_SHELL'
  65.       if drive \= '' then
  66.          'CMD E 'drive':'
  67.       if builddir \= '' then
  68.          'CMD E cd 'builddir
  69.  
  70.       'EXTRACT GLOBAL.BUILD.CMD INTO BUILDCMD'
  71.       if buildcmd \= '' then do
  72.          'CMD E 'buildcmd
  73.       end
  74.    end
  75. end
  76.  
  77.