From c74215ad55017426e54ccde574ba00f0aaca7271 Mon Sep 17 00:00:00 2001 From: "Darryl L. Miles" Date: Thu, 13 Feb 2025 08:19:42 +0000 Subject: [PATCH] scripts/defs.mak.in: FEATURE_FLAGS -DSUPPORT_DIRECT_MALLOC -DSUPPORT_REMOVE_MALLOC_LEGACY ./configure # If you are brave, enable with your favourite editor after ./configure sed -e 's/^#FEATURE_FLAGS /FEATURE_FLAGS /' -i defs.mak make make install --- scripts/defs.mak.in | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/scripts/defs.mak.in b/scripts/defs.mak.in index 2b418f00..72c99dcf 100755 --- a/scripts/defs.mak.in +++ b/scripts/defs.mak.in @@ -93,12 +93,29 @@ CC = @CC@ CPP = @CPP@ CXX = @CXX@ +### +### Feature flags (to enable uncomment these from ./defs.mak after your ./configure) +### +### SUPPORT_DIRECT_MALLOC: this removes the legacy malloc/free APIs that are +### not thread-safe and have a defer-free-by-1 quirk that maybe covering +### up unknown problems. See utils/malloc.[ch] for more info. +### +### Status: EXPERIMENTAL (this is expected to uncover issues we don't know about yet) +#FEATURE_FLAGS += -DSUPPORT_DIRECT_MALLOC +### +### SUPPORT_REMOVE_MALLOC_LEGACY this completely removes the older non-threadsafe API +### from the output binaries. +### This option is dependent on SUPPORT_DIRECT_MALLOC +### +### Status: NOT-STABILITY-AFFECTING (if your binary links you are good to continue) +#FEATURE_FLAGS += -DSUPPORT_REMOVE_MALLOC_LEGACY + CPPFLAGS = -I${MAGICDIR} @CPPFLAGS@ DFLAGS_MAGICVERSION = -DMAGIC_VERSION=\"${MAGIC_VERSION}\" -DMAGIC_REVISION=\"${MAGIC_REVISION}\" -DMAGIC_COMMIT=\"${MAGIC_COMMIT}\" "-DMAGIC_BUILDDATE=\"${MAGIC_BUILDDATE}\"" DFLAGS = @extra_defs@ @stub_defs@ @DEFS@ ${DFLAGS_MAGICVERSION} -DGCORE=\"@GCORE@\" -DFLAGS += -DSHDLIB_EXT=\"@SHDLIB_EXT@\" @NDEBUG_defs@ @DEBUG_defs@ +DFLAGS += -DSHDLIB_EXT=\"@SHDLIB_EXT@\" @NDEBUG_defs@ @DEBUG_defs@ ${FEATURE_FLAGS} DFLAGS_NOSTUB = @extra_defs@ @DEFS@ ${DFLAGS_MAGICVERSION} -DGCORE=\"@GCORE@\" -DFLAGS_NOSTUB += -DSHDLIB_EXT=\"@SHDLIB_EXT@\" @NDEBUG_defs@ @DEBUG_defs@ +DFLAGS_NOSTUB += -DSHDLIB_EXT=\"@SHDLIB_EXT@\" @NDEBUG_defs@ @DEBUG_defs@ ${FEATURE_FLAGS} CFLAGS = @CFLAGS@ @SHLIB_CFLAGS@ @INC_SPECS@ READLINE_DEFS = @rl_defs@