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}[email protected]
+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 <[email protected]>
 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

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to