L. E. Segovia fab3da528e gst-indent: build our own indent tool and make it available in the devenv
No more formatting mismatches owing to different GNU indent
versions shipped by different distro versions.

See #340

Co-authored-by: L. E. Segovia <amy@centricular.com>
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5192>
2025-01-31 19:14:41 -03:00
..
2022-12-20 14:03:35 +00:00

This is a copy of libcheck, a unit testing framework for C:

https://github.com/libcheck/check/

The last update was on 9th December, with the following commit: ba42e7de3d62ea9d3699bf0709554b3e47a8f09e

The check*.c files in this directory are the same as those in the src/
directory in upstream. The files in the libcompat/ directory are the same as
those in the lib/ directory upstream.

lib/snprintf.c was omitted since we don't run on any platforms that don't
provide snprintf and the upstream implementation is ~2000 lines.

lib/malloc.c and lib/realloc.c were omitted since we were doing fine without
them and it does a #define malloc rpl_malloc on Android because the malloc
shipped with Bionic is not GNU-compliant. rpl_malloc is provided by libcheck,
but not everything in gstreamer links against libcheck. We also don't care
about this.

Steps to sync with upstream:

1. Clone libcheck from the above git repository
2. Copy files into this directory
3. Run gst-indent-1.0 on all the code
4. Fix internal #includes
5. Manually inspect the diff
6. Update configure.ac, m4/check-checks.m4, meson.build files, etc
6. Run make check, then commit and push

Any changes made to files in this directory must be submitted upstream via
a pull request: https://github.com/libcheck/check/compare

This involves creating an account on GitHub, forking libcheck/check there,
pushing the changes into a branch, and then submitting it as a pull request.