Update HACKING.
[libsigsegv.git] / HACKING
blob160157d295f2857abfc732a89f571adda25cb7f4
1 All you need to know when hacking (modifying) GNU libsigsegv or when building
2 it off the Git repository.
5 Requirements
6 ============
8 You will need reasonably recent versions of the build tools:
10   * A C compiler. Such as GNU GCC.
11     + Homepage:
12       https://gcc.gnu.org/
14   * GNU automake
15     + Homepage:
16       https://www.gnu.org/software/automake/
18   * GNU autoconf
19     + Homepage:
20       https://www.gnu.org/software/autoconf/
22   * GNU m4
23     + Homepage:
24       https://www.gnu.org/software/m4/
26   * Perl
27     + Homepage:
28       https://www.perl.org/
30   * Either an internet connection or a recent copy of GNU gnulib.
31     + Homepage:
32       https://www.gnu.org/software/gnulib/
34 And, of course, the packages listed in the DEPENDENCIES file.
37 Building off the Git repository
38 ===============================
40 Access to the Git repository is described at
41 https://savannah.gnu.org/git/?group=libsigsegv .
43 After fetching the sources from the Git repository, peek at the comments in
44 autogen.sh, then run
45   ./autopull.sh
46   ./autogen.sh
47 Then you can proceed with "./configure" as usual.
49 Each time you want to update the source, do not only "git pull".  Instead do
50   git pull && ./autopull.sh
51   ./autogen.sh
54 Continuous integration
55 ======================
57 There are two continuous integrations that regularly build and test
58 libsigsegv:
59 * On a Linux/glibc system only:
60   https://gitlab.com/gnu-libsigsegv/ci-distcheck/pipelines
61   https://gitlab.com/gnu-libsigsegv/ci-distcheck/-/jobs?scope=finished
62   This one will catch only the most blatant mistakes.
63 * On many platforms:
64   https://github.com/gnu-libsigsegv/ci-check/actions
65   This one catches platform-specific bugs.