version 1.1, 1999/10/08 02:12:01 |
version 1.3, 2000/03/20 01:53:46 |
|
|
|
/*$OpenXM: OpenXM/src/kan96xx/Kan/scanner.c,v 1.2 1999/11/18 08:08:24 takayama Exp $*/ |
/* scanner.c (SM StackMachine) */ |
/* scanner.c (SM StackMachine) */ |
/* export: struct tokens getokenSM(actionType kind,char *str); |
/* export: struct tokens getokenSM(actionType kind,char *str); |
scanner.c is used to get tokens from streams. |
scanner.c is used to get tokens from streams. |
|
|
|
|
|
|
|
|
FILE *BaseFp = stdin; /* file pointer of the first file. */ |
FILE *BaseFp = NULL; /* Initialized to stdin in stackmachine_init(). |
|
file pointer of the first file. */ |
|
|
int EchoInScanner = 0; /* echo in scanner */ |
int EchoInScanner = 0; /* echo in scanner */ |
|
|
Line 393 char *getLOAD_SM1_PATH() { |
|
Line 395 char *getLOAD_SM1_PATH() { |
|
char *getenv(char *s); |
char *getenv(char *s); |
p = getenv("LOAD_SM1_PATH"); |
p = getenv("LOAD_SM1_PATH"); |
if (p == NULL) { |
if (p == NULL) { |
return("/usr/local/lib/sm1/"); |
p = getenv("OpenXM_HOME"); |
|
if (p == NULL) { |
|
return("/usr/local/lib/sm1/"); |
|
}else{ |
|
if (strlen(p) == 0) return(p); |
|
p2 = (char *) sGC_malloc(sizeof(char)*(strlen(p)+strlen("/lib/sm1/")+3)); |
|
if (p2 == NULL) { fprintf(stderr,"No more memory.\n"); exit(10); } |
|
if (p[strlen(p)-1] != '/') { |
|
strcpy(p2,p); strcat(p2,"/lib/sm1/"); |
|
}else{ |
|
strcpy(p2,p); strcat(p2,"lib/sm1/"); |
|
} |
|
return(p2); |
|
} |
}else{ |
}else{ |
if (strlen(p) == 0) return(p); |
if (strlen(p) == 0) return(p); |
if (p[strlen(p)-1] == '/') return(p); |
if (p[strlen(p)-1] == '/') return(p); |