diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 02:57:58 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 02:57:58 +0000 |
commit | be1c7e50e1e8809ea56f2c9d472eccd8ffd73a97 (patch) | |
tree | 9754ff1ca740f6346cf8483ec915d4054bc5da2d /fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh | |
parent | Initial commit. (diff) | |
download | netdata-upstream.tar.xz netdata-upstream.zip |
Adding upstream version 1.44.3.upstream/1.44.3upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh')
-rwxr-xr-x | fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh b/fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh new file mode 100755 index 00000000..c675bb46 --- /dev/null +++ b/fluent-bit/lib/jemalloc-5.3.0/include/jemalloc/jemalloc_mangle.sh @@ -0,0 +1,45 @@ +#!/bin/sh -eu + +public_symbols_txt=$1 +symbol_prefix=$2 + +cat <<EOF +/* + * By default application code must explicitly refer to mangled symbol names, + * so that it is possible to use jemalloc in conjunction with another allocator + * in the same application. Define JEMALLOC_MANGLE in order to cause automatic + * name mangling that matches the API prefixing that happened as a result of + * --with-mangling and/or --with-jemalloc-prefix configuration settings. + */ +#ifdef JEMALLOC_MANGLE +# ifndef JEMALLOC_NO_DEMANGLE +# define JEMALLOC_NO_DEMANGLE +# endif +EOF + +for nm in `cat ${public_symbols_txt}` ; do + n=`echo ${nm} |tr ':' ' ' |awk '{print $1}'` + echo "# define ${n} ${symbol_prefix}${n}" +done + +cat <<EOF +#endif + +/* + * The ${symbol_prefix}* macros can be used as stable alternative names for the + * public jemalloc API if JEMALLOC_NO_DEMANGLE is defined. This is primarily + * meant for use in jemalloc itself, but it can be used by application code to + * provide isolation from the name mangling specified via --with-mangling + * and/or --with-jemalloc-prefix. + */ +#ifndef JEMALLOC_NO_DEMANGLE +EOF + +for nm in `cat ${public_symbols_txt}` ; do + n=`echo ${nm} |tr ':' ' ' |awk '{print $1}'` + echo "# undef ${symbol_prefix}${n}" +done + +cat <<EOF +#endif +EOF |