Revert "[Tizen] [GPOS] Avoid O(n^2) behavior in mark-attachment"
[platform/upstream/harfbuzz.git] / TESTING.md
1 ## Build and Test
2
3 ```shell
4 meson build
5 ninja -Cbuild
6 meson test -Cbuild
7 ```
8
9 ### Debug with GDB
10
11 ```shell
12 meson test -Cbuild --gdb testname
13 ```
14
15 ## Build and Run
16
17 Depending on what area you are working in change or add `HB_DEBUG_<whatever>`.
18 Values defined in `hb-debug.hh`.
19
20 ```shell
21 CPPFLAGS='-DHB_DEBUG_SUBSET=100' meson setup build --reconfigure
22 meson test -C build
23 ```
24
25 ### Run tests with asan
26
27 ```shell
28 meson setup build -Db_sanitize=address --reconfigure
29 meson compile -C build
30 meson test -C build
31 ```
32
33 ### Enable Debug Logging
34
35 ```shell
36 CPPFLAGS=-DHB_DEBUG_SUBSET=100 meson build --reconfigure
37 ninja -C build
38 ```
39
40 ## Test with the Fuzzer
41
42 ```shell
43 CXXFLAGS="-fsanitize=address,fuzzer-no-link" meson fuzzbuild --default-library=static -Dfuzzer_ldflags="-fsanitize=address,fuzzer" -Dexperimental_api=true
44 ninja -Cfuzzbuild test/fuzzing/hb-{shape,draw,subset,set}-fuzzer
45 fuzzbuild/test/fuzzing/hb-subset-fuzzer test/fuzzing/fonts
46 ```
47
48 ## Profiling
49
50 ```
51 meson build --reconfigure
52 meson compile -C build
53 build/perf/perf
54 ```
55