Categories: Development
Author: John McQuah
Ripping out the GNU C library and replacing it with an alternative libc requires some patching of the official ports. Likewise, removal of linux-pam will necessitate some patching. This page provides a summary of the affected ports, and how they are modified for CRUX-MUSL.
Port | Modifications for MUSL |
---|---|
bash | ./configure --without-bash-malloc |
binutils | ./configure --disable-multilib --disable-gprof --disable-gprofng |
btrfs-progs | ./configure --disable-backtrace |
cdrkit | sed -e 's/#define HAVE_RCMD 1/#undef HAVE_RCMD/' -i include/xconfig.h.in; and pass an additional flag -D__THROW='' to cmake |
cups | remove linux-pam dependency |
clang | patch to add musl targets |
elfutils | patch for musl, adding utility functions that need argp and fts, ./configure ... ac_cv_c99=yes |
f2fs-tools | add no-lfs64.patch |
fakeroot | apply fakeroot-no64.patch |
fdm | insert '#define REG_STARTEND (1<<2)' into fdm.h |
gcc | ./configure --disable-multilib --disable-libsanitizer, and populate /usr/lib/bfd-plugins with a symlink to liblto_plugin.so |
gnu-efi | sed 's/-Werror//' -i Make.defaults |
jfsutils | insert missing includes into fscklog/extract.c (sys/types.h) and libfs/devices.c (sys/sysmacros.h) |
libcap | remove linux-pam dependency |
llvm | add musl-stack-size.patch |
nnn | add LDFLAGS=-lfts |
npth | add patch to fix the build with musl |
opendoas | ./configure --without-pam |
openjdk21-jdk | use AlpineLinux binaries for bootstrapping |
openssh | ./configure --without-pam |
reiserfsprogs | add patches for musl |
shadow | remove linux-pam dependency |
shared-mime-info | include patch for musl |
start-stop-daemon | don't actually define HAVE_ERROR_H |
util-linux | build with autotools, not meson |
xorg-xdm | remove linux-pam dependency |