diff options
-rw-r--r-- | dev-libs/jemalloc/Manifest | 1 | ||||
-rw-r--r-- | dev-libs/jemalloc/files/jemalloc-5.3.0-gentoo-fixups.patch | 43 | ||||
-rw-r--r-- | dev-libs/jemalloc/jemalloc-5.3.0_pre20220405.ebuild | 53 |
3 files changed, 97 insertions, 0 deletions
diff --git a/dev-libs/jemalloc/Manifest b/dev-libs/jemalloc/Manifest index e9979c395b76..0ba9cde236bf 100644 --- a/dev-libs/jemalloc/Manifest +++ b/dev-libs/jemalloc/Manifest @@ -1 +1,2 @@ DIST jemalloc-5.2.1.tar.bz2 554279 BLAKE2B 52cb8cd5e5807a750a7e5e9ee005afd61144d821d7f7029a5eca998fd61787a7271338dee3de586ddf93f5fdbddc2c2ca03ba64375a70096f273a6aa173da431 SHA512 0bbb77564d767cef0c6fe1b97b705d368ddb360d55596945aea8c3ba5889fbce10479d85ad492c91d987caacdbbdccc706aa3688e321460069f00c05814fae02 +DIST jemalloc-5.3.0_pre20220405.tar.xz 671240 BLAKE2B 75cc8b58f9ce10ad1ae61b6b0146727796585d2edfd88c100661181409591bce3ed8499bfc5ffbbfac217c9baf33f955934aac9a62190874bc070c22b7e8f18f SHA512 aeacb637c0a5bd653ad584700fd3a91717b49dba60174871047e0e72ac805c9931940b0faf2e1846e09b975799d9545e32e71e0ff5951c0dcb23cfc8680a2ce9 diff --git a/dev-libs/jemalloc/files/jemalloc-5.3.0-gentoo-fixups.patch b/dev-libs/jemalloc/files/jemalloc-5.3.0-gentoo-fixups.patch new file mode 100644 index 000000000000..e500a63225f0 --- /dev/null +++ b/dev-libs/jemalloc/files/jemalloc-5.3.0-gentoo-fixups.patch @@ -0,0 +1,43 @@ +This is jemalloc-5.2.0-gentoo-fixups.patch, rebased on top of upstream commit +https://github.com/jemalloc/jemalloc/commit/ed5fc14b28ca62a6. +From: Jory Pratt <anarchy@gentoo.org> +Date: Tue, 23 Apr 2019 10:04:19 -0500 +Subject: [PATCH] Don't override user cflags, disable html_doc from being + installed + +Signed-off-by: Jory Pratt <anarchy@gentoo.org> +--- a/Makefile.in ++++ b/Makefile.in +@@ -603,7 +603,7 @@ install_doc_man: build_doc_man + $(INSTALL) -v -m 644 $$d $(MANDIR)/man3; \ + done + +-install_doc: install_doc_html install_doc_man ++install_doc: install_doc_man + + install: install_bin install_include install_lib + +--- a/configure.ac ++++ b/configure.ac +@@ -1220,21 +1220,6 @@ if test "x$enable_debug" = "x1" ; then + fi + AC_SUBST([enable_debug]) + +-dnl Only optimize if not debugging. +-if test "x$enable_debug" = "x0" ; then +- if test "x$GCC" = "xyes" ; then +- JE_CFLAGS_ADD([-O3]) +- JE_CXXFLAGS_ADD([-O3]) +- JE_CFLAGS_ADD([-funroll-loops]) +- elif test "x$je_cv_msvc" = "xyes" ; then +- JE_CFLAGS_ADD([-O2]) +- JE_CXXFLAGS_ADD([-O2]) +- else +- JE_CFLAGS_ADD([-O]) +- JE_CXXFLAGS_ADD([-O]) +- fi +-fi +- + dnl Enable statistics calculation by default. + AC_ARG_ENABLE([stats], + [AS_HELP_STRING([--disable-stats], diff --git a/dev-libs/jemalloc/jemalloc-5.3.0_pre20220405.ebuild b/dev-libs/jemalloc/jemalloc-5.3.0_pre20220405.ebuild new file mode 100644 index 000000000000..bb8d838144a4 --- /dev/null +++ b/dev-libs/jemalloc/jemalloc-5.3.0_pre20220405.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="8" + +inherit autotools multilib-minimal + +DESCRIPTION="Jemalloc is a general-purpose scalable concurrent allocator" +HOMEPAGE="http://jemalloc.net/ https://github.com/jemalloc/jemalloc" +#SRC_URI="https://github.com/jemalloc/jemalloc/releases/download/${PV}/${P}.tar.bz2" +SRC_URI="https://dev.gentoo.org/~xen0n/distfiles/${P}.tar.xz" + +LICENSE="BSD" +SLOT="0/2" +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris" +IUSE="debug lazy-lock prof stats xmalloc" +HTML_DOCS=( doc/jemalloc.html ) +PATCHES=( "${FILESDIR}/${PN}-5.3.0-gentoo-fixups.patch" ) + +MULTILIB_WRAPPED_HEADERS=( /usr/include/jemalloc/jemalloc.h ) + +src_prepare() { + default + eautoreconf +} + +multilib_src_configure() { + local myconf=( + $(use_enable debug) + $(use_enable lazy-lock) + $(use_enable prof) + $(use_enable stats) + $(use_enable xmalloc) + ) + + ECONF_SOURCE="${S}" econf "${myconf[@]}" +} + +multilib_src_install() { + # Copy man file which the Makefile looks for + cp "${S}/doc/jemalloc.3" "${BUILD_DIR}/doc" || die + emake DESTDIR="${D}" install +} + +multilib_src_install_all() { + if [[ ${CHOST} == *-darwin* ]] ; then + # fixup install_name, #437362 + install_name_tool \ + -id "${EPREFIX}"/usr/$(get_libdir)/libjemalloc.2.dylib \ + "${ED}"/usr/$(get_libdir)/libjemalloc.2.dylib || die + fi + find "${ED}" -name '*.a' -delete || die +} |