problem about port need /proc to build

Jov amutu at amutu.com
Tue Jun 13 10:58:03 UTC 2017


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:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219609,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:
https://github.com/bazelbuild/bazel/blob/255953740813414433eceedc99c2bef3c3f6e307/src/main/cpp/blaze_util_freebsd.cc
:
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;
errno = ENAMETOOLONG;
}
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.

Best,
Jov


More information about the freebsd-ports mailing list