1 # $NetBSD: Makefile,v 1.37 2009/07/19 18:18:09 tnn Exp $
6 CATEGORIES= sysutils devel
7 MASTER_SITES= ftp://oss.sgi.com/projects/fam/download/stable/ \
8 ${MASTER_SITE_GENTOO:=distfiles/}
10 CONFLICTS+= gamin-[0-9]*
12 MAINTAINER= pkgsrc-users@NetBSD.org
13 HOMEPAGE= http://oss.sgi.com/projects/fam/
14 COMMENT= File Alteration Monitor
15 LICENSE= gnu-gpl-v2 AND gnu-lgpl-v2.1 # fam and libfam
17 PKG_INSTALLATION_TYPES= overwrite pkgviews
18 PKG_DESTDIR_SUPPORT= user-destdir
20 # fam is bundled with IRIX
21 NOT_FOR_PLATFORM= IRIX-*-*
27 CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR:Q}
29 EGDIR= ${PREFIX}/share/examples/fam
30 CONF_FILES= ${EGDIR}/fam.conf ${PKG_SYSCONFDIR}/fam.conf
35 SUBST_MESSAGE.paths= Fixing hardcoded paths.
36 SUBST_STAGE.paths= pre-configure
37 SUBST_FILES.paths= man/famd.conf.5 man/famd.8
38 SUBST_SED.paths= -e 's,/usr/local/etc/,${PKG_SYSCONFDIR}/,g'
40 PKG_OPTIONS_VAR= PKG_OPTIONS.fam
41 PKG_SUPPORTED_OPTIONS= kqueue
43 .include "../../mk/bsd.options.mk"
45 .if !empty(PKG_OPTIONS:Mkqueue) && \
46 (${OPSYS} == "FreeBSD" || ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD")
47 CPPFLAGS+= -DHAVE_KQUEUE
49 SUBST_CLASSES+= kqueue
50 SUBST_MESSAGE.kqueue= Enabling kqueue monitoring.
51 SUBST_STAGE.kqueue= pre-configure
52 SUBST_FILES.kqueue= src/Makefile.in
53 SUBST_SED.kqueue= -e 's,@MONITOR_FUNCS@,IMonKQueue,g'
54 SUBST_SED.kqueue+= -e 's,@LIBS@,@LIBS@ -lpthread,g'
56 MESSAGE_SRC= ${.CURDIR}/MESSAGE ${.CURDIR}/MESSAGE.kqueue
58 .include "../../mk/pthread.buildlink3.mk"
61 CPPFLAGS.Darwin+= -DNDEBUG
62 LDFLAGS.SunOS+= -lsocket -lnsl
64 .if ${OPSYS} == "SunOS"
66 SUBST_CLASSES+= sunfix
67 SUBST_MESSAGE.sunfix= Fixing ${OPSYS} namespace collision.
68 SUBST_STAGE.sunfix= pre-configure
69 SUBST_FILES.sunfix+= lib/Client.c++
70 SUBST_FILES.sunfix+= src/ClientConnection.c++ src/ClientConnection.h
71 SUBST_FILES.sunfix+= src/LocalClient.c++ src/LocalClient.h
72 SUBST_FILES.sunfix+= src/Listener.c++
73 SUBST_FILES.sunfix+= src/TCP_Client.h
74 SUBST_SED.sunfix= -e 's/sun\([^_]\)/sa_un\1/g'
76 SUBST_CLASSES+= dirent
77 SUBST_MESSAGE.dirent= Fixing old sys/dir.h usage.
78 SUBST_STAGE.dirent= pre-configure
79 SUBST_FILES.dirent+= src/Directory.c++
80 SUBST_FILES.dirent+= src/DirectoryScanner.c++ src/DirectoryScanner.h
81 SUBST_SED.dirent= -e 's,sys/dir.h,dirent.h,g'
82 SUBST_SED.dirent+= -e 's/struct direct/struct dirent/g'
84 .include "../../mk/compiler.mk"
86 .if !empty(PKGSRC_COMPILER:Msunpro)
87 BUILDLINK_TRANSFORM+= rm:-lstdc++
93 ${CP} ${FILESDIR}/IMonKQueue.c++ ${WRKSRC}/src
94 ${CP} ${FILESDIR}/imon-compat.h ${WRKSRC}/src
96 .include "../../mk/bsd.pkg.mk"