/[public]/psiconv/trunk/program/extra/rewrite.c
ViewVC logotype

Contents of /psiconv/trunk/program/extra/rewrite.c

Parent Directory Parent Directory | Revision Log Revision Log


Revision 180 - (show annotations)
Sat Dec 13 23:26:37 2003 UTC (20 years, 3 months ago) by frodo
File MIME type: text/plain
File size: 2140 byte(s)
(Frodo) Add configuration file parsing support

To do: install config file on installation of psiconv, also in Debian install

1 /*
2 rewrite.c - Part of psiconv, a PSION 5 file formats converter
3 Copyright (c) 1999 Frodo Looijaard <frodol@dds.nl>
4
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.
9
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.
14
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., 675 Mass Ave, Cambridge, MA 02139, USA.
18 */
19
20 #include <psiconv/parse.h>
21 #include <psiconv/generate.h>
22 #include <psiconv/configuration.h>
23
24 #include <stdlib.h>
25 #include <stdio.h>
26
27 int main(int argc, char *argv[])
28 {
29 FILE *fp;
30 psiconv_buffer buf;
31 psiconv_file psionfile;
32 psiconv_config config;
33
34 /* psiconv_verbosity = PSICONV_VERB_DEBUG; */
35
36 if (argc < 3) {
37 fprintf(stderr,"Not enough arguments\n");
38 fprintf(stderr,"Syntax: INFILE OUTFILE\n");
39 exit(1);
40 }
41
42 config = psiconv_config_default();
43 psiconv_config_read(NULL,&config);
44
45 if (!(fp = fopen(argv[1],"r"))) {
46 perror("Can't open file");
47 exit(1);
48 }
49 if (!(buf=psiconv_buffer_new())) {
50 perror("Can't allocate buf");
51 exit(1);
52 }
53 if ((psiconv_buffer_fread_all(buf,fp))) {
54 perror("Can't fread file");
55 exit(1);
56 }
57 fclose(fp);
58 if ((psiconv_parse(config,buf,&psionfile))) {
59 fprintf(stderr,"Parse error\n");
60 exit(1);
61 }
62
63 psiconv_buffer_free(buf);
64 buf = NULL;
65 if (psiconv_write(config,&buf,psionfile)) {
66 fprintf(stderr,"Generate error\n");
67 exit(1);
68 }
69 psiconv_free_file(psionfile);
70 if (!(fp = fopen(argv[2],"w"))) {
71 perror("Can't open file");
72 exit(1);
73 }
74 if ((psiconv_buffer_fwrite_all(buf,fp))) {
75 perror("Can't fwrite file");
76 exit(1);
77 }
78 fclose(fp);
79 psiconv_buffer_free(buf);
80 exit(0);
81 }

frodo@frodo.looijaard.name
ViewVC Help
Powered by ViewVC 1.1.26