File libhugetlbfs.spec of Package libhugetlbfs

#
# spec file for package libhugetlbfs
#
# Copyright (c) 2013 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/
#



Name:           libhugetlbfs

%if 0%{?suse_version} > 1140
BuildRequires:  glibc-devel-static
%endif
BuildRequires:  doxygen

Summary:        Hugetlbfs helper library
License:        LGPL-2.1+
Group:          Development/Libraries/Other
# bug437293
%ifarch ppc64
Obsoletes:      libhugetlbfs-64bit
%endif
#
Version:        2.16
Release:        0
Url:            http://libhugetlbfs.sourceforge.net/
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
%define my_make_flags V=1 CFLAGS="$RPM_OPT_FLAGS -fPIC" BUILDTYPE=NATIVEONLY PREFIX=/usr LIBDIR32=%{_libdir} DESTDIR=$RPM_BUILD_ROOT
Source0:        libhugetlbfs-%{version}.tar.gz
Source1:        baselibs.conf
# Sources have no support for arm (and they depend on the architecture)
ExcludeArch:    %arm
Patch1:         libhugetlbfs.ia64-libdir.patch
Patch2:         libhugetlbfs.s390.patch
Patch4:         libhugetlbfs.tests-malloc.patch
Patch7:         libhugetlbfs_ia64_fix_missing_test.patch
Patch8:         libhugetlbfs_fix_tests.patch

%description
The libhugetlbfs package interacts with the Linux hugetlbfs to
make large pages available to applications in a transparent manner.

%package libhugetlb-devel
Summary:        Devel package for libhugetlb
Group:          Development/Libraries/Other
Requires:       libhugetlbfs

%description libhugetlb-devel
Devel package, header and static library, of libhugetlb

%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch4 -p1
%patch7 -p1
%patch8 -p1

%build
make %{my_make_flags}

%install
tests=
%ifarch ppc ppc64 %ix86 x86_64
tests=install-tests
make %{my_make_flags} install $tests
%endif
make \
%ifarch sparc sparcv9
	CC32="gcc" CC64="" NATIVEONLY=1 \
%endif
	%{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
for file in $RPM_BUILD_ROOT/%_libdir/libhugetlbfs/tests/*/*; do
  strip $file || :
done
# Do not pack in a 268MB file..
rm $RPM_BUILD_ROOT/%_libdir/libhugetlbfs/tests/obj32/linkhuge_rw || :

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-, root, root)
%doc LGPL-2.1 HOWTO README NEWS
/usr/share/libhugetlbfs
/usr/bin/*
%{_mandir}/man*/*.gz
%{_libdir}/libhugetlbfs_privutils.so
%{_libdir}/libhugetlbfs.so
%dir %{_libdir}/libhugetlbfs
%{_libdir}/libhugetlbfs/*
# ToDo: What are these for...
%dir /usr/lib/perl5/TLBC
/usr/lib/perl5/TLBC/DataCollect.pm
/usr/lib/perl5/TLBC/OpCollect.pm
/usr/lib/perl5/TLBC/Report.pm
/usr/lib/perl5/TLBC/PerfCollect.pm

%files libhugetlb-devel
%defattr(-, root, root)
/usr/include/hugetlbfs.h
%{_libdir}/libhugetlbfs.a

%changelog
openSUSE Build Service is sponsored by