2 * Main definitions and externals
4 * Copyright 1998 Bertho A. Stultiens (BS)
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
24 #include <time.h> /* For time_t */
29 extern int debuglevel;
30 #define DEBUGLEVEL_NONE 0x0000
31 #define DEBUGLEVEL_CHAT 0x0001
32 #define DEBUGLEVEL_DUMP 0x0002
33 #define DEBUGLEVEL_TRACE 0x0004
34 #define DEBUGLEVEL_PPMSG 0x0008
35 #define DEBUGLEVEL_PPLEX 0x0010
36 #define DEBUGLEVEL_PPTRACE 0x0020
39 extern int create_res;
40 extern int extensions;
44 extern int preprocess_only;
45 extern int no_preprocess;
46 extern int check_utf8;
48 extern char *input_name;
52 extern int line_number;
53 extern int char_number;
55 extern resource_t *resource_top;
56 extern language_t *currentlanguage;
58 void verify_translations(resource_t *top);
59 void write_pot_file( const char *outname );
60 void write_po_files( const char *outname );
61 void add_translations( const char *po_dir );
62 void write_resfile(char *outname, resource_t *top);
64 static inline void set_location( location_t *loc )
66 loc->file = input_name;
67 loc->line = line_number;
68 loc->col = char_number;
71 static inline void print_location( const location_t *loc )
73 if (loc->file) fprintf(stderr, "%s:%d:%d: ", loc->file, loc->line, loc->col );