It all depends which platforms you want to support in this patch, as far as it goes. FAM has support for a lot of different systems, but there's no need to really add it as a dependency IMHO. Adding support for the platforms we wish to support would be simpler.
I think the best reference would be to use F_NOTIFY under Linux. This makes writing FindFirstChangeNotification a maybe 20 minute job. The simplest example I can think of is from Samba:
http://cvs.samba.org/cgi-bin/cvsweb/~checkout~/samba/source/smbd/notify_kern...
It's GPLed, so only use it as an example, don't copy code from it :)
Other platforms have other methods (eg, FreeBSD you can use kqueue/kevent).. so yes, it all depends how much compatability you want. On other platforms you can always resort to polling, but this is quite horrible. I think NetBSD has a kqueue/kevent method, but IIRC it's broken. :)
- Ender