packages: libnfsidmap/libnfsidmap.spec, libnfsidmap/libnfsidmap-diet.patch ...
baggins
baggins at pld-linux.org
Fri Sep 24 18:31:11 CEST 2010
Author: baggins Date: Fri Sep 24 16:31:11 2010 GMT
Module: packages Tag: HEAD
---- Log message:
- rel 2
- added dietlibc package
---- Files affected:
packages/libnfsidmap:
libnfsidmap.spec (1.18 -> 1.19) , libnfsidmap-diet.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: packages/libnfsidmap/libnfsidmap.spec
diff -u packages/libnfsidmap/libnfsidmap.spec:1.18 packages/libnfsidmap/libnfsidmap.spec:1.19
--- packages/libnfsidmap/libnfsidmap.spec:1.18 Thu Aug 12 22:25:35 2010
+++ packages/libnfsidmap/libnfsidmap.spec Fri Sep 24 18:31:06 2010
@@ -1,22 +1,32 @@
# $Revision$, $Date$
+#
+# Conditional build:
+%bcond_without dietlibc # don't build static dietlibc library
+#
Summary: Library to help mapping id's, mainly for NFSv4
Summary(pl.UTF-8): Biblioteka pomagająca w mapowaniu identyfikatorów, głównie dla NFSv4
Name: libnfsidmap
Version: 0.23
-Release: 1
+Release: 2
License: BSD
Group: Libraries
Source0: http://www.citi.umich.edu/projects/nfsv4/linux/libnfsidmap/%{name}-%{version}.tar.gz
# Source0-md5: 28f3ece648c1dc5d25e8d623d55f8bd6
Patch0: %{name}-idmapd.conf.patch
Patch1: %{name}-user at domain.patch
+Patch2: %{name}-diet.patch
URL: http://www.citi.umich.edu/projects/nfsv4/linux/
+%{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.31-5}
BuildRequires: openldap-devel
Obsoletes: nfsidmap
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%undefine __cxx
+# for some reason known only to rpm there must be "\\|" not "\|" here
+%define dietarch %(echo %{_target_cpu} | sed -e 's/i.86\\|pentium.\\|athlon/i386/;s/amd64/x86_64/;s/armv.*/arm/')
+%define dietlibdir %{_prefix}/lib/dietlibc/lib-%{dietarch}
+
%description
Library to help mapping id's, mainly for NFSv4.
@@ -49,24 +59,52 @@
%description static -l pl.UTF-8
Statyczna biblioteka libnfsidmap.
+%package dietlibc
+Summary: Static dietlibc libnfsidmap library
+Summary(pl.UTF-8): Biblioteka statyczna dietlibc libnfsidmap
+Group: Development/Libraries
+Requires: %{name}-devel = %{version}-%{release}
+
+%description dietlibc
+Static dietlibc libnfsidmap library.
+
+%description dietlibc -l pl.UTF-8
+Biblioteka statyczna dietlibc libnfsidmap.
+
%prep
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%build
+%if %{with dietlibc}
+%configure \
+ CC="diet %{__cc} %{rpmcflags} %{rpmldflags} -Os -D_BSD_SOURCE -D_GNU_SOURCE" \
+ --enable-static \
+ --disable-shared \
+ --disable-ldap
+
+%{__make}
+mv .libs/libnfsidmap.a diet-libnfsidmap.a
+%{__make} clean
+%endif
+
%configure
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_sysconfdir}
+%{?with_dietlibc:install -d $RPM_BUILD_ROOT%{dietlibdir}}
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
install idmapd.conf $RPM_BUILD_ROOT%{_sysconfdir}
+%{?with_dietlibc:install diet-libnfsidmap.a $RPM_BUILD_ROOT%{dietlibdir}/libnfsidmap.a}
+
%{__rm} $RPM_BUILD_ROOT%{_libdir}/libnfsidmap/*.{a,la}
%clean
@@ -102,12 +140,22 @@
%defattr(644,root,root,755)
%{_libdir}/libnfsidmap.a
+%if %{with dietlibc}
+%files dietlibc
+%defattr(644,root,root,755)
+%{dietlibdir}/libnfsidmap.a
+%endif
+
%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`)
%changelog
* %{date} PLD Team <feedback at pld-linux.org>
All persons listed below can be reached at <cvs_login>@pld-linux.org
$Log$
+Revision 1.19 2010/09/24 16:31:06 baggins
+- rel 2
+- added dietlibc package
+
Revision 1.18 2010/08/12 20:25:35 qboosh
- updated to 0.23
- updated idmapd.conf patch
================================================================
Index: packages/libnfsidmap/libnfsidmap-diet.patch
diff -u /dev/null packages/libnfsidmap/libnfsidmap-diet.patch:1.1
--- /dev/null Fri Sep 24 18:31:12 2010
+++ packages/libnfsidmap/libnfsidmap-diet.patch Fri Sep 24 18:31:06 2010
@@ -0,0 +1,64 @@
+--- libnfsidmap-0.23/nss.c~ 2010-09-24 18:12:33.474464553 +0200
++++ libnfsidmap-0.23/nss.c 2010-09-24 18:16:13.001464555 +0200
+@@ -73,7 +73,11 @@
+ struct passwd *pw = NULL;
+ struct passwd pwbuf;
+ char *buf;
++#ifdef __dietlibc__
++ size_t buflen = 1024;
++#else
+ size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++#endif
+ int err = -ENOMEM;
+
+ buf = malloc(buflen);
+@@ -98,7 +102,11 @@
+ struct group *gr = NULL;
+ struct group grbuf;
+ char *buf;
++#ifdef __dietlibc__
++ size_t buflen = 1024;
++#else
+ size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++#endif
+ int err;
+
+ if (domain == NULL)
+@@ -164,7 +172,11 @@
+ {
+ struct passwd *pw;
+ struct pwbuf *buf;
++#ifdef __dietlibc__
++ size_t buflen = 1024;
++#else
+ size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++#endif
+ char *localname;
+ int err = ENOMEM;
+
+@@ -225,7 +237,11 @@
+ struct group *gr = NULL;
+ struct group grbuf;
+ char *buf, *localname, *domain;
++#ifdef __dietlibc__
++ size_t buflen = 1024;
++#else
+ size_t buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
++#endif
+ int err = -EINVAL;
+
+ domain = get_default_domain();
+--- libnfsidmap-0.23/static.c~ 2009-07-29 22:19:06.000000000 +0200
++++ libnfsidmap-0.23/static.c 2010-09-24 18:17:31.485464550 +0200
+@@ -62,7 +62,11 @@
+ {
+ struct passwd *pw;
+ struct pwbuf *buf;
++#ifdef __dietlibc__
++ size_t buflen = 1024;
++#else
+ size_t buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
++#endif
+ char *localname;
+ int err;
+
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/libnfsidmap/libnfsidmap.spec?r1=1.18&r2=1.19&f=u
More information about the pld-cvs-commit
mailing list