Blame SPECS/memkind.spec

2dfb34
%global gittag0 v1.9.0
2dfb34
%global githash 8785358
287860
287860
Name: memkind
287860
Summary: User Extensible Heap Manager
2dfb34
Version: 1.9.0
2dfb34
Release: 1%{?checkout}%{?dist}
287860
License: BSD
287860
Group: System Environment/Libraries
287860
URL: http://memkind.github.io/memkind
287860
BuildRequires: automake libtool numactl-devel systemd
287860
287860
# x86_64 is the only arch memkind will build and work due to
287860
# its current dependency on SSE4.2 CRC32 instruction which
287860
# is used to compute thread local storage arena mappings
287860
# with polynomial accumulations via GCC's intrinsic _mm_crc32_u64
287860
# For further info check: 
287860
# - /lib/gcc/<target>/<version>/include/smmintrin.h
287860
# - https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36095 
287860
# - http://en.wikipedia.org/wiki/SSE4
287860
ExclusiveArch: x86_64
287860
287860
# Source0 creation:
287860
# (1) "git archive git archive --prefix=%%{name}-%%{version}/ --format=tar [githash] | \
2dfb34
#				gzip > [srcdir]/%%{name}-%%{version}-g%%{githash}.tar.gz"; or
287860
# (2) wget https://github.com/%%{name}/%%{name}/archive/%%{gittag0}/%%{name}-%%{version}.tar.gz
2dfb34
Source0: %{name}-%{version}-g%{githash}.tar.gz
287860
287860
# void nonsensical CFLAGS override done by autotools which invalidates
287860
# the strong stack protection setup
287860
Patch0: configure.ac.patch
287860
287860
%description
287860
The memkind library is an user extensible heap manager built on top of
287860
jemalloc which enables control of memory characteristics and a
287860
partitioning of the heap between kinds of memory.  The kinds of memory
287860
are defined by operating system memory policies that have been applied
287860
to virtual address ranges. Memory characteristics supported by
287860
memkind without user extension include control of NUMA and page size
287860
features. The jemalloc non-standard interface has been extended to
287860
enable specialized arenas to make requests for virtual memory from the
287860
operating system through the memkind partition interface. Through the
287860
other memkind interfaces the user can control and extend memory
287860
partition features and allocate memory while selecting enabled
287860
features. This software is being made available for early evaluation.
287860
Feedback on design or implementation is greatly appreciated.
287860
287860
%package devel
287860
Summary: Memkind User Extensible Heap Manager development lib and tools
287860
Group: Development/Libraries
287860
Requires: %{name} = %{version}-%{release}
287860
287860
%description devel
287860
Install header files and development aids to link memkind library 
287860
into applications. The memkind library is an user extensible heap manager 
287860
built on top of jemalloc which enables control of memory characteristics and
287860
heap partitioning on different kinds of memory. This software is being made 
287860
available for early evaluation. The memkind library should be considered 
287860
pre-alpha: bugs may exist and the interfaces may be subject to change prior to 
287860
alpha release. Feedback on design or implementation is greatly appreciated.
287860
287860
%prep
287860
%setup -q -a 0 -n %{name}-%{version}
287860
%patch0 -p1
287860
287860
%build
287860
%set_build_flags
287860
287860
# It is required that we configure and build the jemalloc subdirectory
287860
# before we configure and start building the top level memkind directory.
287860
# To ensure the memkind build step is able to discover the output
287860
# of the jemalloc build we must create an 'obj' directory, and build
287860
# from within that directory.
287860
cd %{_builddir}/%{name}-%{version}
287860
echo %{version} > %{_builddir}/%{name}-%{version}/VERSION
287860
./build.sh --prefix=%{_prefix} --includedir=%{_includedir} --libdir=%{_libdir} \
287860
           --bindir=%{_bindir} --docdir=%{_docdir}/%{name} --mandir=%{_mandir} \
287860
           --sbindir=%{_sbindir}
287860
287860
%install
287860
cd %{_builddir}/%{name}-%{version}
287860
make DESTDIR=%{buildroot} INSTALL='install -p' install
287860
rm -f %{buildroot}/%{_libdir}/lib%{name}.{l,}a
287860
rm -f %{buildroot}/%{_libdir}/libautohbw.{l,}a
287860
rm -f %{buildroot}/%{_docdir}/%{name}/VERSION
287860
287860
%post -p /sbin/ldconfig
287860
287860
%postun -p /sbin/ldconfig
287860
287860
%files
287860
%defattr(-,root,root,-)
287860
%{_libdir}/lib%{name}.so.*
287860
%{_libdir}/libautohbw.so.*
287860
%{_bindir}/%{name}-hbw-nodes
287860
%dir %{_docdir}/%{name}
287860
%doc %{_docdir}/%{name}/README
287860
%license %{_docdir}/%{name}/COPYING
287860
287860
%files devel
287860
%defattr(-,root,root,-)
287860
%dir %{_includedir}/%{name}
287860
%dir %{_includedir}/%{name}/internal/
287860
%{_includedir}/%{name}/internal/*.h
287860
%{_includedir}/%{name}*.h
287860
%{_includedir}/hbwmalloc.h
287860
%{_includedir}/hbw_allocator.h
287860
%{_includedir}/pmem_allocator.h
287860
%{_libdir}/lib%{name}.so
287860
%{_libdir}/libautohbw.so
2dfb34
%{_libdir}/pkgconfig/memkind.pc
2dfb34
%{_mandir}/man1/memkind-hbw-nodes.1.*
287860
%{_mandir}/man3/hbwmalloc.3.*
287860
%{_mandir}/man3/hbwallocator.3.*
287860
%{_mandir}/man3/pmemallocator.3.*
287860
%{_mandir}/man3/%{name}*.3.*
2dfb34
%{_mandir}/man7/autohbw.7.*
287860
287860
%changelog
2dfb34
* Wed Oct 23 2019 Rafael Aquini <aquini@redhat.com> - 1.9.0-1
2dfb34
- Update to memkind source file to 1.9.0 upstream (1660589)
2dfb34
287860
* Tue Apr  2 2019 Rafael Aquini <aquini@redhat.com> - 1.7.0-6
287860
- Fix: Fix: Adding CI gating basic infrastructure (1680614)
287860
287860
* Tue Apr  2 2019 Rafael Aquini <aquini@redhat.com> - 1.7.0-5
287860
- Fix: Adding CI gating basic infrastructure (1680614)
287860
287860
* Tue Mar 12 2019 Rafael Aquini <aquini@redhat.com> - 1.7.0-4
287860
- Adding CI gating basic infrastructure (1680614)
287860
287860
* Mon Oct  8 2018 Rafael Aquini <aquini@redhat.com> - 1.7.0-3
287860
- Update to upstream 76495a7 to pick up assorted fixes (1631144)
287860
287860
* Tue Oct  2 2018 Rafael Aquini <aquini@redhat.com> - 1.7.0-2
287860
- Fix up annocheck distro flag failures (1630595)
287860
287860
* Fri Mar 23 2018 Rafael Aquini <aquini@linux.com> - 1.7.0-1
287860
- Update memkind source file to 1.7.0 upstream
287860
287860
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-4
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
287860
287860
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-3
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
287860
287860
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.5.0-2
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
287860
287860
* Mon Mar 27 2017 Rafael Aquini <aquini@linux.com> - 1.5.0-1
287860
- Update memkind source file to 1.5.0 upstream
287860
287860
* Fri Feb 17 2017 Rafael Aquini <aquini@linux.com> - 1.4.0-1
287860
- Update memkind source file to 1.4.0 upstream
287860
287860
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 1.3.0-2
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
287860
287860
* Wed Nov 16 2016 Rafael Aquini <aquini@linux.com> - 1.3.0-1
287860
- Update memkind source file to 1.3.0 upstream
287860
287860
* Wed Jun 08 2016 Rafael Aquini <aquini@linux.com> - 1.1.0-1
287860
- Update memkind source file to 1.1.0 upstream
287860
287860
* Thu Mar 17 2016 Rafael Aquini <aquini@linux.com> - 1.0.0-1
287860
- Update memkind source file to 1.0.0 upstream
287860
287860
* Sun Feb 07 2016 Rafael Aquini <aquini@linux.com> - 0.3.0-5
287860
- Fix rpmlint error dir-or-file-in-var-run for /var/run/memkind
287860
287860
* Sat Feb 06 2016 Rafael Aquini <aquini@linux.com> - 0.3.0-4
287860
- Update upstream fixes for memkind-0.3.0
287860
- Switch old init.d scripts for systemd unit service
287860
- Fix fc24 build error
287860
287860
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.0-3
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
287860
287860
* Tue Nov 17 2015 Rafael Aquini <aquini@linux.com> - 0.3.0-2
287860
- Minor clean-ups and adjustments required for the RPM
287860
287860
* Tue Nov 17 2015 Rafael Aquini <aquini@linux.com> - 0.3.0-1
287860
- Update memkind source file to 0.3.0 upstream
287860
287860
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.2.2-4.20150525git
287860
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
287860
287860
* Mon May 25 2015 Rafael Aquini <aquini@linux.com> - 0.2.2-3.20150525git
287860
- Get rid of obsolete m4 macros usage on autotool scripts
287860
287860
* Mon May 18 2015 Rafael Aquini <aquini@linux.com> - 0.2.2-2.20150525git
287860
- Fix to BuildRequires and License Text Marker in spec file (1222709#c1)
287860
287860
* Mon May 18 2015 Rafael Aquini <aquini@linux.com> - 0.2.2-1.20150518git
287860
- Initial RPM packaging for Fedora