Commit graph

32 commits

Author SHA1 Message Date
tnn
60578adc48 #include <stdio.h> earlier so NULL gets defined before use
#include <iostream> instead of <iostream.h> (deprecated)
Fixes build on modern Linux.
2009-07-19 18:14:59 +00:00
schwarz
85f13d3086 ensure that fam compiles on systems that do not define MNT_NODEV such as
FreeBSD 7.1
2009-01-03 16:32:59 +00:00
schwarz
3a2b7af56b modified patch to apply to OpenBSD, too. 2008-11-09 14:32:28 +00:00
tron
afa757d417 Add C++ const-cast to fix build under Mac OS X Leopard where the second
argument to FD_ISSET() is not declared "const".
2007-12-28 15:00:45 +00:00
cjep
d009d452bf PR#34153 - fix famd manual page 2007-12-16 14:25:14 +00:00
minskim
da38dd3498 Use sysctl() when sysctlbyname() is unavailable. Patch from OpenBSD ports.
This fixes PR 36346.
2007-07-08 23:31:34 +00:00
minskim
02841a31a6 Make this package build on platforms that don't define MNT_UNION. 2007-07-08 22:22:29 +00:00
joerg
588dcc2dc1 Don't limit extern "C" to certain Sun compiler. It is never wrong to do
that for C headers in C++ programs, but GCC does it by default for
system include directories.
2007-01-09 10:21:51 +00:00
joerg
64beb6020c Use statfs instead of statfs on FreeBSD. Peter Schuller's bulk build
indicates that it is needed.
2006-08-26 15:30:57 +00:00
joerg
d425cddbb7 Add support for DragonFly. While we have sys/statvfs.h, we don't have
all the fields used by fam. It's easier to use the statfs interface for
now.
Don't explicitly link against libstdc++, it is the job of the C++
compiler to do that.
2005-10-10 22:06:51 +00:00
recht
5e9d00093c Fix the build on MacOS X 10.4 which now has statvfs. 2005-05-07 08:31:15 +00:00
tv
35eaeff07c Don't include <inttypes.h> if configure didn't find it. 2005-03-14 22:40:09 +00:00
dmcmahill
4fdd9cb922 fix typos in some of the patches. Fixes compilation on solaris. 2005-03-01 23:06:55 +00:00
tv
5a8890e74b Include <arpa/inet.h> to make sure hton*() is defined. (Interix fix) 2005-01-25 03:30:40 +00:00
minskim
d0c053e3e9 Patches added recently for Solaris don't work on Linux, because they
include headers which are unavailable on Linux.  Modify the patches so
that those headers are included only when they are found by configure.
2004-12-09 18:45:32 +00:00
sketch
97ff422b68 Various fixes/cleanups to get this package compiling on Solaris:
+ Use the mnttab(4) interface instead of mntent.
 + C++ syntax cleanups to appease the SunPro compiler.
 + Use MAXPATHLEN instead of NAME_MAX which can be unimplemented on strict
   POSIX systems.
 + Use POSIX inttypes.h if BSD types are not available.
 + RPC includes and C++ namespace fixes.
 + Use dirent(3) instead of older sys/dir.h interface.
 + Avoid `sun' namespace collision.

Patch based on the work of Robert Lillack and others, described in
http://mail-index.netbsd.org/tech-pkg/2004/08/20/0005.html and tested with
SunPro and gcc.
2004-11-19 12:35:22 +00:00
jmmv
665d71f190 Add kqueue support. This way, famd can be notified of changes to files and
directories in "real time", without having to periodically poll(2) for them
after several seconds.  This improves the responsiveness of applications
using famd (specially GNOME) when changes to files occur from the "outside"
(they are notified from changes immediately), or even from the application
itself (for example, have you ever tried to rename several files from
Nautilus?  just a PITA).

To enable kqueue, you have to pass the 'kqueue' option to the package.
I'm not enabling it by default because it needs testing (but it should be
enabled in a future).  Furthermore, I'd like to send these patches to the
FAM developers for comments too.  And a review from somebody knowing kqueue
could be good!  (this is the first time I use the kqueue interface, so I'm
not sure if everything is right).

A description on how this works can be found in the files/IMonKQueue.c++
file.  Note that, due to FAM's design, the easiest way to do this change
is to "emulate" imon functionality.

While here, add an rc.d script for famd, in case the user prefers to run
it at system startup instead of from inetd (I created it while developing
the kqueue functionality, so it's a good moment to add it).  Adjust the
MESSAGE accordingly.

Bump PKGREVISION to 4.
2004-10-17 19:20:53 +00:00
jmmv
eba65250cc Make the mntent compatibility layer work properly. It was storing the list
of mounted filesystems in a local variable that was lost between calls to
the emulated getmntinfo function.

I'm not sure if this fixes any visible problem, but it probably should.
The code was randomly reading from memory before (running with debugging
enabled exposed the problem, for example).

Bump PKGREVISION to 3.
2004-10-16 14:40:23 +00:00
cjep
c3f6e4f661 Add RCS tags 2004-05-07 12:06:47 +00:00
mrg
fe7ba66f1c apply the patches from PR#25405: use statvfs if we find <sys/statvfs.h>.
now this builds with -current.
2004-05-04 08:23:38 +00:00
jmmv
0024f4a6f3 Fix location of temporary files, as they were beeing created under / instead
of /tmp!  If you have been using GNOME, you may want to 'rm -f /.fam*' to
clean them up.

The problem is caused by two different issues, related to a call to tempnam:

- The code uses a HAVE_UNSETENV define to check if the unsetenv function
  is available; however, the configure script does not check for it, so
  unsetenv is never used.  Fix the configure script to check for unsetenv.

- If unsetenv is not available, it does putenv("TMPDIR=") before calling
  tempnam.  The code expects that this call *unsets* the variable from the
  environment (which happens in Linux), but instead it is *set* to an empty
  value, causing the creation of files in the root directory.  Fix this by
  explicitly setting TMPDIR to /tmp.

Bump PKGREVISION to 1.
2004-04-18 17:11:08 +00:00
adam
6d7cff4796 Fixed build problems on Darwin 2004-04-14 20:53:08 +00:00
minskim
a168693ab7 Patch configure.ac and regenerate the patch for configure instead of
patching configure directly, because this package already has
a patch for configure.ac.
2004-03-29 15:39:11 +00:00
tron
13a5b1a453 Include "sys/types.h" in configure test program checking for "sun_len"
in "struct sockaddr_in" to fix compile failure which causes incorrect
auto configuration and later build failures under NetBSD 1.6.2_STABLE.
2004-03-29 15:12:57 +00:00
minskim
48c7c7d457 Add files missed in the previous commit. 2004-03-28 22:01:54 +00:00
minskim
bd46a83d38 Update fam to 2.7.0. Fixes the following PR's:
- PR pkg/23017
  - PR pkg/23495
  - PR pkg/23496
  - PR pkg/24578

The patches for 23017 and 24578 were provided by reed@.  Although rh@
suspended PR 23017 saying that pkgsrc does not support installation to
/usr, this still needs to be fixed because the same problem occurs
even when LOCALBASE != /usr.

Changes since 2.6.10:
    Changed NOGROUP usage in src/Cred.c++ to -1 as NOGROUP is not defined
    in IRIX.
    (mraymond@sgi.com)
    removed const modifier from Scheduler.h to fix GCC 3.x build.
    (wardle@sgi.com)
    created new GNU autotools files:
    - test whether we have IMon rather than testing OS.
    - test whether we have sockaddr length members rather than testing OS.
    - install daemon in sbin rather than bin.
    - install manual pages in typical GNU/Linux sections.
    - rename daemon to famd.
    - rename fam source directory to src.
    - rename libfam source directory to lib.
    - remove editconf and util subdirectory.
    - remove rpm target and build subdirectory.
    - remove support target and subdirectory.
    [wardle@sgi.com] (wardle@sgi.com)
    fixed warnings about typenames in BTree.h.
    (wardle@sgi.com)
2004-03-28 22:00:04 +00:00
minskim
e7d41a5970 The configure script defines HAVE_STATVFS as 0 on non-IRIX platforms,
regardless of the result of sys/statvfs.h availability test.  It
results in two definitions of HAVE_STATVFS in confdefs.h.  Check the
availability of sys/statvfs.h only on IRIX platforms to ensure that
HAVE_STATVFS is defined at most once.
2004-03-21 07:35:17 +00:00
jmmv
709fb038ea Update to 2.6.10:
- removed const from Scheduler.h to fix GCC 3 build.
- use GID_NOBODY if NOGROUP is undefined to build on SysV-like operating
  systems including IRIX.

Changes in the package:
- Install configuration file in place.
- Tell the user how to setup and enable FAM.
2004-02-09 18:14:45 +00:00
jmmv
2fd9e4926a Update fam to 2.6.9. Changes since 2.6.7:
fam-2.6.9

    added idle_timeout and nfs_polling_interval options to fam.conf.
    [joup@bigfoot.com, wardle@sgi.com] (wardle@sgi.com)

    use daemon() as an alternative to _daemonize() to background the
    fam process if it is available.
    [wardle@sgi.com] (wardle@sgi.com)

    allow for different socket structure on FreeBSD and other small
    changes to assist FreeBSD build.
    [daverufino@btinternet.com, ports@geeksrus.net] (wardle@sgi.com)

fam-2.6.8

    #include some standard header files to help build on FreeBSD.
    (wardle@sgi.com)

    improved group handling from IRIX.
    (wardle@sgi.com)

    untrusted user's GID is set to NOGROUP if getgrmember() gave FAM
    an invalid or inconsistent GID.
    (wardle@sgi.com)

    should now handle strerror returning null.
    (wardle@sgi.com)

    initalize libtool earlier in the configure process to avoid binaries
    being created with a .C extension on some systems.
    [alexl@redhat.com] (wardle@sgi.com)

    added libstdc++ to linker flags to make libfam always build as a
    C++ library.
    (wardle@sgi.com)

    added CLEANFILES make target.
    (wardle@sgi.com)

    /etc/mtab (or equivalent) is now opened read-only.
    (wardle@sgi.com)

Approved by wiz.
2002-12-17 19:43:39 +00:00
dillo
f96c9310f7 get rid of autoconf build dependency by patching configure 2002-10-02 22:30:59 +00:00
jlam
efb93b17bd Merge changes in packages from the buildlink2 branch that have
buildlink2.mk files back into the main trunk.
2002-08-25 19:21:43 +00:00
rh
0396cbc128 Initial import of fam-2.6.7, a file alteration monitor. 2002-05-12 10:25:47 +00:00