-
Notifications
You must be signed in to change notification settings - Fork 567
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
5a51e46
commit cf55228
Showing
4 changed files
with
139 additions
and
36 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
diff --git a/Makefile.am b/Makefile.am | ||
index 94937c2..f9763c8 100644 | ||
--- a/Makefile.am | ||
+++ b/Makefile.am | ||
@@ -684,9 +684,11 @@ end | ||
endef | ||
|
||
static_lib: libmemkind.la | ||
- bash -c "ar -M < <(echo -e '$(ar_prog)')" | ||
+ echo -e "$(ar_prog)" > arprog.txt | ||
+ ar -M < arprog.txt | ||
cp libmemkind.a .libs/ | ||
rm libmemkind.a | ||
+ rm arprog.txt | ||
|
||
JEMALLOC_CONFIG = --enable-autogen @min_lg_align_opt@ --without-export --with-version=5.3.0-0-g54eaed1d8b56b1aa528be3bdd1877e59c56fa90c \ | ||
@jemalloc_build_type_flags@ @memkind_initial_exec_tls@ --with-jemalloc-prefix=@memkind_prefix@ \ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
{ | ||
"Signatures": { | ||
"memkind-1.10.0.tar.gz": "fcfd374b35d9b6865aa41fe2412f8a333aaa7a888f4adfeece56be259b3318aa" | ||
"memkind-1.14.0.tar.gz": "ab366b20b5a87ea655483631fc762ba6eb59eb6c3a08652e643f1ee3f06a6a12" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,27 +1,44 @@ | ||
%global gittag0 v1.14.0 | ||
# WORKAROUND to avoid breaking the build at the atrocious libtool shell scrip | ||
# due to RPM environmental macros being lost for the subshells | ||
%undefine _package_note_file | ||
|
||
Name: memkind | ||
Summary: User Extensible Heap Manager | ||
Version: 1.14.0 | ||
Release: 10%{?dist} | ||
License: BSD-2-Clause | ||
URL: http://memkind.github.io/memkind | ||
Vendor: Microsoft Corporation | ||
Distribution: Azure Linux | ||
%global gittag0 v1.10.0 | ||
|
||
Name: memkind | ||
Summary: User Extensible Heap Manager | ||
Version: 1.10.0 | ||
Release: 2%{?dist} | ||
License: BSD | ||
URL: http://memkind.github.io/memkind | ||
BuildRequires: automake libtool numactl-devel systemd gcc gcc-c++ | ||
|
||
# x86_64 is the only arch memkind will build and work due to | ||
# its current dependency on SSE4.2 CRC32 instruction which | ||
# is used to compute thread local storage arena mappings | ||
# with polynomial accumulations via GCC's intrinsic _mm_crc32_u64 | ||
# For further info check: | ||
# - /lib/gcc/<target>/<version>/include/smmintrin.h | ||
# - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36095 | ||
# - http://en.wikipedia.org/wiki/SSE4 | ||
ExclusiveArch: x86_64 | ||
|
||
BuildRequires: make | ||
BuildRequires: patch | ||
BuildRequires: automake | ||
BuildRequires: libtool | ||
BuildRequires: numactl-devel | ||
BuildRequires: systemd | ||
BuildRequires: gcc | ||
BuildRequires: gcc-c++ | ||
BuildRequires: daxctl-devel | ||
# memkind has been discontinued and archived upstream. See Bugzilla 2296288. | ||
# We are deprecating it now, to flag any potential user of its future removal. | ||
Provides: deprecated() | ||
|
||
# Upstream testing of memkind is done exclusively on x86_64; other archs | ||
# are unsupported but may work. | ||
ExclusiveArch: x86_64 | ||
ExclusiveArch: ppc64 | ||
ExclusiveArch: ppc64le | ||
ExclusiveArch: s390x | ||
ExclusiveArch: aarch64 | ||
|
||
Source0: https://github.com/%{name}/%{name}/archive/%{gittag0}/%{name}-%{version}.tar.gz | ||
|
||
# unbreak the atrocious autotools Makefile.am construction for | ||
# libmemkind archive creation target | ||
Patch0: Makefile.am.patch | ||
|
||
%description | ||
The memkind library is an user extensible heap manager built on top of | ||
jemalloc which enables control of memory characteristics and a | ||
|
@@ -38,8 +55,9 @@ 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} | ||
Summary: Memkind User Extensible Heap Manager development lib and tools | ||
Requires: %{name} = %{version}-%{release} | ||
Provides: deprecated() | ||
|
||
%description devel | ||
Install header files and development aids to link memkind library | ||
|
@@ -52,35 +70,40 @@ alpha release. Feedback on design or implementation is greatly appreciated. | |
|
||
%prep | ||
%setup -q -a 0 -n %{name}-%{version} | ||
%patch -P0 -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} | ||
test -f configure || ./autogen.sh | ||
%configure --enable-secure --enable-tls --prefix=%{_prefix} --libdir=%{_libdir} \ | ||
--includedir=%{_includedir} --sbindir=%{_sbindir} --bindir=%{_bindir} \ | ||
--mandir=%{_mandir} --docdir=%{_docdir}/%{name} \ | ||
CFLAGS="$RPM_OPT_FLAGS -std=gnu99" LDFLAGS="%{build_ldflags}" | ||
%{__make} V=1 | ||
|
||
%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}/%{_libdir}/libmemtier.{l,}a | ||
rm -f %{buildroot}/%{_docdir}/%{name}/VERSION | ||
|
||
%ldconfig_scriptlets | ||
|
||
%files | ||
%{_bindir}/memtier | ||
%{_libdir}/lib%{name}.so.* | ||
%{_libdir}/libautohbw.so.* | ||
%{_libdir}/libmemtier.so.* | ||
%{_bindir}/%{name}-hbw-nodes | ||
%{_bindir}/%{name}-auto-dax-kmem-nodes | ||
%{_mandir}/man1/%{name}*.1.* | ||
%{_mandir}/man1/memtier.1.* | ||
%{_mandir}/man7/autohbw.7.* | ||
%{_mandir}/man7/memtier.7.* | ||
%{_mandir}/man7/libmemtier.7.* | ||
%dir %{_docdir}/%{name} | ||
%doc %{_docdir}/%{name}/README | ||
%license %{_docdir}/%{name}/COPYING | ||
|
@@ -90,18 +113,80 @@ rm -f %{buildroot}/%{_docdir}/%{name}/VERSION | |
%{_includedir}/hbwmalloc.h | ||
%{_includedir}/hbw_allocator.h | ||
%{_includedir}/pmem_allocator.h | ||
%{_includedir}/fixed_allocator.h | ||
%{_libdir}/lib%{name}.so | ||
%{_libdir}/libautohbw.so | ||
%{_libdir}/libmemtier.so | ||
%{_libdir}/pkgconfig/memkind.pc | ||
%{_mandir}/man3/%{name}*.3.* | ||
%{_mandir}/man3/hbwmalloc.3.* | ||
%{_mandir}/man3/hbwallocator.3.* | ||
%{_mandir}/man3/pmemallocator.3.* | ||
%{_mandir}/man3/fixedallocator.3.* | ||
%{_mandir}/man3/libmemtier.3.* | ||
|
||
%changelog | ||
* Thu Oct 14 2021 Pawel Winogrodzki <[email protected]> - 1.10.0-2 | ||
- Initial CBL-Mariner import from Fedora 32 (license: MIT). | ||
- Converting the 'Release' tag to the '[number].[distribution]' format. | ||
* Wed Jan 15 2025 Akhila Guruju <[email protected]> - 1.14.0-10 | ||
- Initial Azure Linux import from Fedora 41 (license: MIT). | ||
- License verified. | ||
|
||
* Thu Jul 18 2024 Fedora Release Engineering <[email protected]> - 1.14.0-9 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild | ||
|
||
* Mon Jul 8 2024 Rafael Aquini <[email protected]> - 1.14.0-8 | ||
- Mark memkind as deprecated following its upstream discontinuation notice | ||
- Fix minor typo on memkind.spec changelog section | ||
|
||
* Thu Jan 25 2024 Fedora Release Engineering <[email protected]> - 1.14.0-7 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild | ||
|
||
* Sun Jan 21 2024 Fedora Release Engineering <[email protected]> - 1.14.0-6 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild | ||
|
||
* Wed Nov 8 2023 Rafael Aquini <[email protected]> - 1.14.0-5 | ||
- SPDX migration | ||
|
||
* Thu Jul 20 2023 Fedora Release Engineering <[email protected]> - 1.14.0-4 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild | ||
|
||
* Tue Jan 24 2023 Rafael Aquini <[email protected]> - 1.14.0-3 | ||
- Fix build issues after https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild | ||
|
||
* Thu Jan 19 2023 Fedora Release Engineering <[email protected]> - 1.14.0-2 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild | ||
|
||
* Fri Jan 13 2023 Rafael Aquini <[email protected]> - 1.14.0-1 | ||
- Update memkind source file to 1.14.0 upstream | ||
|
||
* Thu Jul 21 2022 Fedora Release Engineering <[email protected]> - 1.13.0-2 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild | ||
|
||
* Fri Jan 28 2022 Rafael Aquini <[email protected]> - 1.13.0-1 | ||
- Update memkind source file to 1.13.0 upstream | ||
|
||
* Thu Jan 20 2022 Fedora Release Engineering <[email protected]> - 1.11.0-2 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild | ||
|
||
* Mon Aug 23 2021 Rafael Aquini <[email protected]> - 1.11.0-1 | ||
- Update memkind source file to 1.11.0 upstream | ||
|
||
* Thu Jul 22 2021 Fedora Release Engineering <[email protected]> - 1.10.1-4 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild | ||
|
||
* Tue Jan 26 2021 Fedora Release Engineering <[email protected]> - 1.10.1-3 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild | ||
|
||
* Thu Oct 15 2020 Rafael Aquini <[email protected]> - 1.10.1-2 | ||
- Work around false positive warning with gcc-11 | ||
|
||
* Wed Oct 07 2020 Rafael Aquini <[email protected]> - 1.10.1-1 | ||
- Update memkind source file to 1.10.1 upstream | ||
|
||
* Wed Jul 29 2020 Jeff Law <[email protected]> - 1.10.0-3 | ||
- Avoid uninitialized variable in testsuite | ||
|
||
* Tue Jul 28 2020 Fedora Release Engineering <[email protected]> - 1.10.0-2 | ||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild | ||
|
||
* Sat Feb 01 2020 Rafael Aquini <[email protected]> - 1.10.0-1 | ||
- Update memkind source file to 1.10.0 upstream | ||
|
@@ -185,3 +270,4 @@ rm -f %{buildroot}/%{_docdir}/%{name}/VERSION | |
|
||
* Mon May 18 2015 Rafael Aquini <[email protected]> - 0.2.2-1.20150518git | ||
- Initial RPM packaging for Fedora | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters