Summary: Library providing the FAM File Alteration Monitor API
Name: gamin
Version: 0.1.10
Release: 16%{?dist}
License: LGPLv2
#some of the files (server/inotify-kernel.c) are GPLv2
#so https://fedoraproject.org/wiki/Licensing#GPL_Compatibility_Matrix
#says the whole is GPLv2
#License: GPLv2
Group: Development/Libraries
Source: http://ftp.gnome.org/pub/GNOME/sources/gamin/0.1/gamin-%{version}.tar.bz2
URL: http://www.gnome.org/~veillard/gamin/
Obsoletes: fam < 2.6.10-12
Provides: fam = 2.6.10-12
BuildRequires: glib2-devel python python-devel
BuildRequires: automake, libtool
# This fix addresses an issue with ARM, where the configuration triplet
# happens to be armv5tel-redhat-linux-gnueabi instead of armv5tel-redhat-linux-gnu.
# The patch declares HAVE_LINUX in case of linux-gnueabi as well.
# Patch by Kedar Sovani <kedars@marvell.com>
Patch1: gamin-0.1.10-gnueabi.patch
# Don't try to build with -DG_DISABLE_DEPRECATED - glib has moved on
Patch2: gamin-manape.patch
# gam_server deadlocks, leading to all KDE applications hanging at start
# https://bugzilla.redhat.com/show_bug.cgi?id=786170
Patch3: gamin-0.1.11-double-lock.patch
# upstream fixes
Patch4: 0001-Poll-files-on-nfs4.patch
Patch5: 0002-Fix-compilation-of-recent-glib-removing-G_CONST_RETU.patch
%description
This C library provides an API and ABI compatible file alteration
monitor mechanism compatible with FAM but not dependent on a system wide
daemon.
%package devel
Summary: Libraries, includes, etc. to embed the Gamin library
Group: Development/Libraries
Requires: gamin = %{version}-%{release}
Obsoletes: fam-devel < 2.6.10-12
Provides: fam-devel = 2.6.10-12
%description devel
This C library provides an API and ABI compatible file alteration
monitor mechanism compatible with FAM but not dependent on a system wide
daemon.
%package python
Summary: Python bindings for the gamin library
Group: Development/Libraries
Requires: gamin = %{version}-%{release}
%description python
The gamin-python package contains a module that allow monitoring of
files and directories from the Python language based on the support
of the gamin package.
%prep
%setup -q
%patch1 -p1 -b .gnueabi
%patch2 -p1 -b .manape
%patch3 -p1 -b .double-lock
%patch4 -p1 -b .nfs4
%patch5 -p1 -b .const
# recode docs into UTF-8
for i in ChangeLog NEWS ; do
iconv -f iso-8859-1 -t utf-8 < $i > XXX
touch -r $i XXX
mv XXX $i
done
# https://fedoraproject.org/wiki/Features/SystemPythonExecutablesUseSystemPython
# replace "/usr/bin/env python" with a "/usr/bin/python"
for i in `find -name '*.py'`; do
sed -i.bak 's|^#!/usr/bin/env python|#!/usr/bin/python|g' $i
touch -r ${i}.bak $i
rm ${i}.bak
done
autoreconf --force --install
%build
%configure
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot} INSTALL="install -p"
find $RPM_BUILD_ROOT -name '*.la' -or -name '*.a' | xargs rm -f
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%doc AUTHORS ChangeLog NEWS README Copyright TODO COPYING
%doc doc/*.html
%doc doc/*.gif
%doc doc/*.txt
%{_libdir}/lib*.so.*
%{_libexecdir}/gam_server
%files devel
%{_libdir}/lib*.so
%{_includedir}/fam.h
%{_libdir}/pkgconfig/gamin.pc
%files python
%{_libdir}/python*/site-packages/gamin.py*
%{_libdir}/python*/site-packages/_gamin*
%doc python/tests/*.py
%doc doc/python.html
%changelog
* Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 0.1.10-16
- Mass rebuild 2014-01-24
* Fri Dec 27 2013 Daniel Mach <dmach@redhat.com> - 0.1.10-15
- Mass rebuild 2013-12-27
* Fri Feb 1 2013 Matthias Clasen <mclasen@redhat.com> - 0.1.10-14
- Make it work on nfs4
- Fix the build
- Minor spec file cleanups
* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.10-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
* Wed Feb 8 2012 Tomas Bzatek <tbzatek@redhat.com> - 0.1.10-12
- Prevent deadlock when cancelling a watch (#786170)
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.10-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
* Wed Jul 20 2011 Matthias Clasen <mclasen@redhat.com> - 0.1.10-10
- Rebuild
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.10-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Wed Jul 21 2010 David Malcolm <dmalcolm@redhat.com> - 0.1.10-8
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild
* Wed Mar 3 2010 Tomas Bzatek <tbzatek@redhat.com> - 0.1.10-7
- Further cleanup for package review (#225776)
- Fix source URL
* Mon Dec 21 2009 Tomas Bzatek <tbzatek@redhat.com> - 0.1.10-6
- Cleanup for package review (#225776)
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.10-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.1.10-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Mon Jan 5 2009 Tomas Bzatek <tbzatek@redhat.com> - 0.1.10-3
- Fix build on gnueabi (patch by Kedar Sovani)
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.1.10-2
- Rebuild for Python 2.6
* Mon Nov 24 2008 Tomas Bzatek <tbzatek@redhat.com> - 0.1.10-1
- Update to 0.1.10
- Drop upstreamed patches
* Mon Jul 21 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.1.9-6
- fix license tag
* Wed Feb 14 2008 Tomas Bzatek <tbzatek@redhat.com> - 0.1.9-5
- workaround for missing struct ucred in glibc headers (fixed x86_64 compilation)
* Fri Sep 14 2007 Matthias Clasen <mclasen@redhat.com> - 0.1.9-4
- Fix a memory leak
* Fri Sep 14 2007 Ray Strode <rstrode@redhat.com> - 0.1.9-3
- don't poll for non-existant watched files (bug 240385)
* Tue Aug 28 2007 Fedora Release Engineering <rel-eng at fedoraproject dot org> - 0.1.9-2
- Rebuild for selinux ppc32 issue.
* Fri Jul 27 2007 Daniel Veillard <veillard@redhat.com> - 0.1.9-1.fc8
- made new upstream release, that includes all the existing patches
* Sat Apr 21 2007 Matthias Clasen <mclasen@redhat.com> - 0.1.8-6
- Don't ship static libraries
* Wed Apr 11 2007 Alexander Larsson <alexl@redhat.com> - 0.1.8-5
- Add patch that handles inotify failing fallback (#233316)
* Wed Mar 7 2007 Alexander Larsson <alexl@redhat.com> - 0.1.8-4
- Add patch to fix #204906
* Thu Dec 7 2006 Jeremy Katz <katzj@redhat.com> - 0.1.8-3
- rebuild for python 2.5
* Mon Nov 20 2006 Alexander Larsson <alexl@redhat.com> - 0.1.8-2.fc7
- Fix polling backend, making NFS work again
- Resolves: #212551
* Tue Oct 31 2006 Daniel Veillard <veillard@redhat.com> - 0.1.8-1
- made new upstream release, that should include all the existing patches
* Fri Sep 8 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-7
- Fix problems in new inotify backend (#205731)
* Tue Sep 5 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-6
- Remove last regular timers from gamin
* Tue Sep 5 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-5
- Use sigaction to reset old signal handler (from cvs)
- New inotify backend from cvs (based on gnome-vfs code)
- Only create timer on demand
- This should fix #204906
* Mon Aug 28 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-4
- Flush in-buffer on connection reset (#196444)
- Patch from Ariel T. Glenn
* Tue Aug 22 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-3
- Use /dev/null as stdin/out/err when spawning gam_server
- This could help if there is stdout output somewhere.
* Wed Aug 16 2006 Alexander Larsson <alexl@redhat.com> - 0.1.7-2
- Add patch that avoids closing the fd after FAMOpen, fixes some 100% cpu bugs
* Wed Jul 12 2006 Jesse Keating <jkeating@redhat.com> - 0.1.7-1.2.2
- rebuild
* Fri Feb 10 2006 Jesse Keating <jkeating@redhat.com> - 0.1.7-1.2.1
- bump again for double-long bug on ppc(64)
* Tue Feb 07 2006 Jesse Keating <jkeating@redhat.com> - 0.1.7-1.2
- rebuilt for new gcc4.1 snapshot and glibc changes
* Fri Dec 09 2005 Jesse Keating <jkeating@redhat.com>
- rebuilt
* Thu Oct 27 2005 Daniel Veillard <veillard@redhat.com> 0.1.7-1
- hopefully fixes gam_server crashes
- some portability fixes
- removed a minor leak
* Thu Sep 8 2005 Daniel Veillard <veillard@redhat.com> 0.1.6-1
- revamp of the inotify back-end
- memory leak fix
- various fixes and cleanups
* Tue Aug 9 2005 Daniel Veillard <veillard@redhat.com> 0.1.5-1
- Improvement of configuration, system wide configuration files and
per filesystem type default
- Rewrite of the inotify back-end, reduce resources usage, tuning in
case of busy resources
- Documentation updates
- Changes to compile inotify back-end on various architectures
- Debugging output improvements
* Tue Aug 2 2005 Daniel Veillard <veillard@redhat.com> 0.1.3-1
- Fix to compile on older gcc versions
- Inotify back-end changes and optimizations
- Debug ouput cleanup, pid and process name reports
- Dropped kernel monitor bugfix
- Removed the old glist copy used for debugging
- Maintain mounted filesystems knowledge, and per fstype preferences
* Wed Jul 13 2005 Daniel Veillard <veillard@redhat.com> 0.1.2-1
- inotify back end patches, ready for the new inotify support in kernel
- lot of server code cleanup patches
- fixed an authentication problem
* Fri Jun 10 2005 Daniel Veillard <veillard@redhat.com> 0.1.1-1
- gamin_data_conn_event fix
- crash from bug gnome #303932
- Inotify and mounted media #171201
- mounted media did not show up on Desktop #159748
- write may not be atomic
- Monitoring a directory when it is a file
- Portability to Hurd/Mach and various code cleanups
- Added support for ~ as user home alias in .gaminrc
* Thu May 12 2005 Daniel Veillard <veillard@redhat.com> 0.1.0-1
- Close inherited file descriptors on exec of gam_server
- Cancelling a monitor send back a FAMAcknowledge
- Fixed for big files > 2GB
- Bug when monitoring a non existing directory
- Make client side thread safe
- Unreadable directory fixes
- Better flow control handling
- Updated to latest inotify version: 0.23-6
* Tue Mar 15 2005 Daniel Veillard <veillard@redhat.com> 0.0.26-1
- Fix an include problem showing up with gcc4</li>
- Fix the crash on failed tree assert bug #150471 based on patch from Dean Brettle
- removed an incompatibility with SGI FAM #149822
* Tue Mar 1 2005 Daniel Veillard <veillard@redhat.com> 0.0.25-1
- Fix a configure problem reported by Martin Schlemmer
- Fix the /media/* and /mnt/* mount blocking problems from 0.0.24 e.g. #142637
- Fix the monitoring of directory using poll and not kernel
* Fri Feb 18 2005 Daniel Veillard <veillard@redhat.com> 0.0.24-1
- more documentation
- lot of serious bug fixes including Gnome Desktop refresh bug
- extending the framework for more debug (configure --enable-debug-api)
- extending the python bindings for watching the same resource multiple times
and adding debug framework support
- growing the regression tests a lot based on python bindings
- inotify-0.19 patch from John McCutchan
- renamed python private module to _gamin to follow Python PEP 8
* Tue Feb 8 2005 Daniel Veillard <veillard@redhat.com> 0.0.23-1
- memory corruption fix from Mark on the client side
- extending the protocol and API to allow skipping Exists and EndExists
events to avoid deadlock on reconnect or when they are not used.
* Mon Jan 31 2005 Daniel Veillard <veillard@redhat.com> 0.0.22-1
- bit of python bindings improvements, added test
- fixed 3 bugs
* Wed Jan 26 2005 Daniel Veillard <veillard@redhat.com> 0.0.21-1
- Added Python support
- Updated for inotify-0.18
* Thu Jan 6 2005 Daniel Veillard <veillard@redhat.com> 0.0.20-1
- Frederic Crozat seems to have found the GList corruption which may fix
#132354 and related problems
- Frederic Crozat also fixed poll only mode
* Fri Dec 3 2004 Daniel Veillard <veillard@redhat.com> 0.0.19-1
- still chasing the loop bug, made another pass at checking GList,
added own copy with memory poisonning of GList implementation.
- fixed a compile issue when compiling without debug
* Fri Nov 26 2004 Daniel Veillard <veillard@redhat.com> 0.0.18-1
- still chasing the loop bug, checked and cleaned up all GList use
- patch from markmc to minimize load on busy apps
* Wed Oct 20 2004 Daniel Veillard <veillard@redhat.com> 0.0.16-1
- chasing #132354, lot of debugging, checking and testing and a bit
of refactoring
* Sat Oct 16 2004 Daniel Veillard <veillard@redhat.com> 0.0.15-1
- workaround to detect loops and avoid the nasty effects, see RedHat bug #132354
* Sun Oct 3 2004 Daniel Veillard <veillard@redhat.com> 0.0.14-1
- Found and fixed the annoying bug where update were not received
should fix bugs ##132429, #133665 and #134413
- new mechanism to debug on-the-fly by sending SIGUSR2 to client or server
- Added documentation about internals
* Fri Oct 1 2004 Daniel Veillard <veillard@redhat.com> 0.0.13-1
- applied portability fixes
- hardened the code while chasing a segfault
* Thu Sep 30 2004 Daniel Veillard <veillard@redhat.com> 0.0.12-1
- potential fix for a hard to reproduce looping problem.
* Mon Sep 27 2004 Daniel Veillard <veillard@redhat.com> 0.0.11-1
- update to the latest version of inotify
- inotify support compiled in by default
- fix ABI FAM compatibility problems #133162
* Tue Sep 21 2004 Daniel Veillard <veillard@redhat.com> 0.0.10-1
- more documentation
- Added support for a configuration file $HOME/.gaminrc
- fixes FAM compatibility issues with FAMErrno and FamErrlist #132944
* Wed Sep 1 2004 Daniel Veillard <veillard@redhat.com> 0.0.9-1
- fix crash with konqueror #130967
- exclude kernel (dnotify) monitoring for /mnt//* /media//*
* Thu Aug 26 2004 Daniel Veillard <veillard@redhat.com> 0.0.8-1
- Fixes crashes of the gam_server
- try to correct the kernel/poll switching mode
* Tue Aug 24 2004 Daniel Veillard <veillard@redhat.com> 0.0.7-1
- add support for both polling and dnotify simultaneously
- fixes monitoring of initially missing files
- load control on very busy resources #124361, desactivating
dnotify and falling back to polling for CPU drain
* Thu Aug 19 2004 Daniel Veillard <veillard@redhat.com> 0.0.6-1
- fixes simple file monitoring should close RH #129974
- relocate gam_server in $(libexec)
* Thu Aug 5 2004 Daniel Veillard <veillard@redhat.com> 0.0.5-1
- Fix a crash when the client binary forks the gam_server and an
atexit handler is run.
* Wed Aug 4 2004 Daniel Veillard <veillard@redhat.com> 0.0.4-1
- should fix KDE build problems