From acc6f6e83b9cabdc78b6a4f331c510c69e5ff757 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Fri, 9 Jan 2026 11:07:54 +0000 Subject: Haiku is officially supported again from now on * Turns out that it works perfectly with the default --enable-malloc-replacement as malloc() is replaced globally. * Added note to configure.ac that malloc() replacement may be useful on platforms without a global symbol namespace - you just have to link statically (--enable-static-executables) as well. This wasn't necessary on Haiku, though. * Only the test suite required a minor fix since Haiku doesn't support `ulimit`. * The Gtk interface is broken though on Haiku: You cannot type dead keys, Ctrl and AltGr combinations. Doesn't appear to be SciTECO-specific though. The libraries simply doesn't report modifiers. Appears to be a bug in Haiku's GTK 3 port, at least in their Beta5 branch. It can be reproduced with gtk-demo as well. * This opens the door for contributing a port into HaikuPorts. This will probably be Curses-only for the time being (see above). --- configure.ac | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'configure.ac') diff --git a/configure.ac b/configure.ac index 460862c..0f74e40 100644 --- a/configure.ac +++ b/configure.ac @@ -458,7 +458,13 @@ AC_ARG_ENABLE(malloc-replacement, [Replace the libc malloc() [default=check]]), [malloc_replacement=$enableval], [malloc_replacement=check]) if [[ $malloc_replacement = check ]]; then - # We currently do not support dlmalloc on Windows and Mac OS. + # malloc() replacement via dlmalloc should work practically everywhere + # but does not extend to shared libraries on Windows and Mac OS. + # That's why it is disabled by default on Windows and Mac OS where other cheap ways + # of introspection are available (see memory.c). + # On the remaining platforms you can try to combine --enable-malloc-replacement + # with --enable-static-executables to link in as many libraries statically + # as possible. case $host in *-*-darwin* | *-mingw*) malloc_replacement=no;; *) malloc_replacement=yes;; -- cgit v1.2.3