Initial version of donated sources by Avertec, 3.4p5.
[tas-yagle.git] / distrib / sources / tas / tut / tut_parse.c
1 /****************************************************************************/
2 /* */
3 /* Chaine de CAO & VLSI AVERTEC */
4 /* */
5 /* Produit : SPF Version 1.00 */
6 /* Fichier : spf_parse.c */
7 /* */
8 /* (c) copyright 2000 AVERTEC */
9 /* Tous droits reserves */
10 /* */
11 /* Auteur(s) : Gilles Augustins */
12 /* */
13 /****************************************************************************/
14
15 /****************************************************************************/
16 /* includes */
17 /****************************************************************************/
18
19 #include TUT_H
20 #include "tut_parse.h"
21 /****************************************************************************/
22 /* globals */
23 /****************************************************************************/
24
25 ht *tut_tablasharea;
26
27 /****************************************************************************/
28 /* externs */
29 /****************************************************************************/
30
31 extern int libareaparse() ;
32 extern FILE *libareain ;
33
34 extern int tlfareaparse() ;
35 extern FILE *tlfareain ;
36
37 extern int txtareaparse() ;
38 extern FILE *txtareain ;
39
40
41 /****************************************************************************/
42 /* functions */
43 /****************************************************************************/
44
45 void tut_parse (char *filename, int version)
46 {
47 if(version == 1){
48 if ((libareain = mbkfopen (filename, NULL, "r"))) {
49 tut_tablasharea=addht(1000);
50 libareaparse () ;
51 fclose (libareain) ;
52 }
53 }else if(version == 2){
54 if ((tlfareain = mbkfopen (filename, NULL, "r"))) {
55 tut_tablasharea=addht(1000);
56 tlfareaparse () ;
57 fclose (tlfareain) ;
58 }
59 }else if(version == 3){
60 if ((txtareain = mbkfopen (filename, NULL, "r"))) {
61 tut_tablasharea=addht(1000);
62 txtareaparse () ;
63 fclose (txtareain) ;
64 }
65 }
66 }
67
68 /****************************************************************************/
69 /* function lib_unsuffix */
70 /****************************************************************************/
71 char *lib_unsuffix (char *name, char* suffix)
72 {
73 char buf[1024], *c ;
74 int ln, ls ;
75
76 strcpy(buf, name);
77 if ((c=strchr(buf,'\''))!=NULL)
78 {
79 *c='\0';
80 return namealloc(buf);
81 }
82 if (!suffix || (c=strstr(buf, suffix))==NULL)
83 return name ;
84
85 *c='\0';
86 return namealloc (buf) ;
87 }
88