libhugetlbfs/libhugetlbfs.spec

177 lines
5.9 KiB
RPMSpec

#
# spec file for package libhugetlbfs (Version 2.0)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: libhugetlbfs
BuildRequires: doxygen
License: LGPL v2.1 or later
Group: Development/Libraries/Other
Summary: hugetlbfs helper library
Version: 2.0
Release: 8
Url: http://libhugetlbfs.sourceforge.net/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%define my_make_flags V=1 CFLAGS="$RPM_OPT_FLAGS -g -fPIC" BUILDTYPE=NATIVEONLY PREFIX=/usr LIBDIR32=%{_libdir} DESTDIR=$RPM_BUILD_ROOT
Source0: libhugetlbfs-%{version}.tar.bz2
Patch0: libhugetlbfs.install-header.patch
Patch1: libhugetlbfs.ia64-libdir.patch
Patch2: libhugetlbfs.s390.patch
Patch3: libhugetlbfs.tests-malloc.patch
Patch4: libhugetlbfs.linkerscript.patch
Patch5: libhugetlbfs.small_bss.patch
%description
libhugetlbfs interacts with the Linux hugetlbfs to make large pages
available to applications in a transparent manner.
Authors:
--------
David Gibson <dwg@au1.ibm.com>
Adam Litke <agl@us.ibm.com>
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
make %{my_make_flags} libs $tests
%install
tests=
%ifarch ppc ppc64 %ix86 x86_64
tests=install-tests
%endif
make %{my_make_flags} install $tests
mkdir -p $RPM_BUILD_ROOT/usr/include
cp -avL hugetlbfs.h $RPM_BUILD_ROOT/usr/include
chmod 644 $RPM_BUILD_ROOT%{_libdir}/*.a
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-, root, root)
%doc LGPL-2.1 HOWTO README NEWS
/usr/share/libhugetlbfs
/usr/bin/*
/usr/include/*
%{_libdir}/lib*
%changelog
* Thu Nov 06 2008 olh@suse.de
- fix libhugetlbfs 32bit test case xB.linkhuge failure (bnc#442209 - LTC49702)
* Tue Oct 21 2008 olh@suse.de
- handle older binutils versions in elf32ppclinux.xBDT (bnc#436451 - LTC49076)
* Wed Aug 27 2008 olh@suse.de
- update to version 2.0 (fate#304340)
New Features
* New scriptless relinking for binutils >= 2.17
* Added direct allocator API for huge pages
Bug Fixes
* /proc/mounts is parsed line at a time to handle file larger than 4kb
* Read-only mappings use MAP_NORESERVE
* Wed Jun 25 2008 olh@suse.de
- update to version 1.3
New features
* Add HUGETLB_NO_PREFAULT to control prefaulting of huge pages via mlock
* Add "[hostname:pid]" to output messages
* Setup for handling larger huge page sizes e.g. 16G huge pages
* Update for new upstream sysctl
* Add support for hugetlbfs_morecore to shrink the heap
Bug fixes
* Disable heap shrinking by default to avoid bug in glibc malloc
* Skip elflink calls in setup_libhugetlbfs for IA64 and sparc64
* Replace gethugepagesize with check_hugepagesize for error checking
* Make morecore argument a long to handle larger page sizes
Tets suite fixes
* Check uid/gid in tests where it matters
* tests: verify there are enough huge pages
* Change tests to read /proc/meminfo
* tests: verify that huge page size isn't too big for the test
* Thu Apr 10 2008 ro@suse.de
- added baselibs.conf file to build xxbit packages
for multilib support
* Mon Jan 14 2008 olh@suse.de
- update to version 1.2
New features
* Partial segment remapping. This allows non-relinked binaries to try
to take advantage of libhugetlbfs' segment remapping code. Large
segments are required, especially on Power. This feature is useful
for estimating huge page performance, however full relinking will
still perform better.
* Add extra debugging for binaries that may run out of address space.
* Log library version when HUGETLB_VERBOSE is enabled.
* New test to check handling of misaligned mmap() parameters.
Bug fixes
* Fix EH_FRAME segment. Fixes some C++ applications.
* Rework PLT detection to work better on Power.
* Add per-target-arch syscall stubs to the library. These provide
reliable error messages from elflink.c if they occur while the
program segments are unmapped.
* Add proper SONAME to shared libs.
* Makefile respects CFLAGS/LDFLAGS/CPPFLAGS environment variables.
* Make mlock() failure non-fatal.
* Sun Jul 08 2007 olh@suse.de
- disable zero_filesize_segment test
* Sun Apr 15 2007 olh@suse.de
- update to version 1.1 (262564 - LTC33711)
* Mon Feb 05 2007 olh@suse.de
- update to 20070129 devel snapshot
drop hugetlbd
* Mon Feb 05 2007 olh@suse.de
- build -m64/-m32 if required
* Sat Dec 09 2006 olh@suse.de
- build with -g
make install should not depend on all
* Fri Dec 08 2006 olh@suse.de
- package testsuite, fix make check
* Tue Dec 05 2006 olh@suse.de
- add the hugetlbd (214426)
* Sun Oct 29 2006 olh@suse.de
- update to bugfix release 1.0.1 (214426)
* Always install linker scripts for all targets
* Error message updates
* Add documentation on HUGETLB_DEBUG
* Testcase updates
* Thu Oct 05 2006 olh@suse.de
- update to final 1.0
* Tue Sep 19 2006 olh@suse.de
- update to 20060913 git state
docu updates
use library versioning
* Wed Jul 19 2006 olh@suse.de
- update to 1.0-pre3
* Tue Apr 18 2006 olh@suse.de
- drop unneeded -packages from Buildrequires
* Sat Apr 08 2006 olh@suse.de
- update to 1.0-pre2 (#142046 - LTC20562)
* Tue Feb 21 2006 olh@suse.de
- remove backup files
* Tue Feb 21 2006 olh@suse.de
- add linker scripts on ppc, ppc64, i386 and x86_64
* Thu Feb 09 2006 olh@suse.de
- create package, version 1.0-pre1 (#142046 - LTC20562)