diff --git a/recipe/build-jemalloc-local.sh b/recipe/build-jemalloc-local.sh deleted file mode 100755 index 6563f3a..0000000 --- a/recipe/build-jemalloc-local.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -# Get an updated config.sub and config.guess -cp $BUILD_PREFIX/share/gnuconfig/config.* ./build-aux - -set -exuo pipefail - -touch doc/jemalloclocal.html -touch doc/jemalloclocal.3 - -export EXTRA_CONFIGURE_ARGS="--disable-cxx --with-jemalloc-prefix=local --with-install-suffix=local" -$RECIPE_DIR/build-jemalloc.sh diff --git a/recipe/build-jemalloc.sh b/recipe/build-jemalloc.sh index 078c135..f77090a 100755 --- a/recipe/build-jemalloc.sh +++ b/recipe/build-jemalloc.sh @@ -4,6 +4,9 @@ cp $BUILD_PREFIX/share/gnuconfig/config.* ./build-aux set -exuo pipefail +export CXXFLAGS="-std=c++17 $CXXFLAGS" +# export EXTRA_CONFIGURE_ARGS="--with-jemalloc-prefix=local --with-install-suffix=local --enable-prof --enable-stats --enable-blarg" + # Static TLS has caused users to experience some errors of the form # "libjemalloc.so.2: cannot allocate memory in static TLS block" # @@ -18,8 +21,9 @@ if [[ ${target_platform} =~ linux.* ]]; then # https://github.com/jemalloc/jemalloc/issues/1237 ./configure --prefix=${PREFIX} \ --disable-static \ - --disable-tls \ --disable-initial-exec-tls \ + --enable-prof \ + --enable-stats \ ${EXTRA_CONFIGURE_ARGS:---with-mangling=aligned_alloc:__aligned_alloc} elif [[ "${target_platform}" == "osx-arm64" ]]; then ./configure --prefix=${PREFIX} \ @@ -29,7 +33,6 @@ elif [[ "${target_platform}" == "osx-arm64" ]]; then else ./configure --prefix=${PREFIX} \ --disable-static \ - --disable-tls \ ${EXTRA_CONFIGURE_ARGS:-} fi make -j${CPU_COUNT} diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 9148d5d..18881f7 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set name = "jemalloc" %} +{% set name = "jemalloc-katana" %} {% set version = "5.3.0" %} package: @@ -65,58 +65,6 @@ outputs: - test -f $PREFIX/bin/jeprof - $CC -I$PREFIX/include -L$PREFIX/lib -ljemalloc test.c - - name: lib{{ name }}-local - script: build-jemalloc-local.sh - build: - run_exports: - # Symbols were only removed in update from 3 to 4 - # https://abi-laboratory.pro/index.php?view=timeline&l=jemalloc - - {{ pin_subpackage("libjemalloc-local", max_pin=None) }} - requirements: - build: - - make - - gnuconfig # [unix] - - {{ compiler('c') }} - - {{ compiler('cxx') }} - host: - test: - commands: - - test -f $PREFIX/lib/libjemalloclocal.so.2 # [linux] - - test ! -f $PREFIX/lib/libjemalloc${SHLIB_EXT} - - test ! -f $PREFIX/lib/libjemalloclocal.a - - test ! -f $PREFIX/lib/libjemalloclocal_pic.a - - test -f $PREFIX/lib/libjemalloclocal.2.dylib # [osx] - - test -f $PREFIX/include/jemalloc/jemalloclocal.h - - test ! -f $PREFIX/jeprof - - - name: {{ name }}-local - script: build-jemalloc-local.sh - build: - run_exports: - # Symbols were only removed in update from 3 to 4 - # https://abi-laboratory.pro/index.php?view=timeline&l=jemalloc - - {{ pin_subpackage("libjemalloc-local", max_pin=None) }} - requirements: - build: - - make - - gnuconfig # [unix] - - {{ compiler('c') }} - - {{ compiler('cxx') }} - host: - - {{ pin_subpackage('libjemalloc-local', exact=true) }} - run: - - {{ pin_subpackage('libjemalloc-local', exact=true) }} - run_constrained: - - jemalloc <0a0 - test: - requires: - - {{ compiler('c') }} - files: - - test-local.c - commands: - - test -f $PREFIX/bin/jeprof - - $CC -I$PREFIX/include -L$PREFIX/lib -ljemalloclocal test-local.c - about: home: http://jemalloc.net dev_url: https://github.com/jemalloc/jemalloc