summaryrefslogtreecommitdiff
path: root/dev-libs/dmalloc
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-12-06 11:01:58 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-12-06 11:01:58 +0000
commit334d7d1830a3556a4c5d62a0f8547e5eb40bc83e (patch)
tree21b32eab75d2e75a1706e24db41ef23a89bb0ca2 /dev-libs/dmalloc
parentb8cec1611ea575eea46e4927fedf000feed71b16 (diff)
gentoo auto-resync : 06:12:2023 - 11:01:57
Diffstat (limited to 'dev-libs/dmalloc')
-rw-r--r--dev-libs/dmalloc/Manifest7
-rw-r--r--dev-libs/dmalloc/dmalloc-5.6.5.ebuild (renamed from dev-libs/dmalloc/dmalloc-999999.ebuild)45
-rw-r--r--dev-libs/dmalloc/files/dmalloc-5.6.5-Makefile.in.patch343
-rw-r--r--dev-libs/dmalloc/files/dmalloc-5.6.5-configure-c99.patch61
-rw-r--r--dev-libs/dmalloc/metadata.xml3
5 files changed, 428 insertions, 31 deletions
diff --git a/dev-libs/dmalloc/Manifest b/dev-libs/dmalloc/Manifest
index 88de56969544..200701ecb8bb 100644
--- a/dev-libs/dmalloc/Manifest
+++ b/dev-libs/dmalloc/Manifest
@@ -3,8 +3,11 @@ AUX dmalloc-5.5.2-ar.patch 390 BLAKE2B d339b90b38b045ef929a661aa2fb0c95e35a89bd8
AUX dmalloc-5.5.2-cxx.patch 546 BLAKE2B 6f85a3024d417c81f3a4dd4f50cf444f09eb3b53eb9faf7ccbd022ea9e596ebcefe0038fa894bf2782e08c53dab3a8d89fc43153e9bef34a2c84771fcf497bd5 SHA512 370ff73c4af16d7b4cb5e15a88f3cafcc16494df7df50c4494b1e34ed687f1385b774431cc94a9ba75ef96f2828f75501ee2d0addc9d3e34d4f718ac94ae5f6d
AUX dmalloc-5.5.2-string-macros.patch 367 BLAKE2B 7fd3e6ae9b4564ec519da953c5116b9a8d19fa446c1d3e24ff736ce3725fd7425881dc07272a3f5dbdee1202e1dac8f68f19266296f5c8335976e5287fa90ddc SHA512 61d0015e7997ecad97e722a1b308ec90e996e9d53b9f475c911f1d9eb929d8007881e52699e9f3427c5cecb9f0b2d202d12a7d607d23434913afbef455f08617
AUX dmalloc-5.5.2-threads.patch 165 BLAKE2B fee0be1573996dc7460735a94c645989db6fb9570e1140ec64e87e4bddd6b84227d072454bd64c4e0f261e81da0dd27a6ebf310b60e8a74539a21f83370e291f SHA512 b561c715c19604128c046b36bfe09794922176ce1cd12947da277631a410bbc19c5a1f7e998f0b61d7564e3b7516bee0fb4deddb13e036bb9e667f3502e56d0e
+AUX dmalloc-5.6.5-Makefile.in.patch 14323 BLAKE2B 00b99d856b1f9d6eec88b848af350c77c0e7ca1504efc474d76998d62b18b5c6eb2bece77af45674095d9dc616988b1bba7c3850a4af3d5210b418890818f4fb SHA512 b150c58963463d335d4bd0265f8535d8ced94bd72b29ba2cf395370e5d36c31881c557c5315a3ce9e776cd78f67bdd94aecfabc71001b24b3e317b868f7597fb
+AUX dmalloc-5.6.5-configure-c99.patch 1826 BLAKE2B ff3ed1ec4ff079dca239497060d183dc18c63a79eaf7460dd523dbcca5e4337593a52c8741070ad8fc7d2ae9e62007a542d6b1cb2a34afa8760b2e52cb330567 SHA512 1a21755bbb53e74a525f511fe76b8bd197fb9042a73929719d2e8c6a47c1ac080be7a8b2afe22747e26f028b2eddf06b153753fbf546c2ad152081081d6dc7fa
AUX dmalloc-999999-texi2html.patch 355 BLAKE2B 3b599bdfa45f6c781b446d72cab79acb6f6b59e0c648989c1012b625f4e07ed5b0934cd4c21865af154a1745e1ce2b72bf90f738efa40d7c2654e5e2723b389c SHA512 e29aba00d3e5edf0639685858215736f3aed4baa9f7b79577a69bf5e2e51a0072e92befe7ad0e24a68ea35e184271c15312b5acea145ff1a186eb0d35a985c72
DIST dmalloc-5.5.2.tgz 666608 BLAKE2B 9371b35b9a39706215ff2fc4e31510dafa30a86dccb2290563a2c8a0e7211372dca419dd7d549011548853f1e168fe15c55361d763d27230c547c93113de823e SHA512 96bb94aeb2bc3220f652b5294bdf8592b984cb2a53e5f02b2b8d52450c3396d18651f334644cdfff9c85a8c0d0cedc7f6a18b9d70497b2c6b5f85dbd1e827b93
+DIST dmalloc-5.6.5.tgz 322310 BLAKE2B 43ba8cdef73423f2e3d6fa5dea34f1653d890c95dcd4ea13e9317d85d1991d0e68e80192860c7bdaf4ee33b36c892b9df31340ddde808b7d60ee00f21d532976 SHA512 17090378b763dd3eaf5ff196298f08982ad593d4c3a0104a67866b88793b612307f3ce9ef0aa7dfef2df6c8eb050e2be06513b29ca912e916c0bfd882a0f4bf1
EBUILD dmalloc-5.5.2-r7.ebuild 1828 BLAKE2B 920eee5e279c94245c135806010dfe50c75167f0b2943d2c9e78527977c1daa26516c0f9fff56cf61038700256ab2bbb63c75511bb3a5d54e34482ec0fb6ec64 SHA512 7f191948682117b5bb09cfa3de947c6adf4413f0b9871af48b8b1d46f7a51b3a4f79581e395ed21cf623a4bec3cf9ee9595bd2efa6daed6bdb18aac2f901d070
-EBUILD dmalloc-999999.ebuild 1655 BLAKE2B 9f6453eb6ea54a84f0edc491e66944a15034298b9f945d27c311825dbc6256642a030e36cc9b1125a7fa4637ec1e99e69125320107d8a3f7751214e3b073e955 SHA512 b1abc70b2221c1d1c69030b1046ab5e3447594217e4fc3f637aa4548dab5bf8018211bb600aa6cc31b9f7ee77c4832792817e7f81a8a668e3a99e3d93ae24ee1
-MISC metadata.xml 168 BLAKE2B 2e0e000b4c3b6ca04c12903fdbe278415c05a822623c52e9aa95cbbf3d50bcb1246b7edbda7d2f6b559af8950c6374e6e0a69b76319964cfe686bf50b0604a57 SHA512 4dcf45d1809e8390a2d8155c8ebfe0dd610203e392aeab0ccd8a10f42cc8532a4925eff32b35e7a6c35598a4efd288229034ec0732299dbd8cfa0acff705fed3
+EBUILD dmalloc-5.6.5.ebuild 1586 BLAKE2B 99faeb74c1f67e6459bc6d4e546ae7c4703c41887f94e24461d759319fe52b21c3d5d1227fbd5d6e18b33285c4e11aa8d9553d5ed703f602d9d0a1fa6b4ad6c0 SHA512 f13311939d5aeb7a1918268ff49015dce829c0a4c26c2885dd1cc1b4ae8c8abeafefcfb838522b3a85350e884644debb9395fc3957e0285861ee55641128dc4c
+MISC metadata.xml 245 BLAKE2B 35d3566b19b5e18d70897e185aa1f37c3d9143eafc8f93f182b7add40f61283974bbbf058d16afde701168b84ee0e4e3f396b09df0c804131c27d2f56933f04b SHA512 281d535e9fa2912bfe988e396e16141f762300dce9becd3e716c6e63b080918f3f7c912b28e68d4a32656eb552ccf2ef4a7d3fbb339d7350752051a41bc8cc38
diff --git a/dev-libs/dmalloc/dmalloc-999999.ebuild b/dev-libs/dmalloc/dmalloc-5.6.5.ebuild
index e94bdfb50036..75f5f823673e 100644
--- a/dev-libs/dmalloc/dmalloc-999999.ebuild
+++ b/dev-libs/dmalloc/dmalloc-5.6.5.ebuild
@@ -1,36 +1,29 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=7
+EAPI=8
-inherit autotools git-r3 toolchain-funcs
+inherit autotools toolchain-funcs
DESCRIPTION="A Debug Malloc Library"
HOMEPAGE="https://dmalloc.com"
-EGIT_REPO_URI="https://github.com/j256/dmalloc"
+SRC_URI="https://dmalloc.com/releases/${P}.tgz"
-LICENSE="ISC"
+LICENSE="CC-BY-SA-3.0"
SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="threads"
-BDEPEND="
- app-text/texi2html
- sys-apps/texinfo
-"
-
-DOCS=(
- ChangeLog.txt README.md TODO dmalloc.html
-)
+BDEPEND="sys-apps/texinfo"
PATCHES=(
# - Build objects twice, once -fPIC for shared.
# - Use DESTDIR.
# - Fix SONAME and NEEDED.
- "${FILESDIR}"/${PN}-5.5.2-Makefile.in.patch
+ "${FILESDIR}"/${PN}-5.6.5-Makefile.in.patch
# - Broken test, always returns false.
"${FILESDIR}"/${PN}-5.5.2-cxx.patch
- "${FILESDIR}"/${PN}-5.5.2-ar.patch
- "${FILESDIR}"/${PN}-999999-texi2html.patch
+ "${FILESDIR}"/${PN}-5.6.5-configure-c99.patch
)
src_prepare() {
@@ -51,18 +44,13 @@ src_prepare() {
src_configure() {
tc-export AR
+
econf \
--enable-cxx \
--enable-shlib \
$(use_enable threads)
}
-src_compile() {
- default
-
- #makeinfo dmalloc.texi || die
-}
-
src_test() {
emake heavy
}
@@ -70,16 +58,15 @@ src_test() {
src_install() {
default
- doinfo dmalloc.info
-
# add missing symlinks, lazy
- dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so
- dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so.5
+ dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so
+ dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so.${PV%%.*}
+ local lib
for lib in cxx th thcxx; do
- dosym lib${PN}${lib}.so.5.5.2 /usr/$(get_libdir)/lib${PN}${lib}.so
- dosym lib${PN}${lib}.so.5.5.2 \
- /usr/$(get_libdir)/lib${PN}${lib}.so.5
+ dosym lib${PN}${lib}.so.${PV} /usr/$(get_libdir)/lib${PN}${lib}.so
+ dosym lib${PN}${lib}.so.${PV} \
+ /usr/$(get_libdir)/lib${PN}${lib}.so.${PV%%.*}
done
rm "${ED}"/usr/$(get_libdir)/lib${PN}*.a || die
diff --git a/dev-libs/dmalloc/files/dmalloc-5.6.5-Makefile.in.patch b/dev-libs/dmalloc/files/dmalloc-5.6.5-Makefile.in.patch
new file mode 100644
index 000000000000..2f28c6159218
--- /dev/null
+++ b/dev-libs/dmalloc/files/dmalloc-5.6.5-Makefile.in.patch
@@ -0,0 +1,343 @@
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -42,7 +42,7 @@ LIBRARY = lib$(MODULE).a
+
+ # thread version of the library
+ LIB_TH = lib$(MODULE)th.a
+-LIB_TH_SL = lib$(MODULE)th.@shlibext@
++LIB_TH_SL = lib$(MODULE)th.@shlibext@.5.5.2
+ @TH_ON@BUILD_ALL_1 = threads
+ @TH_ON@INSTALL_LIB_1 = installth
+ @SL_ON@BUILD_THREADS_1 = $(LIB_TH_SL)
+@@ -51,8 +51,8 @@ LIB_TH_SL = lib$(MODULE)th.@shlibext@
+ @TH_ON@@SL_ON@INSTALL_LIB_2 = installthsl
+
+ # C++ version of the library
+-LIB_CXX = lib$(MODULE)xx.a
+-LIB_CXX_SL = lib$(MODULE)xx.@shlibext@
++LIB_CXX = lib$(MODULE)cxx.a
++LIB_CXX_SL = lib$(MODULE)cxx.@shlibext@.5.5.2
+ @CXX_ON@BUILD_ALL_3 = $(LIB_CXX)
+ @CXX_ON@INSTALL_LIB_3 = installcxx
+ @SL_ON@BUILD_CXX_3 = $(LIB_CXX_SL)
+@@ -62,7 +62,7 @@ LIB_CXX_SL = lib$(MODULE)xx.@shlibext@
+
+ # threads + C++
+ LIB_TH_CXX = lib$(MODULE)thcxx.a
+-LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlibext@
++LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlibext@.5.5.2
+ @TH_ON@@CXX_ON@BUILD_ALL_5 = $(LIB_TH_CXX)
+ @TH_ON@@CXX_ON@INSTALL_LIB_5 = installthcxx
+ @TH_ON@BUILD_CXX_5 = $(LIB_TH_CXX)
+@@ -77,7 +77,7 @@ LIB_TH_CXX_SL = lib$(MODULE)thcxx.@shlibext@
+ @CXX_ON@@SL_ON@INSTALL_THREADS_6 = installthcxxsl
+
+ # shared versions of the libraries
+-LIB_SL = lib$(MODULE).@shlibext@
++LIB_SL = lib$(MODULE).@shlibext@.5.5.2
+ @SL_ON@BUILD_ALL_7 = $(LIB_SL)
+ @SL_ON@INSTALL_LIB_7 = installsl
+ @SL_ON@BUILD_TH_CXX_7 = $(LIB_TH_CXX_SL)
+@@ -150,9 +150,14 @@ SHELL = /bin/sh
+
+ HFLS = dmalloc.h
+ OBJS = append.o arg_check.o compat.o dmalloc_rand.o dmalloc_tab.o env.o heap.o
++OBJS_SL = arg_check_sl.o compat_sl.o dmalloc_rand_sl.o dmalloc_tab_sl.o env_sl.o heap_sl.o
++
+ NORMAL_OBJS = chunk.o error.o user_malloc.o
++NORMAL_OBJS_SL = chunk_sl.o error_sl.o user_malloc_sl.o
+ THREAD_OBJS = chunk_th.o error_th.o user_malloc_th.o
++THREAD_OBJS_SL = chunk_th_sl.o error_th_sl.o malloc_th_sl.o
+ CXX_OBJS = dmallocc.o
++CXX_OBJS_SL = dmallocc_sl.o
+
+ CFLAGS = $(CCFLAGS)
+ TEST = $(MODULE)_t
+@@ -165,9 +170,9 @@ all : $(BUILD_ALL)
+
+ clean :
+ rm -f $(A_OUT) core *.o *.t
+- rm -f $(LIBRARY) $(LIB_TH) $(LIB_CXX) $(LIB_TH_CXX) $(TEST) $(TEST_FC)
+- rm -f $(LIB_TH_SL) $(LIB_CXX_SL) $(LIB_TH_CXX_SL) $(LIB_SL)
++ rm -f $(TEST) $(TEST_FC)
+ rm -f $(UTIL) dmalloc.h
++ rm -f lib$(MODULE)*.*
+
+ realclean : clean
+
+@@ -182,65 +187,65 @@ distclean : clean
+ docs : $(DOCS) LICENSE.txt
+
+ installdirs :
+- $(srcdir)/mkinstalldirs $(includedir) $(libdir) $(bindir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(includedir) $(DESTDIR)$(libdir) $(DESTDIR)$(bindir)
+
+ installincs : $(HFLS)
+- $(srcdir)/mkinstalldirs $(includedir)
+- $(INSTALL_DATA) $(HFLS) $(includedir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(includedir)
++ $(INSTALL_DATA) $(HFLS) $(DESTDIR)$(includedir)
+
+ installthsl : $(LIB_TH_SL)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_SL) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(DESTDIR)$(LIB_TH_SL) $(DESTDIR)$(libdir)
+
+ installth : $(INSTALL_THREADS)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(LIB_TH) $(DESTDIR)$(libdir)
+ @CXX_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installthsl' to install the threaded shared-library"
+
+ installthcxxsl : $(LIB_TH_CXX_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_CXX_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(shlibdir)
++ $(INSTALL_PROGRAM) $(LIB_TH_CXX_SL) $(DESTDIR)$(shlibdir)
+
+ installthcxx : $(INSTALL_TH_CXX)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_TH_CXX) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(LIB_TH_CXX) $(DESTDIR)$(libdir)
+ @SL_OFF@ @echo "Enter 'make installthcxxsl' to install the threaded C++ shared-library"
+
+ installcxxsl : $(LIB_CXX_SL)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_CXX_SL) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(LIB_CXX_SL) $(DESTDIR)$(libdir)
+
+ installcxx : $(INSTALL_CXX)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIB_CXX) $(libdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(LIB_CXX) $(DESTDIR)$(libdir)
+ @TH_OFF@ @echo "Enter 'make installthcxx' to install the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+
+ installsl : $(LIB_SL)
+- $(srcdir)/mkinstalldirs $(shlibdir)
+- $(INSTALL_PROGRAM) $(LIB_SL) $(shlibdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(shlibdir)
++ $(INSTALL_PROGRAM) $(LIB_SL) $(DESTDIR)$(shlibdir)
+ @CXX_OFF@ @echo "Enter 'make installcxxsl' to install the C++ shared-library"
+ @TH_OFF@ @echo "Enter 'make installthsl' to install thread shared-library"
+
+ installlib : $(INSTALL_LIB)
+- $(srcdir)/mkinstalldirs $(libdir)
+- $(INSTALL_PROGRAM) $(LIBRARY) $(libdir)
+- @RANLIB@ $(libdir)/$(LIBRARY)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir)
++ $(INSTALL_PROGRAM) $(LIBRARY) $(DESTDIR)$(libdir)
++ @RANLIB@ $(DESTDIR)$(libdir)/$(LIBRARY)
+ @SL_OFF@ @echo "Enter 'make installsl' to install $(LIB_SL) in $(shlibdir)"
+ @CXX_OFF@ @echo "Enter 'make installcxx' to install the C++ library"
+ @TH_OFF@ @echo "Enter 'make installth' to install thread library"
+
+ # see notes about why we need the FILE2 entries below
+ installdocs : $(INSTALL_FILE2) $(HTML_FILE2) $(INFO_FILE)
+- $(srcdir)/mkinstalldirs $(docdir)
+- $(INSTALL_DATA) $(INSTALL_FILE2) $(docdir)/$(INSTALL_FILE)
+- $(INSTALL_DATA) $(HTML_FILE2) $(docdir)/$(HTML_FILE)
+- $(INSTALL_DATA) $(INFO_FILE) $(docdir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(docdir)
++ $(INSTALL_DATA) $(INSTALL_FILE2) $(DESTDIR)$(docdir)/$(INSTALL_FILE)
++ $(INSTALL_DATA) $(HTML_FILE2) $(DESTDIR)$(docdir)/$(HTML_FILE)
++ $(INSTALL_DATA) $(INFO_FILE) $(DESTDIR)$(docdir)
+
+ install : installincs installlib $(UTIL)
+- $(srcdir)/mkinstalldirs $(bindir)
+- $(INSTALL_PROGRAM) $(UTIL) $(bindir)
++ $(srcdir)/mkinstalldirs $(DESTDIR)$(bindir)
++ $(INSTALL_PROGRAM) $(UTIL) $(DESTDIR)$(bindir)
+ @echo "Enter 'make installdocs' to install $(DOCS) in $(docdir)"
+
+ dmalloc.h.2 conf.h settings.h version.h : $(srcdir)/configure $(srcdir)/settings.dist $(srcdir)/conf.h.in
+@@ -297,10 +302,8 @@ shlib : $(BUILD_SL)
+
+ # NOTE: you may have to edit the configure.ac script to get this to
+ # work on your operating system. Please send feedback to the author
+-$(LIB_SL) : $(LIBRARY)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIBRARY)
+- mv $@.t $@
++$(LIB_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmalloc.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL)
+
+ $(LIBRARY) : $(OBJS) $(NORMAL_OBJS)
+ ar cr $@ $?
+@@ -310,32 +313,26 @@ $(LIB_TH) : $(OBJS) $(THREAD_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_TH_SL) : $(LIB_TH)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_TH)
+- mv $@.t $@
++$(LIB_TH_SL) : $(OBJS_SL) $(THREAD_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmallocth.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL)
+
+ $(LIB_CXX) : $(OBJS) $(NORMAL_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_CXX_SL) : $(LIB_CXX)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_CXX)
+- mv $@.t $@
++$(LIB_CXX_SL) : $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmalloccxx.so.5 -o $@ $(OBJS_SL) $(NORMAL_OBJS_SL) $(CXX_OBJS_SL)
+
+ $(LIB_TH_CXX) : $(OBJS) $(THREAD_OBJS) $(CXX_OBJS)
+ ar cr $@ $?
+ @RANLIB@ $@
+
+-$(LIB_TH_CXX_SL) : $(LIB_TH_CXX)
+- rm -f $@ $@.t
+- @shlinkargs@ $(LIB_TH_CXX)
+- mv $@.t $@
++$(LIB_TH_CXX_SL) : $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
++ $(CC) -shared -Wl,-soname,libdmallocthcxx.so.5 -o $@ $(OBJS_SL) $(THREAD_OBJS_SL) $(CXX_OBJS_SL)
+
+-threadssl : $(LIB_TH_SL)
++threadssl : $(LIB_TH_SL)$(ver)
+
+-threadscxxsl : $(LIB_TH_CXX_SL)
++threadscxxsl : $(LIB_TH_CXX_SL)$(ver)
+
+ threadscxx : $(BUILD_TH_CXX)
+ @SL_OFF@ @echo "Enter 'make threadscxxsl' to build the threaded C++ shared-library"
+@@ -344,7 +341,7 @@ threads : $(BUILD_THREADS)
+ @CXX_OFF@ @echo "Enter 'make threadscxx' to build the threaded C++ library"
+ @SL_OFF@ @echo "Enter 'make threadssl' to build the threaded shared library"
+
+-cxxsl : $(LIB_CXX_SL)
++cxxsl : $(LIB_CXX_SL)$(ver)
+
+ cxx : $(BUILD_CXX)
+ @SL_OFF@ @echo "Enter 'make cxxsl' to build the cxx shared library"
+@@ -404,6 +401,11 @@ heavy : $(TEST) light
+ rm -f $@
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+
++dmallocc_sl.o : $(srcdir)/dmallocc.cc dmalloc.h
++ rm -f $@
++ $(CXX) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $(srcdir)/dmallocc.cc \
++ -o ./$@
++
+ #
+ # .cc.o auto-target doesn't work on some systems.
+ # also, $? did not work on OSF for the -c, grrr
+@@ -434,39 +436,108 @@ append.o: append.c conf.h settings.h dmalloc.h append.h compat.h \
+ dmalloc_loc.h
+ arg_check.o: arg_check.c conf.h settings.h dmalloc.h chunk.h debug_tok.h \
+ dmalloc_loc.h error.h arg_check.h
++arg_check_sl.o: arg_check.c conf.h settings.h dmalloc.h chunk.h debug_tok.h \
++ dmalloc_loc.h error.h arg_check.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ chunk.o: chunk.c conf.h settings.h dmalloc.h append.h chunk.h chunk_loc.h \
+ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h \
+ error.h error_val.h heap.h
++chunk_sl.o: chunk.c conf.h settings.h dmalloc.h append.h chunk.h chunk_loc.h \
++ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h \
++ error.h error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ compat.o: compat.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h
++compat_sl.o: compat.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc.o: dmalloc.c conf.h settings.h dmalloc_argv.h dmalloc.h append.h \
+ compat.h debug_tok.h dmalloc_loc.h env.h error_val.h version.h
++dmalloc_sl.o: dmalloc.c conf.h settings.h dmalloc_argv.h dmalloc.h compat.h \
++ debug_tok.h dmalloc_loc.h env.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_argv.o: dmalloc_argv.c conf.h settings.h append.h dmalloc_argv.h \
+ dmalloc_argv_loc.h compat.h
++dmalloc_argv_sl.o: dmalloc_argv.c conf.h settings.h dmalloc_argv.h \
++ dmalloc_argv_loc.h compat.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_fc_t.o: dmalloc_fc_t.c conf.h settings.h dmalloc.h dmalloc_argv.h \
+ dmalloc_rand.h debug_tok.h dmalloc_loc.h error_val.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_rand.o: dmalloc_rand.c dmalloc_rand.h
++dmalloc_rand_sl.o: dmalloc_rand.c dmalloc_rand.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_t.o: dmalloc_t.c conf.h settings.h append.h compat.h dmalloc.h \
+ dmalloc_argv.h dmalloc_rand.h arg_check.h debug_tok.h dmalloc_loc.h \
+ error_val.h heap.h
++dmalloc_t_sl.o: dmalloc_t.c conf.h settings.h compat.h dmalloc.h \
++ dmalloc_argv.h dmalloc_rand.h arg_check.h debug_tok.h dmalloc_loc.h \
++ error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmalloc_tab.o: dmalloc_tab.c conf.h settings.h append.h chunk.h compat.h \
+ dmalloc.h dmalloc_loc.h dmalloc_tab.h dmalloc_tab_loc.h
++dmalloc_tab_sl.o: dmalloc_tab.c conf.h settings.h chunk.h compat.h dmalloc.h \
++ dmalloc_loc.h error.h error_val.h dmalloc_tab.h dmalloc_tab_loc.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ env.o: env.c conf.h settings.h dmalloc.h append.h compat.h dmalloc_loc.h \
+ debug_tok.h env.h error.h
++env_sl.o: env.c conf.h settings.h dmalloc.h compat.h dmalloc_loc.h \
++ debug_tok.h env.h error.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ error.o: error.c conf.h settings.h dmalloc.h append.h chunk.h compat.h \
+ debug_tok.h dmalloc_loc.h env.h error.h error_val.h version.h
++error_sl.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h env.h error.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ heap.o: heap.c conf.h settings.h dmalloc.h append.h chunk.h compat.h \
+ debug_tok.h dmalloc_loc.h error.h error_val.h heap.h
++heap_sl.o: heap.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h error.h error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ protect.o: protect.c conf.h settings.h dmalloc.h dmalloc_loc.h error.h \
+ heap.h protect.h
++protect_sl.o: protect.c conf.h settings.h dmalloc.h dmalloc_loc.h error.h \
++ heap.h protect.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ user_malloc.o: user_malloc.c conf.h settings.h dmalloc.h append.h chunk.h \
+ compat.h debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
+ user_malloc.h return.h
++user_malloc_sl.o: user_malloc.c conf.h settings.h dmalloc.h append.h chunk.h \
++ compat.h debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
++ user_malloc.h return.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ dmallocc.o: dmallocc.cc dmalloc.h return.h conf.h settings.h
+ chunk_th.o: chunk.c conf.h settings.h dmalloc.h append.h chunk.h chunk_loc.h \
+ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h \
+ error.h error_val.h heap.h
++chunk_th_sl.o: chunk.c conf.h settings.h dmalloc.h chunk.h chunk_loc.h \
++ dmalloc_loc.h compat.h debug_tok.h dmalloc_rand.h dmalloc_tab.h error.h \
++ error_val.h heap.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ error_th.o: error.c conf.h settings.h dmalloc.h append.h chunk.h compat.h \
+ debug_tok.h dmalloc_loc.h env.h error.h error_val.h version.h
++error_th_sl.o: error.c conf.h settings.h dmalloc.h chunk.h compat.h debug_tok.h \
++ dmalloc_loc.h env.h error.h error_val.h version.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
+ user_malloc_th.o: user_malloc.c conf.h settings.h dmalloc.h append.h chunk.h \
+ compat.h debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
+ user_malloc.h return.h
++user_malloc_th_sl.o: malloc.c conf.h settings.h dmalloc.h chunk.h compat.h \
++ debug_tok.h dmalloc_loc.h env.h error.h error_val.h heap.h \
++ malloc_funcs.h return.h
++ rm -f $@
++ $(CC) $(CFLAGS) -fPIC $(CPPFLAGS) $(DEFS) $(INCS) -c $< -o ./$@
diff --git a/dev-libs/dmalloc/files/dmalloc-5.6.5-configure-c99.patch b/dev-libs/dmalloc/files/dmalloc-5.6.5-configure-c99.patch
new file mode 100644
index 000000000000..f4c4904a235e
--- /dev/null
+++ b/dev-libs/dmalloc/files/dmalloc-5.6.5-configure-c99.patch
@@ -0,0 +1,61 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -482,19 +482,20 @@ AC_MSG_RESULT([$ac_cv_pnt_arith_type])
+ AC_CHECK_FUNCS(abort)
+ AC_MSG_CHECKING([abort safe])
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
++#include <stdlib.h>
+ static int main_b = 0;
+ static char heap_mem[102400], *heap_p = heap_mem;
+-free () { if (main_b) _exit(0); }
++void free () { if (main_b) exit(0); }
+ char *malloc (int size) {
+ char *pnt;
+- if (main_b) _exit(0);
++ if (main_b) exit(0);
+ pnt = heap_p;
+ heap_p += size;
+ return pnt;
+ }
+ char *calloc (int number, int size) {
+ char *start, *pnt, *end;
+- if (main_b) _exit(0);
++ if (main_b) exit(0);
+ /* it should be already 0s */
+ start = malloc (number * size);
+ pnt = start;
+@@ -504,7 +505,7 @@ char *calloc (int number, int size) {
+ }
+ char *realloc (char *old_pnt, int new_size) {
+ char *start, *pnt, *end;
+- if (main_b) _exit(0);
++ if (main_b) exit(0);
+ start = malloc (new_size);
+ pnt = start;
+ end = start + new_size;
+@@ -647,6 +648,7 @@ fi
+ #
+ AC_MSG_CHECKING([constructor attribute])
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
++#include <stdlib.h>
+ /* if we call the loc_con constructor then exit with error code 0 */
+ static void loc_con() __attribute__((constructor));
+ static void loc_con() { exit(0); }
+@@ -662,6 +664,7 @@ int main() { return 1; }
+ #
+ AC_MSG_CHECKING([destructor attribute])
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
++#include <stdlib.h>
+ /* if we call the loc_decon destructor then exit with error code 0 */
+ static void loc_decon() __attribute__((destructor));
+ static void loc_decon() { exit(0); }
+--- a/configure.ac
++++ b/configure.ac
+@@ -546,6 +546,7 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM([[
+ AC_CHECK_FUNCS(getenv)
+ AC_MSG_CHECKING([getenv safe])
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
++#include <stdlib.h>
+ static char heap_mem[102400], *heap_p = heap_mem;
+ free (char *pnt) {
+ }
diff --git a/dev-libs/dmalloc/metadata.xml b/dev-libs/dmalloc/metadata.xml
index 115e9d64a669..98f616caa8cd 100644
--- a/dev-libs/dmalloc/metadata.xml
+++ b/dev-libs/dmalloc/metadata.xml
@@ -2,4 +2,7 @@
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="github">j256/dmalloc</remote-id>
+ </upstream>
</pkgmetadata>