1 /* xgettext C/C++/ObjectiveC backend.
2 Copyright (C) 2001-2003, 2006, 2009 Free Software Foundation, Inc.
3 Written by Bruno Haible <haible@clisp.cons.org>, 2001.
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 3 of the License, or
8 (at your option) any later version.
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.
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>. */
30 #define EXTENSIONS_C \
41 { "m", "ObjectiveC" }, \
46 &formatstring_c, NULL }, \
49 &formatstring_c, NULL }, \
50 { "ObjectiveC", extract_objc, \
52 &formatstring_c, &formatstring_objc }, \
53 { "GCC-source", extract_c, \
54 &flag_table_gcc_internal, \
55 &formatstring_gcc_internal, &formatstring_gfc_internal }, \
57 /* Scan a C/C++ file and add its translatable strings to mdlp. */
58 extern void extract_c (FILE *fp, const char *real_filename,
59 const char *logical_filename,
60 flag_context_list_table_ty *flag_table,
61 msgdomain_list_ty *mdlp);
62 /* Scan an ObjectiveC file and add its translatable strings to mdlp. */
63 extern void extract_objc (FILE *fp, const char *real_filename,
64 const char *logical_filename,
65 flag_context_list_table_ty *flag_table,
66 msgdomain_list_ty *mdlp);
69 /* Handling of options specific to this language. */
71 extern void x_c_extract_all (void);
73 extern void x_c_keyword (const char *name);
74 extern void x_objc_keyword (const char *name);
76 extern void x_c_trigraphs (void);
78 extern void init_flag_table_c (void);
79 extern void init_flag_table_objc (void);
80 extern void init_flag_table_gcc_internal (void);