Bug 247192 - devel/p5-EV fails to build if devel/libinotify is installed
Summary: devel/p5-EV fails to build if devel/libinotify is installed
Status: Closed Works As Intended
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-ports-bugs (Nobody)
Keywords: needs-patch
Depends on:
Reported: 2020-06-12 04:21 UTC by dewayne
Modified: 2020-07-04 06:47 UTC (History)
3 users (show)

See Also:
vovkasm: maintainer-feedback+


Note You need to log in before you can comment on or make changes to this bug.
Description dewayne 2020-06-12 04:21:49 UTC
Unfortunately during a rebuild of my ports on " FreeBSD 12.1-STABLE #0 r360490M: Fri May  1", this message was conveyed during the compilation phase:

"In file included from EV.xs:50:
libev/ev.c:510:11: fatal error: sys/statfs.h: No such file or directory
  510 | # include <sys/statfs.h>"

This was caused due to devel/libinotify having been installed earlier, as required for openjdk8.

Deinstalling devel/libinotify and rebuilding was successful.
Things to note: it is a false assumption by p5-EV that sys/statfs.h is available because devel/libinotify is installed.

If there was some way to force the configuration question (or something similar):
A backend of a different kind is the Linux inotify(7) interface, which can
be used to speed up (and reduce resource consumption) of stat watchers. If
you have the include file and libc support for it, it is usually a good
idea to enable it, as kernel availability is detected at runtime.

Enable inotify support (y/n)? [n] n
to be n, would be the best outcome.
Comment 1 Fernando Apesteguía freebsd_committer 2020-06-12 05:48:30 UTC
^Triage: Asking maintainer
Comment 2 Vladimir Timofeev 2020-06-21 13:15:21 UTC
dewayne, thanks for the report!

But I can't reproduce this, I have just performed these steps:

 touch test-ev.lst
 echo 'java/openjdk8' >> test-ev.lst

 echo 'devel/p5-EV' >> test-ev.lst
 poudriere jail -c -j test-ev -v 12.1-RELEASE -m http
 poudriere bulk -f test-ev.lst -j test-ev

All steps finished successfully (https://poudriere.vovkasm.org/build.html?mastername=test-ev-default&build=2020-06-21_11h04m51s). I have also tryed installing p5-EV on a system with devel/libinotify installed, it has compiled and installed successfully. 

Disabling inotify backend for p5-EV is an easy task per se, but I'd prefer to be sure that this is really necessary. So can you help us to reproduce this?
Comment 3 dewayne 2020-07-04 06:47:28 UTC
(In reply to Vladimir Timofeev from comment #2)
Thank-you for investigating.  If you are unable to reproduce via poudriere, and I can work around the portmaster sequence by reordering things; then lets mark this as works as expected for now.