Add missing files
[bcusdk.git] / bcugen / bcugen1.cpp
blob60b94e6ed86d0681f436bfc007f702a96ea954c1
1 /*
2 BCU SDK bcu development enviroment
3 Copyright (C) 2005-2011 Martin Koegler <mkoegler@auto.tuwien.ac.at>
5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 #include <stdio.h>
21 #include "readconfig.h"
22 #include "xmlwriteappinfo.h"
23 #include "write.h"
24 #include "check.h"
25 #include "gencode.h"
26 #include "symboltab.h"
28 int
29 main (int ac, char *ag[])
31 FILE *f;
32 if (ac != 9)
33 die
34 ("Usage: %s description config appinfo hfile incfile cfile asmfile variant",
35 ag[0]);
37 NewSymbol ("main", 0);
38 Device *d = ReadConfig (ag[1]);
39 if (!d)
40 die (_("read of description %s failed"), ag[1]);
41 d->init_ci ();
42 CheckDevice (*d);
44 d->ProgramID = "[!--*PROGID--]";
45 WriteConfig (ag[2], d);
46 WriteAppInfo (d, ag[3]);
48 f = fopen (ag[7], "w");
49 if (!f)
50 die (_("writing to %s failed"), ag[7]);
51 GenTestAsm (f, *d);
52 fclose (f);
54 f = fopen (ag[4], "w");
55 if (!f)
56 die (_("writing to %s failed"), ag[4]);
57 GenTestHeader (f, *d);
58 fclose (f);
60 f = fopen (ag[5], "w");
61 if (!f)
62 die (_("writing to %s failed"), ag[5]);
63 GenInclude (f, *d);
64 fclose (f);
66 f = fopen (ag[6], "w");
67 if (!f)
68 die (_("writing to %s failed"), ag[6]);
69 GenTestData (f, *d);
70 fclose (f);
72 f = fopen (ag[8], "w");
73 if (!f)
74 die (_("writing to %s failed"), ag[8]);
75 fprintf (f, "%s", GetVariant (*d) ());
76 fclose (f);
78 delete d;
79 return 0;