/* Check files to see if they have been updated */ call RxFuncAdd 'SysLoadFuncs', 'REXXUTIL', 'SysLoadFuncs' call SysLoadFuncs signal on novalue parse arg args wpi_file = strip(args) wis_file = 'fm2.wis' dummy_date_time = '-1' in_file = 'bld_fm2_wpidirs.txt' out_file = 'bld_fm2_wpidirs.in' retval = 0 in_file_date_time= GetDate(in_file) if in_file_date_time = dummy_date_time then do say 'Fatal Error: input file, 'in_file' NOT found.' say say 'Exiting...' return end out_file_date_time = GetDate(out_file) wpi_file_date_time = GetDate(wpi_file) if in_file_date_time > out_file_date_time | , out_file_date_time = dummy_date_time | , wpi_file_date_time = dummy_date_time then do 'copy 'in_file out_file call SysSetFileDateTime out_file if stream(wpi_file, 'c', 'query exists') \= '' then 'del 'wpi_file call clean_wpidirs end else do file_reset = 0 nfp = 0 do while lines(in_file) > 0 line = strip(linein(in_file)) if line \= '' then if left(line, 1) \= ';' then if translate(word(line, 1)) = 'FILE:' then do file = word(line, 2) dir = word(line, 4) file_date_time = GetDate( '..\' || dir || '\' || file ) if file_date_time > out_file_date_time then do if file_reset = 0 then do file_reset = 1 if stream(out_file, 'c', 'query exists') \= '' then '@del 'out_file call lineout out_file, '; Do not edit this file!' call lineout out_file, ';' call lineout out_file, '; Any desired edits should be done to BLD_FM2_WPIDIRS.TXT, instead.' call lineout out_file, ';' end call lineout out_file, line end end else /* must be a NOFILESPACKAGE line */ do nfp = nfp + 1 nfpline.nfp = line end end if file_reset = 1 then do nfpline.0 = nfp do nfp = 1 to nfpline.0 call lineout out_file, nfpline.nfp end call stream out_file, 'c', 'close' end end exit GetDate: procedure return SysGetFileDateTime( arg(1), 'W' ) novalue: say 'Uninitialized value: 'condition('D')' on line: 'sigl say 'Line text: 'sourceline(sigl) exit