problem about port need /proc to build

Konstantin Belousov kostikbel at
Tue Jun 13 12:05:09 UTC 2017

On Tue, Jun 13, 2017 at 06:57:40PM +0800, Jov wrote:
> Hi ports hackers,
> I am porting tensorflow to FreeBSD, It uses bazel to manage the
> dependencies and do the build.The port work now is mostly done (see:
>,I have local patch
> to fix the network need for do-configure) except one problem which I am not
> sure. So I write this mail to ask.
> The problem is bazel use /proc to locate its binary when start,
> see:
> :
> string GetSelfPath() {
> char buffer[PATH_MAX] = {};
> ssize_t bytes = readlink("/proc/curproc/file", buffer, sizeof(buffer));
> if (bytes == sizeof(buffer)) {
> // symlink contents truncated
> bytes = -1;
> }
> I am not sure this is acceptable for FreeBSD ports.I now set USE_PROCFS=yes
> for poudriere and it can pass the testport.
> If port needs /proc is not acceptable, I will patch devel/bazel to use
> sysctl get its binary path.

It is not a question about being acceptable or not to use /proc, but
about user convenience.  FreeBSD does not automatically configure
procfs mount and base utilities function without procfs.  As result,
users typically do not need it.

If your port adds dependency on procfs, then it also adds requirements on
the machine configuration and some inconvenience to its users.  Some
programs cannot function without procfs, e.g. jvm.  But if it can be
trivially avoided, it is better to avoid.

More information about the freebsd-ports mailing list