!4 Upgrade to version v1.13.0 and build for AArch64

From: @hesham-almatary 
Reviewed-by: @liqingqing_1229 
Signed-off-by: @liqingqing_1229
This commit is contained in:
openeuler-ci-bot 2022-06-15 02:25:25 +00:00 committed by Gitee
commit 68c3e4b557
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
4 changed files with 20 additions and 79 deletions

View File

@ -1,67 +0,0 @@
From: Lu Weitao <luweitaobe@163.com>
Date: Thu, 12 Aug 2021 15:20:40 +0800
Subject: [PATCH 5/5] fix-multi-define
[Why]
met multiple definition as bellow:
[ 117s] /usr/bin/ld: test/alloc_benchmark_tbb-load_tbbmalloc_symbols.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:28: multiple definition of `scalable_mallo
c'; test/alloc_benchmark_tbb-alloc_benchmark.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:28: first defined here
[ 117s] /usr/bin/ld: test/alloc_benchmark_tbb-load_tbbmalloc_symbols.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:29: multiple definition of `scalable_reall
oc'; test/alloc_benchmark_tbb-alloc_benchmark.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:29: first defined here
[ 117s] /usr/bin/ld: test/alloc_benchmark_tbb-load_tbbmalloc_symbols.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:30: multiple definition of `scalable_callo
c'; test/alloc_benchmark_tbb-alloc_benchmark.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:30: first defined here
[ 117s] /usr/bin/ld: test/alloc_benchmark_tbb-load_tbbmalloc_symbols.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:31: multiple definition of `scalable_free'
; test/alloc_benchmark_tbb-alloc_benchmark.o:/home/abuild/rpmbuild/BUILD/memkind-1.7.0/test/tbbmalloc.h:31: first defined here
Signed-off-by: Lu Weitao <luweitaobe@163.com>
---
memkind-1.7.0/test/alloc_benchmark.c | 2 ++
memkind-1.7.0/test/load_tbbmalloc_symbols.c | 3 +++
memkind-1.7.0/test/tbbmalloc.h | 8 ++++----
3 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/test/alloc_benchmark.c b/test/alloc_benchmark.c
--- a/test/alloc_benchmark.c
+++ b/test/alloc_benchmark.c
@@ -47,6 +47,8 @@
double ctimer(void);
void usage(char * name);
+void* (*scalable_malloc)(size_t);
+void (*scalable_free)(void*);
int main(int argc, char * argv[])
{
diff --git a/test/load_tbbmalloc_symbols.c b/test/load_tbbmalloc_symbols.c
--- a/test/load_tbbmalloc_symbols.c
+++ b/test/load_tbbmalloc_symbols.c
@@ -24,6 +24,9 @@
#include "tbbmalloc.h"
+void* (*scalable_realloc)(void*, size_t);
+void* (*scalable_calloc)(size_t, size_t);
+
int load_tbbmalloc_symbols()
{
const char so_name[]="libtbbmalloc.so.2";
diff --git a/test/tbbmalloc.h b/test/tbbmalloc.h
--- a/test/tbbmalloc.h
+++ b/test/tbbmalloc.h
@@ -25,9 +25,9 @@
#include <stdio.h>
#include <dlfcn.h>
-void* (*scalable_malloc)(size_t);
-void* (*scalable_realloc)(void*, size_t);
-void* (*scalable_calloc)(size_t, size_t);
-void (*scalable_free)(void*);
+extern void* (*scalable_malloc)(size_t);
+extern void* (*scalable_realloc)(void*, size_t);
+extern void* (*scalable_calloc)(size_t, size_t);
+extern void (*scalable_free)(void*);
int load_tbbmalloc_symbols();
--
2.23.0

BIN
memkind-1.13.0.tar.gz Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,14 +1,13 @@
Name: memkind
Summary: Extensible Heap Manager for User
Version: 1.7.0
Release: 5
Version: 1.13.0
Release: 1
License: BSD
URL: http://memkind.github.io/memkind
Source0: https://github.com/memkind/memkind/archive/v1.7.0/%{name}-%{version}.tar.gz
Patch0001: 0001-fix-multi-define.patch
Source0: https://github.com/memkind/memkind/archive/v1.13.0/%{name}-%{version}.tar.gz
BuildRequires: automake libtool numactl-devel systemd gcc gcc-c++
ExclusiveArch: x86_64
ExclusiveArch: x86_64 aarch64
%description
The kinds of memory are defined by operating system memory policies that have been applied
@ -32,15 +31,15 @@ Help documents for memkind.
%autosetup -a 0 -n %{name}-%{version} -p1
%build
pushd %{_builddir}/memkind-1.7.0
echo 1.7.0 > %{_builddir}/memkind-1.7.0/VERSION
pushd %{_builddir}/memkind-1.13.0
echo 1.13.0 > %{_builddir}/memkind-1.13.0/VERSION
./build.sh --prefix=%{_prefix} --includedir=%{_includedir} --libdir=%{_libdir} \
--bindir=%{_bindir} --docdir=%{_docdir}/memkind --mandir=%{_mandir} \
--sbindir=%{_sbindir}
popd
%install
pushd %{_builddir}/memkind-1.7.0
pushd %{_builddir}/memkind-1.13.0
%make_install
popd
@ -52,29 +51,38 @@ popd
%files
%{_libdir}/libmemkind.so.*
%{_libdir}/libmemtier.so.*
%{_libdir}/libautohbw.so.*
%{_bindir}/memkind-hbw-nodes
%{_bindir}/memkind-auto-dax-kmem-nodes
%dir %{_docdir}/memkind
%doc %{_docdir}/memkind/COPYING
%files devel
%dir %{_includedir}/memkind
%dir %{_includedir}/memkind/internal/
%{_includedir}/memkind/internal/*.h
%{_includedir}/fixed_allocator.h
%{_includedir}/memkind*.h
%{_includedir}/hbwmalloc.h
%{_includedir}/hbw_allocator.h
%{_includedir}/pmem_allocator.h
%{_libdir}/libmemkind.so
%{_libdir}/libmemtier.so
%{_libdir}/libautohbw.so
%exclude %{_libdir}/libmemkind.{l,}a
%exclude %{_libdir}/libmemtier.{l,}a
%exclude %{_libdir}/libautohbw.{l,}a
%exclude %{_libdir}/pkgconfig/memkind.pc
%exclude %{_docdir}/memkind/VERSION
%files help
%doc %{_docdir}/memkind/README
%{_mandir}/man1/*
%{_mandir}/man3/*
%{_mandir}/man7/*
%changelog
* Mon Jun 6 2022 Hesham Almatary <hesham.almatary@huawei.com> - 1.13.0-1
- Upgrade to version 1.13.0 and allow building for aarch64
* Wed Aug 2 2021 luweitao <luweitaobe@163.com> - 2.7.1-12
- fix compile failure by GCC-10