abde39
Name: libhugetlbfs
abde39
Version: 2.16
39b936
Release: 13%{?dist}
abde39
Summary: A library which provides easy access to huge pages of memory
abde39
Group: System Environment/Libraries
abde39
License: LGPLv2+
abde39
URL: http://libhugetlbfs.sourceforge.net/
abde39
Source0: http://downloads.sourceforge.net/libhugetlbfs/%{name}-%{version}.tar.gz
abde39
Patch0: libhugetlbfs-2.16-s390.patch
abde39
Patch1: libhugetlbfs-2.15-fortify.patch
226aa2
Patch2: libhugetlbfs-2.16-misalign_test.patch
226aa2
Patch3: libhugetlbfs-2.17-aarch64.patch
226aa2
Patch4: libhugetlbfs-2.16-makefile_cflags.patch
7f92c5
Patch5: libhugetlbfs-2.16-makefile_segments.patch
7f92c5
Patch6: libhugetlbfs-2.16-mounts_warning.patch
7f92c5
Patch7: libhugetlbfs-2.16-ppc64le-support.patch
7f92c5
Patch8: libhugetlbfs-2.16-plt_extrasz_fix.patch
7f92c5
Patch9: libhugetlbfs-2.16-map_high_truncate.patch
786277
Patch10:libhugetlbfs-2.20-tests-linkhuge_rw-function-ptr-may-not-refer-to-text.patch
786277
Patch11:libhugetlbfs-2.20-do-not-assume-default-huge-page-size-is-first.patch
39b936
Patch12:libhugetlbfs-2.20-defined-task-size-value-to-be-512T-if-it-is-more-than-64Tb.patch
39b936
# downstream patches for bz#1422960
39b936
Patch13: 0001-testutils-fix-range_is_mapped.patch
39b936
Patch14: 0002-stack_grow_into_huge-don-t-clobber-existing-mappings.patch
786277
abde39
BuildRequires: glibc-devel
abde39
BuildRequires: glibc-static
abde39
abde39
%define ldscriptdir %{_datadir}/%{name}/ldscripts
abde39
abde39
%description
abde39
libhugetlbfs is a library which provides easy access to huge pages of memory.
abde39
It is a wrapper for the hugetlbfs file system. Applications can use huge pages
abde39
to fulfill malloc() requests without being recompiled by using LD_PRELOAD.
abde39
Alternatively, applications can be linked against libhugetlbfs without source
abde39
modifications to load BSS or BSS, data, and text segments into large pages.
abde39
abde39
%package devel
abde39
Summary:	Header files for libhugetlbfs
abde39
Group:		Development/Libraries
abde39
Requires:	%{name} = %{version}-%{release}
abde39
%description devel
abde39
Contains header files for building with libhugetlbfs.
abde39
abde39
%package utils
abde39
Summary:	Userspace utilities for configuring the hugepage environment
abde39
Group:		Applications/System
abde39
Requires:	%{name} = %{version}-%{release}
abde39
%description utils
abde39
This packages contains a number of utilities that will help administrate the
abde39
use of huge pages on your system.  hugeedit modifies binaries to set default
abde39
segment remapping behavior. hugectl sets environment variables for using huge
abde39
pages and then execs the target program. hugeadm gives easy access to huge page
abde39
pool size control. pagesize lists page sizes available on the machine.
abde39
abde39
%prep
abde39
%setup -q -n %{name}-%{version}
abde39
%patch0 -p1 -b .s390
abde39
%patch1 -p1 -b .fortify
226aa2
%patch2 -p1 -b .misalign_test
226aa2
%patch3 -p1 -b .aarch64
226aa2
%patch4 -p1 -b .makefile_cflags
7f92c5
%patch5 -p1 -b .makefile_segments
7f92c5
%patch6 -p1 -b .mounts_warning
7f92c5
%patch7 -p1 -b .ppc64le_support
7f92c5
%patch8 -p1 -b .plt_extrasz_fix
7f92c5
%patch9 -p1 -b .map_high_truncate
786277
%patch10 -p1 -b .linkhuge_rw-func
786277
%patch11 -p1 -b .default-huge-page
39b936
%patch12 -p1 -b .defined-task-size
39b936
%patch13 -p1 -b .bz1422960.patch-1
39b936
%patch14 -p1 -b .bz1422960.patch-2
abde39
abde39
%build
7f92c5
ln -s sys-elf64ppc.S sys-elf64lppc.S
7f92c5
ln -s elf64ppc.c elf64lppc.c
abde39
# Parallel builds are not reliable
abde39
make BUILDTYPE=NATIVEONLY
abde39
abde39
%install
abde39
make install PREFIX=%{_prefix} DESTDIR=$RPM_BUILD_ROOT LDSCRIPTDIR=%{ldscriptdir} BUILDTYPE=NATIVEONLY
abde39
make install-helper PREFIX=%{_prefix} DESTDIR=$RPM_BUILD_ROOT LDSCRIPTDIR=%{ldscriptdir} BUILDTYPE=NATIVEONLY
abde39
mkdir -p -m755 $RPM_BUILD_ROOT%{_sysconfdir}/security/limits.d
abde39
touch $RPM_BUILD_ROOT%{_sysconfdir}/security/limits.d/hugepages.conf
abde39
abde39
# remove statically built libraries:
abde39
rm -f $RPM_BUILD_ROOT/%{_libdir}/*.a
abde39
# remove unused sbin directory
abde39
rm -fr $RPM_BUILD_ROOT/%{_sbindir}/
abde39
abde39
%post -p /sbin/ldconfig
abde39
abde39
%postun -p /sbin/ldconfig
abde39
abde39
%files
abde39
%{_libdir}/libhugetlbfs.so*
abde39
%{_datadir}/%{name}/
abde39
%{_mandir}/man7/libhugetlbfs.7.gz
abde39
%ghost %config(noreplace) %{_sysconfdir}/security/limits.d/hugepages.conf
abde39
%exclude %{_libdir}/libhugetlbfs_privutils.so
abde39
%doc README HOWTO LGPL-2.1 NEWS
abde39
abde39
%files devel
abde39
%{_includedir}/hugetlbfs.h
abde39
%{_mandir}/man3/getpagesizes.3.gz
abde39
%{_mandir}/man3/free_huge_pages.3.gz
abde39
%{_mandir}/man3/get_huge_pages.3.gz
abde39
%{_mandir}/man3/gethugepagesize.3.gz
abde39
%{_mandir}/man3/gethugepagesizes.3.gz
abde39
%{_mandir}/man3/free_hugepage_region.3.gz
abde39
%{_mandir}/man3/get_hugepage_region.3.gz
abde39
%{_mandir}/man3/hugetlbfs_find_path.3.gz
abde39
%{_mandir}/man3/hugetlbfs_find_path_for_size.3.gz
abde39
%{_mandir}/man3/hugetlbfs_test_path.3.gz
abde39
%{_mandir}/man3/hugetlbfs_unlinked_fd.3.gz
abde39
%{_mandir}/man3/hugetlbfs_unlinked_fd_for_size.3.gz
abde39
abde39
%files utils
abde39
%{_bindir}/hugeedit
abde39
%{_bindir}/hugeadm
abde39
%{_bindir}/hugectl
abde39
%{_bindir}/pagesize
abde39
%{_bindir}/huge_page_setup_helper.py
abde39
%exclude %{_bindir}/cpupcstat
abde39
%exclude %{_bindir}/oprofile_map_events.pl
abde39
%exclude %{_bindir}/oprofile_start.sh
abde39
%{_mandir}/man8/hugeedit.8.gz
abde39
%{_mandir}/man8/hugectl.8.gz
abde39
%{_mandir}/man8/hugeadm.8.gz
abde39
%{_mandir}/man1/pagesize.1.gz
abde39
%{_mandir}/man1/ld.hugetlbfs.1.gz
abde39
%exclude %{_mandir}/man8/cpupcstat.8.gz
abde39
%exclude /usr/lib/perl5/TLBC
abde39
abde39
%changelog
39b936
* Thu Aug 02 2018 Rafael Aquini <aquini@redhat.com> - 2.16-13
39b936
- tests/stack_grow_into libhugetlbfs test fixes (#1422960)
39b936
- PPC vm/hugepage/libhugetlbfs test fix (#1515365)
39b936
786277
* Tue Jun 07 2016 Petr holasek <pholasek@redhat.com> - 2.16-12
786277
- linkhuge_rw test fix (#1240568)
786277
- hugeadm fix for firestone ppc systems (#1258622)
786277
7f92c5
* Mon Dec 15 2014 Petr Holasek <pholasek@redhat.com> - 2.16-11
7f92c5
- map_high_truncate_2 test fix (#1161677)
7f92c5
7f92c5
* Thu Nov 06 2014 Petr Holasek <pholasek@redhat.com> - 2.16-10
7f92c5
- fix plt_extrasz() always returning 0 on ppc64le (#1160217)
7f92c5
7f92c5
* Wed Aug 13 2014 Petr Holasek <pholasek@redhat.com> - 2.16-9
7f92c5
- ppc64le support (#1125576)
7f92c5
7f92c5
* Tue Jul 29 2014 Petr Holasek <pholasek@redhat.com> - 2.16-8
7f92c5
- Fixed malloc failures in testsuite
7f92c5
- Fixed warning when /etc/mtab is symlink
7f92c5
226aa2
* Mon Mar 03 2014 Petr Holasek <pholasek@redhat.com> - 2.16-7
226aa2
- Compiling with -fstack-protector-strong flag (#1070772)
226aa2
226aa2
* Wed Feb 12 2014 Petr Holasek <pholasek@redhat.com> - 2.16-6
226aa2
- Backport patches from 2.17 for AArch64 support.
226aa2
226aa2
* Tue Feb 11 2014 Petr Holasek <pholasek@redhat.com> - 2.16-5
226aa2
- Fix of misalign test (#1034549)
226aa2
226aa2
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 2.16-4
226aa2
- Mass rebuild 2014-01-24
226aa2
226aa2
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 2.16-3
226aa2
- Mass rebuild 2013-12-27
226aa2
abde39
* Sun May 12 2013 Anton Arapov <anton@redhat.com> - 2.16-2
abde39
- Fortify code
abde39
- Fix s390 build issues (#960107)
abde39
abde39
* Mon Apr 29 2013 Peter Robinson <pbrobinson@fedoraproject.org> - 2.16-1
abde39
- Upstream 2.16 release (adds ARM support)
abde39
abde39
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.15-2
abde39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
abde39
abde39
* Sat Dec 08 2012 Eric B Munson <emunson@mgebm.net> - 2.15
abde39
- Update for upstream 2.15 release
abde39
abde39
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.13-2
abde39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
abde39
abde39
* Sat Mar 24 2012 Eric B Munson <emunson@mgebm.net>
abde39
- Update for upstream 2.13 release
abde39
abde39
* Wed Jul 20 2011 Eric B Munson <emunson@mgebm.net>
abde39
- Update for upstream 2.12 release
abde39
abde39
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.9-2
abde39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
abde39
abde39
* Mon Apr 05 2010 Eric B Munson <ebmunson@us.ibm.com> 2.8-1
abde39
- Update for upstream 2.8 release
abde39
abde39
* Wed Feb 10 2010 Eric B Munson <ebmunson@us.ibm.com> 2.7-2
abde39
- Include patch that fixes build on ppc
abde39
abde39
* Tue Jan 05 2010 Eric B Munson <ebmunson@us.ibm.com> 2.7-1
abde39
- Update for upstream 2.7 release
abde39
abde39
* Fri Oct 02 2009 Jarod Wilson <jarod@redhat.com> 2.6-3
abde39
- Add hopefully-about-to-be-merged-upstream hugeadm enhancements
abde39
- Add huge pages setup helper script, using new hugeadm enhancements
abde39
abde39
* Thu Sep 03 2009 Nils Philippsen <nils@redhat.com> 2.6-2
abde39
- fix building on s390x
abde39
abde39
* Mon Aug 31 2009 Eric Munson <ebmunson@us.ibm.com> 2.6-1
abde39
- Updating for the libhugetlbfs-2.6 release
abde39
abde39
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.5-3
abde39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
abde39
abde39
* Mon Jul 20 2009 Eric Munson <ebmunson@us.ibm.com> 2.5-2
abde39
- Update Group for -utils package to Applications/System
abde39
abde39
* Tue Jun 30 2009 Eric Munson <ebmunson@us.ibm.com> 2.5-1
abde39
- Updating for the libhugetlbfs-2.5 release
abde39
abde39
* Tue Jun 02 2009 Eric Munson <ebmunson@us.ibm.com> 2.4-2
abde39
- Adding patch to remove S390 32 bit build
abde39
abde39
* Fri May 29 2009 Eric Munson <ebmunson@us.ibm.com> 2.4-1
abde39
- Updating for the libhugetlbfs-2.4 release
abde39
abde39
* Wed Apr 15 2009 Eric Munson <ebmunson@us.ibm.com> 2.3-1
abde39
- Updating for the libhugetlbfs-2.3 release
abde39
abde39
* Wed Feb 11 2009 Eric Munson <ebmunson@us.ibm.com> 2.2-1
abde39
- Updating for the libhugetlbfs-2.2 release
abde39
abde39
* Fri Dec 19 2008 Eric Munson <ebmunson@us.ibm.com> 2.1.2-1
abde39
- Updating for libhugetlbfs-2.1.2 release
abde39
abde39
* Fri Dec 19 2008 Eric Munson <ebmunson@us.ibm.com> 2.1.1-1
abde39
- Updating for libhugetlbfs-2.1.1 release
abde39
abde39
* Thu Dec 18 2008 Josh Boyer <jwboyer@gmail.com> 2.1-2
abde39
- Fix broken dependency caused by just dropping -test
abde39
  subpackage
abde39
abde39
* Thu Oct 16 2008 Eric Munson <ebmunson@us.ibm.com> 2.1-1
abde39
- Updating for libhuge-2.1 release
abde39
- Adding -devel and -utils subpackages for various utilities
abde39
  and devel files.
abde39
abde39
* Wed May 14 2008 Eric Munson <ebmunson@us.ibm.com> 1.3-1
abde39
- Updating for libhuge-1.3 release
abde39
abde39
* Tue Mar 25 2008 Eric Munson <ebmunson@us.ibm.com> 1.2-1
abde39
- Removing test rpm target, and excluding test files
abde39
abde39
* Mon Mar 26 2007 Steve Fox <drfickle@k-lug.org> - 1.1-1
abde39
- New release (1.1)
abde39
- Fix directory ownership
abde39
abde39
* Wed Aug 30 2006 Steve Fox <drfickle@k-lug.org> - 0.20060825-1
abde39
- New release (1.0-preview4)
abde39
- patch0 (Makefile-ldscript.diff) merged upstream
abde39
abde39
* Tue Jul 25 2006 Steve Fox <drfickle@k-lug.org> - 0.20060706-4
abde39
- Bump for build system
abde39
abde39
* Tue Jul 25 2006 Steve Fox <drfickle@k-lug.org> - 0.20060706-3
abde39
- Don't use parallel build as it has random failures
abde39
abde39
* Thu Jul 20 2006 Steve Fox <drfickle@k-lug.org> - 0.20060706-2
abde39
- Fix the Makefile so that the ld.hugetlbfs script doesn't store the
abde39
  DESTDIR in the path to the ldscripts dir
abde39
abde39
* Fri Jul 7 2006 Steve Fox <drfickle@k-lug.org> - 0.20060706-1
abde39
- New release which includes a fix for the syscall macro removal in the
abde39
  Rawhide kernels
abde39
abde39
* Thu Jun 29 2006 Steve Fox <drfickle@k-lug.org> - 0.20060628-1
abde39
- First Fedora package