From 62a51b1d6398b1dc025052f54d9e336872d9cf2b Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Nov 03 2021 05:07:02 +0000 Subject: import memkind-1.10.1-5.el9 --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..33fe9bb --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/memkind-1.10.1.tar.gz diff --git a/.memkind.metadata b/.memkind.metadata new file mode 100644 index 0000000..58ab007 --- /dev/null +++ b/.memkind.metadata @@ -0,0 +1 @@ +de0d9fdd1432415c005d034d8dc0ebadffbe4847 SOURCES/memkind-1.10.1.tar.gz diff --git a/SOURCES/memkind-gcc11.patch b/SOURCES/memkind-gcc11.patch new file mode 100644 index 0000000..dc3c909 --- /dev/null +++ b/SOURCES/memkind-gcc11.patch @@ -0,0 +1,32 @@ +diff --git a/memkind-1.10.1/test/gtest_fused/gtest/gtest-all.cc b/memkind-1.10.1/test/gtest_fused/gtest/gtest-all.cc +index 1120ce8..5d29d98 100644 +--- a/memkind-1.10.1/test/gtest_fused/gtest/gtest-all.cc ++++ b/memkind-1.10.1/test/gtest_fused/gtest/gtest-all.cc +@@ -7944,9 +7944,9 @@ void StackLowerThanAddress(const void* ptr, bool* result) { + // Make sure AddressSanitizer does not tamper with the stack here. + GTEST_ATTRIBUTE_NO_SANITIZE_ADDRESS_ + bool StackGrowsDown() { +- int dummy; ++ volatile int dummy = 0; + bool result; +- StackLowerThanAddress(&dummy, &result); ++ StackLowerThanAddress((const void *)&dummy, &result); + return result; + } + +diff --git a/test/gtest_fused/gtest/gtest-all.cc b/test/gtest_fused/gtest/gtest-all.cc +index 1120ce8..5d29d98 100644 +--- a/test/gtest_fused/gtest/gtest-all.cc ++++ b/test/gtest_fused/gtest/gtest-all.cc +@@ -7944,9 +7944,9 @@ void StackLowerThanAddress(const void* ptr, bool* result) { + // Make sure AddressSanitizer does not tamper with the stack here. + GTEST_ATTRIBUTE_NO_SANITIZE_ADDRESS_ + bool StackGrowsDown() { +- int dummy; ++ volatile int dummy = 0; + bool result; +- StackLowerThanAddress(&dummy, &result); ++ StackLowerThanAddress((const void *)&dummy, &result); + return result; + } + diff --git a/SPECS/memkind.spec b/SPECS/memkind.spec new file mode 100644 index 0000000..68bbe3b --- /dev/null +++ b/SPECS/memkind.spec @@ -0,0 +1,201 @@ +%global gittag0 v1.10.1 + +Name: memkind +Summary: User Extensible Heap Manager +Version: 1.10.1 +Release: 5%{?checkout}%{?dist} +License: BSD +URL: http://memkind.github.io/memkind +BuildRequires: make +BuildRequires: automake libtool numactl-devel systemd gcc gcc-c++ daxctl-devel + +# Upstream testing of memkind is done exclusively on x86_64; other archs +# are unsupported but may work. +ExclusiveArch: x86_64 ppc64 ppc64le s390x aarch64 + +Source0: https://github.com/%{name}/%{name}/archive/%{gittag0}/%{name}-%{version}.tar.gz +# Work around false positive Wuninitialized warning with gcc-11 +Patch0: memkind-gcc11.patch + +%description +The memkind library is an user extensible heap manager built on top of +jemalloc which enables control of memory characteristics and a +partitioning of the heap between kinds of memory. The kinds of memory +are defined by operating system memory policies that have been applied +to virtual address ranges. Memory characteristics supported by +memkind without user extension include control of NUMA and page size +features. The jemalloc non-standard interface has been extended to +enable specialized arenas to make requests for virtual memory from the +operating system through the memkind partition interface. Through the +other memkind interfaces the user can control and extend memory +partition features and allocate memory while selecting enabled +features. This software is being made available for early evaluation. +Feedback on design or implementation is greatly appreciated. + +%package devel +Summary: Memkind User Extensible Heap Manager development lib and tools +Requires: %{name} = %{version}-%{release} + +%description devel +Install header files and development aids to link memkind library +into applications. The memkind library is an user extensible heap manager +built on top of jemalloc which enables control of memory characteristics and +heap partitioning on different kinds of memory. This software is being made +available for early evaluation. The memkind library should be considered +pre-alpha: bugs may exist and the interfaces may be subject to change prior to +alpha release. Feedback on design or implementation is greatly appreciated. + +%prep +%setup -q -a 0 -n %{name}-%{version} +%patch0 -p1 + +%build +# It is required that we configure and build the jemalloc subdirectory +# before we configure and start building the top level memkind directory. +# To ensure the memkind build step is able to discover the output +# of the jemalloc build we must create an 'obj' directory, and build +# from within that directory. +cd %{_builddir}/%{name}-%{version} +echo %{version} > %{_builddir}/%{name}-%{version}/VERSION +./build.sh --prefix=%{_prefix} --includedir=%{_includedir} --libdir=%{_libdir} \ + --bindir=%{_bindir} --docdir=%{_docdir}/%{name} --mandir=%{_mandir} \ + --sbindir=%{_sbindir} + +%install +cd %{_builddir}/%{name}-%{version} +make DESTDIR=%{buildroot} INSTALL='install -p' install +rm -f %{buildroot}/%{_libdir}/lib%{name}.{l,}a +rm -f %{buildroot}/%{_libdir}/libautohbw.{l,}a +rm -f %{buildroot}/%{_docdir}/%{name}/VERSION + +%ldconfig_scriptlets + +%files +%{_libdir}/lib%{name}.so.* +%{_libdir}/libautohbw.so.* +%{_bindir}/%{name}-hbw-nodes +%{_bindir}/%{name}-auto-dax-kmem-nodes +%{_mandir}/man1/%{name}*.1.* +%{_mandir}/man7/autohbw.7.* +%dir %{_docdir}/%{name} +%doc %{_docdir}/%{name}/README +%license %{_docdir}/%{name}/COPYING + +%files devel +%{_includedir}/%{name}*.h +%{_includedir}/hbwmalloc.h +%{_includedir}/hbw_allocator.h +%{_includedir}/pmem_allocator.h +%{_libdir}/lib%{name}.so +%{_libdir}/libautohbw.so +%{_libdir}/pkgconfig/memkind.pc +%{_mandir}/man3/%{name}*.3.* +%{_mandir}/man3/hbwmalloc.3.* +%{_mandir}/man3/hbwallocator.3.* +%{_mandir}/man3/pmemallocator.3.* + +%changelog +* Mon Aug 09 2021 Mohan Boddu - 1.10.1-5 +- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags + Related: rhbz#1991688 + +* Fri Apr 16 2021 Mohan Boddu - 1.10.1-4 +- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 + +* Tue Jan 26 2021 Fedora Release Engineering - 1.10.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Thu Oct 15 2020 Rafael Aquini - 1.10.1-2 +- Work around false positive warning with gcc-11 + +* Wed Oct 07 2020 Rafael Aquini - 1.10.1-1 +- Update memkind source file to 1.10.1 upstream + +* Wed Jul 29 2020 Jeff Law - 1.10.0-3 +- Avoid uninitialized variable in testsuite + +* Tue Jul 28 2020 Fedora Release Engineering - 1.10.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Sat Feb 01 2020 Rafael Aquini - 1.10.0-1 +- Update memkind source file to 1.10.0 upstream + +* Wed Jan 29 2020 Fedora Release Engineering - 1.9.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Dec 14 2019 Jeff Law - 1.9.0-3 +- Fix missing #include for gcc-10 + +* Thu Jul 25 2019 Fedora Release Engineering - 1.9.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Jul 10 2019 Rafael Aquini - 1.9.0-1 +- Update memkind source file to 1.9.0 upstream + +* Fri Feb 01 2019 Fedora Release Engineering - 1.7.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 20 2018 Rafael Aquini - 1.7.0-3 +- Rebuild to fix removal of GCC from buildroots (1604813) + +* Fri Jul 13 2018 Fedora Release Engineering - 1.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Fri Mar 23 2018 Rafael Aquini - 1.7.0-1 +- Update memkind source file to 1.7.0 upstream + +* Thu Feb 08 2018 Fedora Release Engineering - 1.5.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 1.5.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon Mar 27 2017 Rafael Aquini - 1.5.0-1 +- Update memkind source file to 1.5.0 upstream + +* Fri Feb 17 2017 Rafael Aquini - 1.4.0-1 +- Update memkind source file to 1.4.0 upstream + +* Fri Feb 10 2017 Fedora Release Engineering - 1.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Nov 16 2016 Rafael Aquini - 1.3.0-1 +- Update memkind source file to 1.3.0 upstream + +* Wed Jun 08 2016 Rafael Aquini - 1.1.0-1 +- Update memkind source file to 1.1.0 upstream + +* Thu Mar 17 2016 Rafael Aquini - 1.0.0-1 +- Update memkind source file to 1.0.0 upstream + +* Sun Feb 07 2016 Rafael Aquini - 0.3.0-5 +- Fix rpmlint error dir-or-file-in-var-run for /var/run/memkind + +* Sat Feb 06 2016 Rafael Aquini - 0.3.0-4 +- Update upstream fixes for memkind-0.3.0 +- Switch old init.d scripts for systemd unit service +- Fix fc24 build error + +* Thu Feb 04 2016 Fedora Release Engineering - 0.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Tue Nov 17 2015 Rafael Aquini - 0.3.0-2 +- Minor clean-ups and adjustments required for the RPM + +* Tue Nov 17 2015 Rafael Aquini - 0.3.0-1 +- Update memkind source file to 0.3.0 upstream + +* Wed Jun 17 2015 Fedora Release Engineering - 0.2.2-4.20150525git +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Mon May 25 2015 Rafael Aquini - 0.2.2-3.20150525git +- Get rid of obsolete m4 macros usage on autotool scripts + +* Mon May 18 2015 Rafael Aquini - 0.2.2-2.20150525git +- Fix to BuildRequires and License Text Marker in spec file (1222709#c1) + +* Mon May 18 2015 Rafael Aquini - 0.2.2-1.20150518git +- Initial RPM packaging for Fedora