ooozz6
C OOOZZ6 SOURCE PV090527 26/04/24 08:23:41 12524 SUBROUTINE OOOZZ6 (LRET,KINCL,DMEM) C--------------------------------------------------- JAN 87 -------- C GEMAT TRANSPORTABLE C TRAITEMENT DES %INC DMEM POUR LE TRADUCTEUR C C ->LRET 1 ERREUR C 2 OK C C KINCL =0 INITIALISATION DE LA INCLIB C >0 OUVRIR LE FICHIER KINCL C <0 FERMER LE FICHIER KINCL C C DMEM LE NOM DU MEMBRE A INCLURE C C PROGRAMMEUR : MOUGIN C MODIF : 30/09/86 SIMPLIFIER OOOZZ6 EN EXPLOITANT C LA LONGUEUR DE DMEM (VOIR : LECCRT) C MODIF : 22/01/87 INTRODUIRE UNE VERSION VAX SIMPLIFIEE C MODIF : 26/01/87 CORRIGER UNE CONNERIE C MODIF : 19/03/87 INTRODUIRE => NOSVE C MODIF : 18/09/87 INTRODUIRE => HP9000 C MODIF : 19/10/87 OPEN ( READONLY ) SUR VAX C MODIF : 18/09/87 INTRODUIRE => CONVEX C MODIF : 06/09/89 INTRODUIRE CFT77 C MODIF : 22/03/2016 WIN64 => INTRODUCTION C----------------------------------------------------------------------- C %INC IOOUNIT C%IF WIN32 C Include fait pour l'interfaçage FORTRAN - C avec Microsoft Visual C C INCLUDE 'esope.fi' C%ENDIF CHARACTER*(*) DMEM CHARACTER* 80 HHHH CHARACTER* 500 ENEN EQUIVALENCE (IENEN,ENEN) %IF VAX,APOLLO,UNIX32,CONVEX,UNIX64,WIN32,WIN64 C on va successivement essayer le repertoire courant, c le repertoire include et le repertoire $ESOPE_INC LRET=2 IF ( KINCL.GT.0) THEN LMEM = LEN(DMEM) HHHH = DMEM %IF VAX,UNIX32,UNIX64,WIN32,WIN64 HHHH(LMEM+1:LMEM+4) = '.INC' OPEN (KINCL,ERR=1,FILE=HHHH(1:LMEM+4),STATUS='OLD') RETURN %IF WIN32,WIN64 1 OPEN (KINCL,ERR=2,FILE='.\include\'//HHHH(1:LMEM+4), * STATUS='OLD') %ELSE 1 OPEN (KINCL,ERR=2,FILE='./include/'//HHHH(1:LMEM+4), * STATUS='OLD') %ENDIF RETURN 2 CONTINUE ENEN='ESOPE_INC'//CHAR(0) lenen=500 CALL OOOZEN(IENEN,LENEN) %IF WIN32,WIN64 OPEN (KINCL,ERR=900,FILE=ENEN(1:LENEN)//'\'//HHHH(1:LMEM+4), * STATUS='OLD') %ELSE OPEN (KINCL,ERR=900,FILE=ENEN(1:LENEN)//'/'//HHHH(1:LMEM+4), * STATUS='OLD') %ENDIF RETURN %ENDIF %IF CONVEX HHHH(LMEM+1: ) = '.i' OPEN ( KINCL,ERR=900,FILE=HHHH,STATUS='OLD',READONLY) %ENDIF %IF APOLLO HHHH(LMEM+1: ) = '.i' OPEN ( KINCL,ERR=900,FILE=HHHH,STATUS='OLD') %ENDIF ELSEIF ( KINCL.LT.0) THEN CLOSE (-KINCL,ERR=900) ENDIF LRET=2 RETURN %ENDIF %IF XXX,IBM,CRAY,CFT77,CDC,SEL,UNIVAC,FPS,PRIME,NOSVE WRITE(JLST,*) 'L''INSTRUCTION : %INC OU -INC , N''EST PAS' WRITE(JLST,*) 'COMPRISE PAR CETTE VERSION DU TRADUCTEUR ESOPE' WRITE(JLST,*) ' ( VOIR LE SOUS-PROGRAMME : OOOZZ6) ' WRITE(JERR,*) 'L''INSTRUCTION : %INC OU -INC , N''EST PAS' WRITE(JERR,*) 'COMPRISE PAR CETTE VERSION DU TRADUCTEUR ESOPE' WRITE(JERR,*) ' ( VOIR LE SOUS-PROGRAMME : OOOZZ6) ' %ENDIF 900 LRET=1 RETURN END
© Cast3M 2003 - Tous droits réservés.
Mentions légales