#include "cmdline.h" extern const char *CMDLINE_BUILD_TIME; extern const char *CMDLINE_BUILD_DATE; // Glue functions extern int RegisterStaticParserPlugins(); extern int RegisterStaticParserResources(); extern void GetStaticTarget(OSType *cpu, OSType *os); extern void GetStaticPluginType(OSType *language, OSType *plugintype); extern void GetStaticParserPluginType(OSType *style); extern int RegisterStaticTargetResources(); extern int RegisterStaticTargetPlugins(); extern int RegisterStaticParserToolInfo(); int main(int argc, char **argv) { OSType cpu; OSType os; OSType lang; OSType type; OSType style; int ret; if (CmdLine_Initialize(argc, argv, CMDLINE_BUILD_DATE, CMDLINE_BUILD_TIME)) exit(1); if (!RegisterStaticParserResources() || !RegisterStaticTargetResources()) { fprintf(stderr, "\nFATAL ERROR: Could not initialize resource strings\n"); exit(1); } if (!RegisterStaticParserPlugins() || !RegisterStaticTargetPlugins()) { fprintf(stderr, "\nFATAL ERROR: Could not initialize built-in plugins\n"); exit(1); } if (!RegisterStaticParserToolInfo()) { fprintf(stderr, "\nFATAL ERROR: Could not initialize options\n"); exit(1); } GetStaticTarget(&cpu, &os); SetBuildTarget(cpu, os); GetStaticPluginType(&lang, &type); SetPluginType(lang, type); GetStaticParserPluginType(&style); SetParserType(style); ret = CmdLine_Driver(); if (ret) { if (ret == 2) fprintf(stderr, "\nUser break, cancelled...\n"); else fprintf(stderr, "\nErrors caused tool to abort.\n"); } CmdLine_Terminate(ret); return ret; }