view mupdf-source/thirdparty/harfbuzz/TESTING.md @ 38:8934ac156ef5

Allow to build with the PyPI package "clang" instead of "libclang". 1. It seems to be maintained. 2. In the FreeBSD base system there is no pre-built libclang.so. If you need this library you have to install llvm from ports additionally. 2. On FreeBSD there is no pre-built wheel "libclang" with a packaged libclang.so.
author Franz Glasner <fzglas.hg@dom66.de>
date Tue, 23 Sep 2025 10:27:15 +0200
parents b50eed0cc0ef
children
line wrap: on
line source

## Build and Test

```shell
meson build
ninja -Cbuild
meson test -Cbuild
```

### Debug with GDB

```shell
meson test -Cbuild --gdb testname
```

## Build and Run

Depending on what area you are working in change or add `HB_DEBUG_<whatever>`.
Values defined in `hb-debug.hh`.

```shell
CPPFLAGS='-DHB_DEBUG_SUBSET=100' meson setup build --reconfigure
meson test -C build
```

### Run tests with asan

```shell
meson setup build -Db_sanitize=address --reconfigure
meson compile -C build
meson test -C build
```

### Enable Debug Logging

```shell
CPPFLAGS=-DHB_DEBUG_SUBSET=100 meson build --reconfigure
ninja -C build
```

## Test with the Fuzzer

FOr fuzzing, see `test/fuzzing/README.md`.

## Profiling

For profiling, see `perf/README.md`.