Summary: Rsync libraries Name: librsync Version: 0.9.7 Release: 1 License: LGPLv2+ Group: System Environment/Libraries URL: http://librsync.sourceforge.net/ Source0: http://downloads.sourceforge.net/sourceforge/%{name}/%{name}-%{version}.tar.gz Patch0: %{name}-%{version}-lfs_overflow.patch Patch1: %{name}-%{version}-getopt.patch Patch2: %{name}-%{version}-man_pages.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: zlib-devel, bzip2, popt, libtool, patch %description librsync implements the "rsync" algorithm, which allows remote differencing of binary files. librsync computes a delta relative to a file's checksum, so the two files need not both be present to generate a delta. This library was previously known as libhsync up to version 0.9.0. The current version of this package does not implement the rsync network protocol and uses a delta format slightly more efficient than and incompatible with rsync 2.4.6. The library is available as 32-bit and 64-bit. %package devel Summary: Headers and development libraries for librsync Group: Development/Libraries Requires: %{name} = %{version}-%{release} %description devel This package contains header files necessary for developing programs based on librsync. It was previously known as libhsync up to version 0.9.0. The current version of this package does not implement the rsync network protocol and uses a delta format slightly more efficient than and incompatible with rsync 2.4.6. If you are compiling a 32-bit program, no special compiler options are needed. If you are compiling a 64-bit program, you have to compile and link your application with "xlc_r -q64" or "gcc -maix64". %prep %setup -q export PATH=/opt/freeware/bin:$PATH %patch0 -p1 -b .lfs_overflow %patch1 -p1 -b .getopt %patch2 -p1 -b .man_pages %build libtoolize autoreconf -fiv # setup environment for 32-bit and 64-bit builds export AR="ar -X32_64" export NM="nm -X32_64" # first build the 64-bit version export CC="xlc_r -q64" ./configure \ --prefix=%{_prefix} \ --mandir=%{_mandir} \ --enable-shared --disable-static make %{?_smp_mflags} mv ./.libs/%{name}.so.1 . make distclean # now build the 32-bit version export CC="xlc_r" ./configure \ --prefix=%{_prefix} \ --mandir=%{_mandir} \ --enable-shared --disable-static make %{?_smp_mflags} # add the 64-bit shared objects to the shared library containing already the # 32-bit shared objects ${AR} -q ./.libs/%{name}.a ./%{name}.so.1 %install [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} make DESTDIR=${RPM_BUILD_ROOT} install /usr/bin/strip ${RPM_BUILD_ROOT}%{_bindir}/* || : ( cd ${RPM_BUILD_ROOT} for dir in bin lib include do mkdir -p usr/${dir} cd usr/${dir} ln -sf ../..%{_prefix}/${dir}/* . cd - done ) %clean [ "${RPM_BUILD_ROOT}" != "/" ] && rm -rf ${RPM_BUILD_ROOT} %files %defattr(-,root,system) %doc AUTHORS COPYING NEWS README %{_bindir}/rdiff %{_libdir}/*.a %{_mandir}/man1/rdiff.1 /usr/bin/rdiff /usr/lib/*.a %files devel %defattr(-,root,system) %{_libdir}/*.la %{_includedir}/%{name}* %{_mandir}/man3/librsync.3 /usr/lib/*.la /usr/include/%{name}* %changelog * Tue Sep 07 2010 Michael Perzl - 0.9.7-1 - first version for AIX V5.1 and higher