]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/googletest/googletest/include/gtest/internal/custom/README.md
MFC r345203,r345205,r345353,r345645,r345708,r345709,r345735,r345770,r346081,r346270...
[FreeBSD/FreeBSD.git] / contrib / googletest / googletest / include / gtest / internal / custom / README.md
1 # Customization Points
2
3 The custom directory is an injection point for custom user configurations.
4
5 ## Header `gtest.h`
6
7 ### The following macros can be defined:
8
9 *   `GTEST_OS_STACK_TRACE_GETTER_` - The name of an implementation of
10     `OsStackTraceGetterInterface`.
11 *   `GTEST_CUSTOM_TEMPDIR_FUNCTION_` - An override for `testing::TempDir()`. See
12     `testing::TempDir` for semantics and signature.
13
14 ## Header `gtest-port.h`
15
16 The following macros can be defined:
17
18 ### Flag related macros:
19
20 *   `GTEST_FLAG(flag_name)`
21 *   `GTEST_USE_OWN_FLAGFILE_FLAG_` - Define to 0 when the system provides its
22     own flagfile flag parsing.
23 *   `GTEST_DECLARE_bool_(name)`
24 *   `GTEST_DECLARE_int32_(name)`
25 *   `GTEST_DECLARE_string_(name)`
26 *   `GTEST_DEFINE_bool_(name, default_val, doc)`
27 *   `GTEST_DEFINE_int32_(name, default_val, doc)`
28 *   `GTEST_DEFINE_string_(name, default_val, doc)`
29
30 ### Logging:
31
32 *   `GTEST_LOG_(severity)`
33 *   `GTEST_CHECK_(condition)`
34 *   Functions `LogToStderr()` and `FlushInfoLog()` have to be provided too.
35
36 ### Threading:
37
38 *   `GTEST_HAS_NOTIFICATION_` - Enabled if Notification is already provided.
39 *   `GTEST_HAS_MUTEX_AND_THREAD_LOCAL_` - Enabled if `Mutex` and `ThreadLocal`
40     are already provided. Must also provide `GTEST_DECLARE_STATIC_MUTEX_(mutex)`
41     and `GTEST_DEFINE_STATIC_MUTEX_(mutex)`
42 *   `GTEST_EXCLUSIVE_LOCK_REQUIRED_(locks)`
43 *   `GTEST_LOCK_EXCLUDED_(locks)`
44
45 ### Underlying library support features
46
47 *   `GTEST_HAS_CXXABI_H_`
48
49 ### Exporting API symbols:
50
51 *   `GTEST_API_` - Specifier for exported symbols.
52
53 ## Header `gtest-printers.h`
54
55 *   See documentation at `gtest/gtest-printers.h` for details on how to define a
56     custom printer.