fixes
[henge/apc.git] / src / apc.c
index 9f267ac..0e7c124 100644 (file)
--- a/src/apc.c
+++ b/src/apc.c
 
 #define DEFAULT_PAGESIZE 4096
 const char* cargs['Z'] = {0};
-const long  sys_pagesize;
-yypstate* apc_pstate;
-yycstate* apc_cstate;
+long  sys_pagesize;
 
 int main(int, char*[]);
 
-
-extern //bison
-int yyparse(void);
-extern //lexer.c
-int lexer_init(void);
-extern
-int scanner_init(void);
-extern
-int scanner(yypstate*, yycstate*);
-extern //ir.c
-int ir_init(void);
-
-extern //apc/parser.tab.c
-YYSTYPE yylval;
-extern
-yycstate* yycstate_new(void);
-
 extern //lexer.c
-int  lexer(void);
+int  lexer_init(void);
+extern //scanner.c
+int  scanner_init(void);
+extern //scanner.c
+void scanner_quit(void);
+extern //scanner.c
+int  scanner_scanpath(char const*);
+//extern //ir.c
+//int  ir_init(void);
 
 /* Main entry from terminal
    parses the command line and kicks off recursive scanning
@@ -67,6 +56,7 @@ int main
   "\t\t-o\tOutput filename \t\t[a.asspak]\n"           \
   "\t\t-h\tPrint this help\n"
 #define DONE   -1
+#define SCANPATH (cargs['d'] ? cargs['d'] : "./")
 { int   opt;
 
  getopt:
@@ -91,15 +81,12 @@ int main
   if ((sys_pagesize = sysconf(_SC_PAGESIZE)) == 0)
     sys_pagesize = DEFAULT_PAGESIZE;
 
-  apc_pstate = yypstate_new();
-  apc_cstate = yycstate_new();
-  
-  if (scanner_init() || ir_init())
+  if (scanner_init())// || ir_init())
     { perror("init");
       exit(EXIT_FAILURE);
     }
-  scanner();
-  
+  scanner_scanpath(SCANPATH);
+  scanner_quit();  
   exit(EXIT_SUCCESS);
 }