jbsrc/lib/src/core/jb-tests.h (2657B) - raw
1 /*
2 * JB, the Jean-Yves Lefort's Build System
3 * Copyright (C) 2008 Jean-Yves Lefort <jylefort@brutele.be>
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 3 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 along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18 */
19
20 #ifndef _JB_TESTS_H
21 #define _JB_TESTS_H
22
23 #include <stdarg.h>
24 #include <glib.h>
25 #include "jb-variable.h"
26
27 void jb_check_host_system (void);
28
29 void jb_register_program (const char *name, JBVariableFlags flags);
30 gboolean jb_check_program (const char *name);
31 void jb_require_program (const char *name);
32
33 gboolean jb_test_compile (const char *filename,
34 const char *cflags,
35 const char *cppflags);
36 gboolean jb_test_compile_string (const char *str,
37 const char *cflags,
38 const char *cppflags);
39
40 gboolean jb_test_link (const char *filename,
41 const char *cflags,
42 const char *cppflags,
43 const char *ldflags,
44 const char *libs);
45 gboolean jb_test_link_string (const char *str,
46 const char *cflags,
47 const char *cppflags,
48 const char *ldflags,
49 const char *libs);
50
51 gboolean jb_test_run (const char *filename,
52 const char *cflags,
53 const char *cppflags,
54 const char *ldflags,
55 const char *libs);
56 gboolean jb_test_run_string (const char *str,
57 const char *cflags,
58 const char *cppflags,
59 const char *ldflags,
60 const char *libs);
61
62 gboolean jb_check_functions (const char *functions, const char *libname);
63
64 gboolean jb_check_packages (const char *group_name,
65 const char *varprefix,
66 const char *packages);
67
68 void jb_check_packages_for_options (const char *group_name,
69 const char *varprefix,
70 const char *packages,
71 ...) G_GNUC_NULL_TERMINATED;
72
73 void jb_require_packages (const char *group_name,
74 const char *varprefix,
75 const char *packages);
76
77 char *jb_get_package_variable (const char *package, const char *variable);
78
79 void jb_check_cc_dependency_style (void);
80
81 void jb_check_glibc (void);
82
83 void jb_check_reentrant_dns_resolver (void);
84
85 #endif /* _JB_TESTS_H */