Pullup ticket 2741 - requested by tron
[pkgsrc.git] / sysutils / fam / Makefile
1 # $NetBSD: Makefile,v 1.35 2007/12/16 14:25:14 cjep Exp $
2 #
3
4 DISTNAME=               fam-2.7.0
5 PKGREVISION=            9
6 CATEGORIES=             sysutils devel
7 MASTER_SITES=           ftp://oss.sgi.com/projects/fam/download/stable/ \
8                         ftp://ftp.tuwien.ac.at/opsys/linux/gentoo/distfiles/ \
9                         http://gd.tuwien.ac.at/opsys/linux/gentoo/distfiles/
10
11 CONFLICTS+=             gamin-[0-9]*
12
13 MAINTAINER=             pkgsrc-users@NetBSD.org
14 HOMEPAGE=               http://oss.sgi.com/projects/fam/
15 COMMENT=                File Alteration Monitor
16
17 PKG_INSTALLATION_TYPES= overwrite pkgviews
18 PKG_DESTDIR_SUPPORT=    user-destdir
19
20 # fam is bundled with IRIX
21 NOT_FOR_PLATFORM=       IRIX-*-*
22
23 USE_TOOLS+=             gmake
24 USE_LIBTOOL=            YES
25 GNU_CONFIGURE=          YES
26 USE_LANGUAGES=          c c++
27 CONFIGURE_ARGS+=        --sysconfdir=${PKG_SYSCONFDIR:Q}
28
29 EGDIR=                  ${PREFIX}/share/examples/fam
30 CONF_FILES=             ${EGDIR}/fam.conf ${PKG_SYSCONFDIR}/fam.conf
31
32 RCD_SCRIPTS=            famd
33
34 SUBST_CLASSES+=         paths
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'
39
40 PKG_OPTIONS_VAR=        PKG_OPTIONS.fam
41 PKG_SUPPORTED_OPTIONS=  kqueue
42
43 .include "../../mk/bsd.options.mk"
44
45 .if !empty(PKG_OPTIONS:Mkqueue) && \
46     (${OPSYS} == "FreeBSD" || ${OPSYS} == "NetBSD" || ${OPSYS} == "OpenBSD")
47 CPPFLAGS+=              -DHAVE_KQUEUE
48
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'
55
56 MESSAGE_SRC=            ${.CURDIR}/MESSAGE ${.CURDIR}/MESSAGE.kqueue
57
58 .include "../../mk/pthread.buildlink3.mk"
59 .endif
60
61 CPPFLAGS.Darwin+=       -DNDEBUG
62 LDFLAGS.SunOS+=         -lsocket -lnsl
63
64 .if ${OPSYS} == "SunOS"
65
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'
75
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'
83
84 .include "../../mk/compiler.mk"
85
86 .if !empty(PKGSRC_COMPILER:Msunpro)
87 BUILDLINK_TRANSFORM+=   rm:-lstdc++
88 .endif
89
90 .endif
91
92 post-extract:
93         ${CP} ${FILESDIR}/IMonKQueue.c++ ${WRKSRC}/src
94         ${CP} ${FILESDIR}/imon-compat.h ${WRKSRC}/src
95
96 .include "../../mk/bsd.pkg.mk"