Tue Mar 5 11:24:01 2019 UTC ()
sysutils/intellij-fsnotifier: import intellij-fsnotifier-0.0.20190228
A file system monitoring utility for JetBrains IntelliJ IDEA
Integrated Development Environment.
(ryoon)
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/DESCR
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/Makefile
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/PLIST
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/distinfo
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/patches/patch-Makefile
diff -r0 -r1.1 pkgsrc/sysutils/intellij-fsnotifier/patches/patch-main.c
A file system monitoring utility for JetBrains IntelliJ IDEA
Integrated Development Environment.
# $NetBSD: Makefile,v 1.1 2019/03/05 11:24:01 ryoon Exp $
DISTNAME= fsnotifier-0.0.20190228
PKGNAME= intellij-${DISTNAME}
CATEGORIES= sysutils
MASTER_SITES= ${MASTER_SITE_GITHUB:=idea4bsd/}
GITHUB_PROJECT= fsnotifier
GITHUB_TAG= bb7815166319ba46c27809ed8fc0c6b5fa14f869
MAINTAINER= ryoon@NetBSD.org
HOMEPAGE= https://github.com/idea4bsd/fsnotifier
COMMENT= File system monitoring utility for IntelliJ IDEA IDE
LICENSE= apache-2.0
INTELLIJCEDIR= intellij-ce-bin-2018.3.5
PYCHARMCEDIR= pycharm-bin-2018.3.5
INSTALLATION_DIRS= ${INTELLIJCEDIR}/bin ${PYCHARMCEDIR}/bin
PLIST_SUBST+= INTELLIJCEDIR=${INTELLIJCEDIR}
PLIST_SUBST+= PYCHARMCEDIR=${PYCHARMCEDIR}
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/fsnotifier \
${DESTDIR}${PREFIX}/${INTELLIJCEDIR}/bin/fsnotifier
${INSTALL_PROGRAM} ${WRKSRC}/fsnotifier \
${DESTDIR}${PREFIX}/${PYCHARMCEDIR}/bin/fsnotifier
.include "../../devel/libinotify/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
@comment $NetBSD: PLIST,v 1.1 2019/03/05 11:24:01 ryoon Exp $
${INTELLIJCEDIR}/bin/fsnotifier
${PYCHARMCEDIR}/bin/fsnotifier
$NetBSD: distinfo,v 1.1 2019/03/05 11:24:01 ryoon Exp $
SHA1 (fsnotifier-0.0.20190228-bb7815166319ba46c27809ed8fc0c6b5fa14f869.tar.gz) = a70c316fa25435d596fd0d982f709f2309fee43f
RMD160 (fsnotifier-0.0.20190228-bb7815166319ba46c27809ed8fc0c6b5fa14f869.tar.gz) = af28d29ecc915c8a5113235c90d43f59117f1061
SHA512 (fsnotifier-0.0.20190228-bb7815166319ba46c27809ed8fc0c6b5fa14f869.tar.gz) = 7aa052076784f97936a75dce3ed4a89b41f388675fee484ec63481dd00d27b8373bb9ad5cdc185e3eb4e4263154ed319e70b332e8253e76836a85f85c75c110b
Size (fsnotifier-0.0.20190228-bb7815166319ba46c27809ed8fc0c6b5fa14f869.tar.gz) = 12933 bytes
SHA1 (patch-Makefile) = 8d3fb94a6ed0411bf12e01f3db216633b7c8d535
SHA1 (patch-main.c) = 45504b3d11700b479230b9b07413457beaa392af
$NetBSD: patch-Makefile,v 1.1 2019/03/05 11:24:01 ryoon Exp $
* Fix build on NetBSD
--- Makefile.orig 2016-11-18 15:38:37.000000000 +0000
+++ Makefile
@@ -2,16 +2,20 @@ PROG= fsnotifier
SRCS= inotify.c main.c util.c
MAN=
CSTD= c99
+PREFIX?= /usr/local
CFLAGS+= -Wall -Wextra -D_DEFAULT_SOURCE
-CFLAGS+= -std=${CSTD} -I/usr/local/include${INOTIFY}
-LDFLAGS+= -L/usr/local/lib${INOTIFY} -Wl,-rpath=/usr/local/lib${INOTIFY}
+CFLAGS+= -std=${CSTD} -I${PREFIX}/include${INOTIFY}
+LDFLAGS+= -L${PREFIX}/lib${INOTIFY} -Wl,-rpath=${PREFIX}/lib${INOTIFY}
LDFLAGS+= -pthread
OS!= uname -s
.if ${OS} == "OpenBSD"
INOTIFY?= /inotify
+.elif ${OS} == "NetBSD"
+PREFIX= /usr/pkg
+CFLAGS+= -D_NETBSD_SOURCE
.endif
.if defined(STATIC_INOTIFY)
$NetBSD: patch-main.c,v 1.1 2019/03/05 11:24:01 ryoon Exp $
* Fix build on NetBSD
--- main.c.orig 2016-11-18 15:38:37.000000000 +0000
+++ main.c
@@ -429,17 +429,31 @@ static bool register_roots(array* new_ro
#if defined(__BSD__)
static array* unwatchable_mounts() {
+#if defined(__NetBSD__)
+ int fsCount = getvfsstat(NULL, 0, MNT_WAIT);
+#else
int fsCount = getfsstat(NULL, 0, MNT_WAIT);
+#endif
if (fsCount > 0) {
+#if defined(__NetBSD__)
+ struct statvfs fs[fsCount];
+ fsCount = getvfsstat(fs, (int)(sizeof(struct statvfs) * fsCount), MNT_NOWAIT);
+#else
struct statfs fs[fsCount];
fsCount = getfsstat(fs, (int)(sizeof(struct statfs) * fsCount), MNT_NOWAIT);
+#endif
if (fsCount > 0) {
array* mounts = array_create(fsCount);
CHECK_NULL(mounts, NULL);
for (int i=0; i<fsCount; i++) {
+#if defined(__NetBSD__)
+ userlog(LOG_DEBUG, "mtab: %s : %s (%d)", fs[i].f_mntonname, fs[i].f_fstypename, fs[i].f_flag);
+ if ((fs[i].f_flag & MNT_LOCAL) != MNT_LOCAL) {
+#else
userlog(LOG_DEBUG, "mtab: %s : %s (%d)", fs[i].f_mntonname, fs[i].f_fstypename, fs[i].f_flags);
if ((fs[i].f_flags & MNT_LOCAL) != MNT_LOCAL) {
+#endif
CHECK_NULL(array_push(mounts, strdup(fs[i].f_mntonname)), NULL);
}
}
@@ -512,8 +526,14 @@ static void inotify_callback(const char*
static void report_event(const char* event, const char* path) {
userlog(LOG_DEBUG, "%s: %s", event, path);
+#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
+#elif defined(__GNUC__)
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wincompatible-pointer-types"
+#pragma GCC diagnostic ignored "-Wdiscarded-qualifiers"
+#endif
char* copy = path, *p;
for (p = copy; *p != '\0'; ++p) {
if (*p == '\n') {
@@ -524,7 +544,11 @@ static void report_event(const char* eve
*p = '\0';
}
}
+#if defined(__clang__)
#pragma clang diagnostic pop
+#elif defined(__GNUC__)
+#pragma GCC diagnostic pop
+#endif
fputs(event, stdout);
fputc('\n', stdout);