! * * * * * * * * * * * * * * * ! ! ! ! NEWVER.TES VERSION V01.01 ! ! ! ! LAST EDITTED BY: ! ! K.J. CROSS 9-APR-80 ! ! VERSION V01.01 ! ! ! ! CREATE VERSION UPDATE COMMAND ! ! FILE TO "ZAP" THE OBJECT FILE ! ! OF A FRESHLY COMPILED FORTRAN ! ! MODULE TO REFLECT THE VERSION ! ! SPECIFIED IN THE SOURCE. ! ! ! ! THE EXISTING VERSION IS ! ! COMPUTED AND VERIFIED IN THE ! ! COMMAND FILE ALSO. ! ! ! ! NOTE THAT ALL SEARCH FAILURES ! ! AND FILE LOOKUP FAILURES ARE ! ! FATAL. THIS WILL THEN SET ! ! THE EXIT STATUS TO 1 IF ! ! SUCCESSFUL AND 2 IF NOT. ! ! ! ! THE BUFFER IS EXPECTED TO ! ! HAVE THE MODULE NAME (WITH OR ! ! WITHOUT AN EXTENSION). ! ! ! HX1 4ED 0ES HK :@ER%^EQ1%"U :@ER%^EQ1.FLE%"U @ER%^EQ1.FTN% ' ' ! ! ! LOCATE THE REVISION HISTORY ! ! BLOCK AND THE CURRENT VERSION ! ! ! Y2@S%C**-% -@S%Version ^EA^ED^ED.^ED^ED% ! ! ! SAVE THE VERSION AND CLOSE ! ! OUT THE INPUT FILE. ! ! ! .-6,.X2 HK @ER%% ! ! ! DETERMINE THE OLD VERSION ! ! (SHOULD BE THE DATE "DDMMM ") ! ! ! @I%JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC % ! ! ! PUT DAY IN BUFFER (2 DIGITS) ! ! ! J ^B&31+100\ JD ! ! ! GET MONTH NAME. ! ! ! ^B/32&15-1*4+2J 2,.K 4C K ! ! ! BUFFER NOW CONTAINS OLD ! ! VERSION. COMPUTE RAD50 ! ! VALUE IN 2 WORDS. ! ! ! ! FIRST 3 CHARACTERS ARE "DDM" ! ! (2 DIGITS AND ONE LETTER). ! ! ! J 0A-18*40 + (1A-18)*40 + (2A-64) U1 ! ! ! SECOND 2 CHARACTERS ARE "MM " ! ! (2 LETTERS AND ONE SPACE). ! ! ! 3A-64*40 + (4A-64)*40 U2 ! ! ! NOW COMPUTE THE NEW VERSION ! ! VALUE IN RAD50. ! ! ! HK G2 ! ! ! FIRST 3 CHARACTERS ARE "ADD" ! ! (ONE LETTER AND 2 DIGITS). ! ! ! J 0A-64*40 + (1A-18)*40 + (2A-18) U3 ! ! ! NEXT 3 CHARACTERS ARE ".DD" ! ! (PERIOD AND 2 DIGITS). ! ! ! 1120 + (4A-18)*40 + (5A-18) U4 ! ! ! AT THIS POINT, Q1 AND Q2 CON- ! ! TAIN THE OLD VERSION NUMBER ! ! (DATE) IN RAD50. Q3 AND Q4 ! ! CONTAIN THE NEW VERSION NUM- ! ! BER IN RAD50. CREATE THE ! ! ZAP COMMAND FILE. ! ! ! @EW%ZAPVER.CMD% HK G1 @I?.OBJ/AB 0:14% ? ^OQ1\ @I?V ? Q3\ @I? % 0:16% ? Q2\ @I?V ? Q4\ @I? % ? ! ! ! THAT'S ALL FOLKS ... ! ! ! HP EF ^C