Blame SPECS/memkind.spec

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