Update GoogleTest to v1.8.1
[gromacs.git] / src / external / googletest / googletest / include / gtest / internal / custom / README.md
blobff391fb4e2b5765cac8c6943359b15bbd5f4f149
1 # Customization Points
3 The custom directory is an injection point for custom user configurations.
5 ## Header `gtest.h`
7 ### The following macros can be defined:
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.
14 ## Header `gtest-port.h`
16 The following macros can be defined:
18 ### Flag related macros:
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)`
30 ### Logging:
32 *   `GTEST_LOG_(severity)`
33 *   `GTEST_CHECK_(condition)`
34 *   Functions `LogToStderr()` and `FlushInfoLog()` have to be provided too.
36 ### Threading:
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)`
45 ### Underlying library support features
47 *   `GTEST_HAS_CXXABI_H_`
49 ### Exporting API symbols:
51 *   `GTEST_API_` - Specifier for exported symbols.
53 ## Header `gtest-printers.h`
55 *   See documentation at `gtest/gtest-printers.h` for details on how to define a
56     custom printer.