musl libc build, rather than glibc

We've had reports of a couple of issues building against musl libc.

Issues reported:
  - build procedures utilize cat for Guidebook-creation, and cat
    is deprecated in distros that use musl libc.

  - some of the CRASHREPORT code is using library functions that
    are not available in the musl libc environment. The reported
    functions were backtrace() and backtrace_symbols(), which use
    header file /usr/include/execinfo.h.

So we'll try to accommodate this. Since we don't have a means of
autodetecting the musl libc situation during the build (as of yet), the
builder will have to specify 'make musl=1' on the make command line.

Specifying 'musl=1' on the make command line will:
1. ensure that NOCRASHREPORT gets defined in the C preprocessor.
2. set COLCMD to be '../util/stripbs' instead of 'col -bx'.

Closes #1393
This commit is contained in:
nhmall
2025-03-10 17:14:24 -04:00
parent 719166f9ec
commit bddca2ded5
6 changed files with 79 additions and 5 deletions

View File

@@ -416,6 +416,12 @@ fetch-docs:
shift; \
done
makedefs:
( cd util ; $(MAKE) makedefs )
stripbs:
( cd util ; $(MAKE) stripbs )
# 'make update' can be used to install a revised version after making
# customizations or such. Unlike 'make install', it doesn't delete everything
# from the target directory to have a clean start.