perl 5.0 alpha 4
[p5sagit/p5-mst-13.2.git] / main.c
1 #include "INTERN.h"
2 #include "perl.h"
3
4 main(argc, argv, env)
5 int argc;
6 char **argv;
7 char **env;
8 {
9     int exitstatus;
10     PerlInterpreter *my_perl;
11
12     my_perl = perl_alloc();
13     if (!my_perl)
14         exit(1);
15     perl_construct( my_perl );
16
17     exitstatus = perl_parse( my_perl, argc, argv, env );
18     if (exitstatus)
19         exit( exitstatus );
20
21     exitstatus = perl_run( my_perl );
22
23     perl_destruct( my_perl );
24     perl_free( my_perl );
25
26     exit( exitstatus );
27 }
28
29 /* Register any extra external extensions */
30
31 void
32 perl_init_ext()
33 {
34     char *file = __FILE__;
35
36 #ifdef HAS_DB
37     newXSUB("DB_File::init",   0, init_DB_File,   file);
38 #endif
39 #ifdef HAS_NDBM
40     newXSUB("NDBM_File::init", 0, init_NDBM_File, file);
41 #endif
42 #ifdef HAS_GDBM
43     newXSUB("GDBM_File::init", 0, init_GDBM_File, file);
44 #endif
45 #ifdef HAS_SDBM
46     newXSUB("SDBM_File::init", 0, init_SDBM_File, file);
47 #endif
48 #ifdef HAS_ODBM
49     newXSUB("ODBM_File::init", 0, init_ODBM_File, file);
50 #endif
51 #ifdef HAS_DBZ
52     newXSUB("DBZ_File::init",  0, init_DBZ_File,  file);
53 #endif
54 }