Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 22 Oct 2017 01:35:49 GMT
From:      pkg-fallout@FreeBSD.org
To:        pkg-fallout@FreeBSD.org
Subject:   [package - 110armv6-quarterly][games/zhlt] Failed for zhlt-3.4 in build
Message-ID:  <201710220135.v9M1ZnIC046278@beefy15.nyi.freebsd.org>

next in thread | raw e-mail | index | archive | help

You are receiving this mail as a port that you maintain
is failing to build on the FreeBSD package build server.
Please investigate the failure and submit a PR to fix
build.

Maintainer:     danfe@FreeBSD.org
Last committer: danfe@FreeBSD.org
Ident:          $FreeBSD: branches/2017Q4/games/zhlt/Makefile 412353 2016-04-01 15:04:08Z danfe $
Log URL:        http://beefy15.nyi.freebsd.org/data/110armv6-quarterly/452586/logs/zhlt-3.4.log
Build URL:      http://beefy15.nyi.freebsd.org/build.html?mastername=110armv6-quarterly&build=452586
Log:

====>> Building games/zhlt
build started at Sun Oct 22 01:35:34 UTC 2017
port directory: /usr/ports/games/zhlt
building for: FreeBSD 110armv6-quarterly-job-08 11.0-RELEASE-p13 FreeBSD 11.0-RELEASE-p13 1100122 arm
maintained by: danfe@FreeBSD.org
Makefile ident:      $FreeBSD: branches/2017Q4/games/zhlt/Makefile 412353 2016-04-01 15:04:08Z danfe $
Poudriere version: 3.1.21
Host OSVERSION: 1200040
Jail OSVERSION: 1100122
Job Id: 08

---Begin Environment---
SHELL=/bin/csh
UNAME_p=armv6
UNAME_m=arm
ABI_FILE=/usr/lib/crt1.o
OSVERSION=1100122
UNAME_v=FreeBSD 11.0-RELEASE-p13 1100122
UNAME_r=11.0-RELEASE-p13
BLOCKSIZE=K
MAIL=/var/mail/root
STATUS=1
SAVED_TERM=
MASTERMNT=/usr/local/poudriere/data/.m/110armv6-quarterly/ref
QEMU_EMULATING=1
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin:/root/bin
POUDRIERE_BUILD_TYPE=bulk
PKGNAME=zhlt-3.4
OLDPWD=/
PWD=/usr/local/poudriere/data/.m/110armv6-quarterly/ref/.p/pool
MASTERNAME=110armv6-quarterly
SCRIPTPREFIX=/usr/local/share/poudriere
USER=root
HOME=/root
POUDRIERE_VERSION=3.1.21
SCRIPTPATH=/usr/local/share/poudriere/bulk.sh
LIBEXECPREFIX=/usr/local/libexec/poudriere
LOCALBASE=/usr/local
POUDRIEREPATH=/usr/local/bin/poudriere
---End Environment---

---Begin Poudriere Port Flags/Env---
PORT_FLAGS=
PKGENV=
---End Poudriere Port Flags/Env---

---Begin OPTIONS List---
---End OPTIONS List---

--CONFIGURE_ARGS--

--End CONFIGURE_ARGS--

--CONFIGURE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/games/zhlt/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/games/zhlt/work  HOME=/wrkdirs/usr/ports/games/zhlt/work TMPDIR="/tmp" SHELL=/bin/sh CONFIG_SHELL=/bin/sh
--End CONFIGURE_ENV--

--MAKE_ENV--
XDG_DATA_HOME=/wrkdirs/usr/ports/games/zhlt/work  XDG_CONFIG_HOME=/wrkdirs/usr/ports/games/zhlt/work  HOME=/wrkdirs/usr/ports/games/zhlt/work TMPDIR="/tmp" NO_PIE=yes MK_DEBUG_FILES=no MK_KERNEL_SYMBOLS=no SHELL=/bin/sh NO_LINT=YES PREFIX=/usr/local  LOCALBASE=/usr/local  LIBDIR="/usr/lib"  CC="/nxb-bin/usr/bin/cc" CFLAGS="-O2 -pipe  -fno-strict-aliasing"  CPP="/nxb-bin/usr/bin/cpp" CPPFLAGS=""  LDFLAGS="" LIBS=""  CXX="/nxb-bin/usr/bin/c++" CXXFLAGS="-O2 -pipe -fno-strict-aliasing "  MANPREFIX="/usr/local" BSD_INSTALL_PROGRAM="install  -s -m 555"  BSD_INSTALL_LIB="install  -s -m 0644"  BSD_INSTALL_SCRIPT="install  -m 555"  BSD_INSTALL_DATA="install  -m 0644"  BSD_INSTALL_MAN="install  -m 444"
--End MAKE_ENV--

--PLIST_SUB--
OSREL=11.0
PREFIX=%D
LOCALBASE=/usr/local
RESETPREFIX=/usr/local
PORTDOCS=""
PORTEXAMPLES=""
LIB32DIR=lib
DOCSDIR="share/doc/zhlt"
EXAMPLESDIR="share/examples/zhlt"
DATADIR="share/zhlt"
WWWDIR="www/zhlt"
ETCDIR="etc/zhlt"
--End PLIST_SUB--

--SUB_LIST--
PREFIX=/usr/local
LOCALBASE=/usr/local
DATADIR=/usr/local/share/zhlt
DOCSDIR=/usr/local/share/doc/zhlt
EXAMPLESDIR=/usr/local/share/examples/zhlt
WWWDIR=/usr/local/www/zhlt
ETCDIR=/usr/local/etc/zhlt
--End SUB_LIST--

---Begin make.conf---
.sinclude "/etc/make.nxb.conf"
USE_PACKAGE_DEPENDS=yes
BATCH=yes
WRKDIRPREFIX=/wrkdirs
PORTSDIR=/usr/ports
PACKAGES=/packages
DISTDIR=/distfiles
PACKAGE_BUILDING=yes
MACHINE=arm
MACHINE_ARCH=armv6
ARCH=${MACHINE_ARCH}
#### /usr/local/etc/poudriere.d/make.conf ####
# XXX: We really need this but cannot use it while 'make checksum' does not
# try the next mirror on checksum failure.  It currently retries the same
# failed mirror and then fails rather then trying another.  It *does*
# try the next if the size is mismatched though.
#MASTER_SITE_FREEBSD=yes
# Build ALLOW_MAKE_JOBS_PACKAGES with 2 jobs
MAKE_JOBS_NUMBER=2
#### /usr/ports/Mk/Scripts/ports_env.sh ####
ARCH=armv6
CONFIGURE_MAX_CMD_LEN=262144
OPSYS=FreeBSD
OSREL=11.0
OSVERSION=1100122
PYTHONBASE=/usr/local
UID=0
_JAVA_OS_LIST_REGEXP=native|linux
_JAVA_VENDOR_LIST_REGEXP=openjdk|oracle|sun
_JAVA_VERSION_LIST_REGEXP=1.6|1.7|1.8|1.6\+|1.7\+|1.8\+
_OSRELEASE=11.0-RELEASE-p13
#### Misc Poudriere ####
GID=0
DISABLE_MAKE_JOBS=poudriere
---End make.conf---
---Begin make.nxb.conf---
CC=/nxb-bin/usr/bin/cc
CPP=/nxb-bin/usr/bin/cpp
CXX=/nxb-bin/usr/bin/c++
AS=/nxb-bin/usr/bin/as
NM=/nxb-bin/usr/bin/nm
LD=/nxb-bin/usr/bin/ld
OBJCOPY=/nxb-bin/usr/bin/objcopy
SIZE=/nxb-bin/usr/bin/size
STRIPBIN=/nxb-bin/usr/bin/strip
SED=/nxb-bin/usr/bin/sed
READELF=/nxb-bin/usr/bin/readelf
RANLIB=/nxb-bin/usr/bin/ranlib
YACC=/nxb-bin/usr/bin/yacc
MAKE=/nxb-bin/usr/bin/make
STRINGS=/nxb-bin/usr/bin/strings
AWK=/nxb-bin/usr/bin/awk
FLEX=/nxb-bin/usr/bin/flex
---End make.nxb.conf---
--Resource limits--
cpu time               (seconds, -t)  unlimited
file size           (512-blocks, -f)  unlimited
data seg size           (kbytes, -d)  33554432
stack size              (kbytes, -s)  524288
core file size      (512-blocks, -c)  unlimited
max memory size         (kbytes, -m)  unlimited
locked memory           (kbytes, -l)  unlimited
max user processes              (-u)  89999
open files                      (-n)  1024
virtual mem size        (kbytes, -v)  unlimited
swap limit              (kbytes, -w)  unlimited
socket buffer size       (bytes, -b)  unlimited
pseudo-terminals                (-p)  unlimited
kqueues                         (-k)  unlimited
umtx shared locks               (-o)  unlimited
--End resource limits--
=======================<phase: check-sanity   >============================
===========================================================================
=======================<phase: pkg-depends    >============================
===>   zhlt-3.4 depends on file: /usr/local/sbin/pkg - not found
===>   Installing existing package /packages/All/pkg-1.10.1.txz
pkg-static: Warning: Major OS version upgrade detected.  Running "pkg-static install -f pkg" recommended
[110armv6-quarterly-job-08] Installing pkg-1.10.1...
[110armv6-quarterly-job-08] Extracting pkg-1.10.1: .......... done
===>   zhlt-3.4 depends on file: /usr/local/sbin/pkg - found
===>   Returning to build of zhlt-3.4
===========================================================================
=======================<phase: fetch-depends  >============================
===========================================================================
=======================<phase: fetch          >============================
===> Fetching all distfiles required by zhlt-3.4 for building
===========================================================================
=======================<phase: checksum       >============================
===> Fetching all distfiles required by zhlt-3.4 for building
=> SHA256 Checksum OK for zhlt34f-src.zip.
===========================================================================
=======================<phase: extract-depends>============================
===========================================================================
=======================<phase: extract        >============================
===> Fetching all distfiles required by zhlt-3.4 for building
===>  Extracting for zhlt-3.4
=> SHA256 Checksum OK for zhlt34f-src.zip.
===========================================================================
=======================<phase: patch-depends  >============================
===========================================================================
=======================<phase: patch          >============================
===>  Patching for zhlt-3.4
===>   Converting DOS text files to UNIX text files
===>  Applying FreeBSD patches for zhlt-3.4
===========================================================================
=======================<phase: build-depends  >============================
===========================================================================
=======================<phase: lib-depends    >============================
===========================================================================
=======================<phase: configure      >============================
===>  Configuring for zhlt-3.4
===========================================================================
<snip>
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/properties.cpp:3:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
hlcsg/properties.cpp:38:9: warning: unused variable 'list' [-Wunused-variable]
        char** list = NULL;
               ^
hlcsg/properties.cpp:37:8: warning: unused variable 'str' [-Wunused-variable]
        char* str = NULL;
              ^
hlcsg/properties.cpp:36:6: warning: unused variable 'numitems' [-Wunused-variable]
        int numitems = 0;
            ^
7 warnings generated.
/nxb-bin/usr/bin/c++ -O2 -pipe -fno-strict-aliasing  -Wall -Wextra  -DSYSTEM_POSIX -DSTDC_HEADERS -DHAVE_SYS_RESOURCE_H  -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H  -DHAVE_FCNTL_H -DHAVE_UNISTD_H -DDOUBLEVEC_T -o hlcsg/qcsg.o -c hlcsg/qcsg.cpp -Icommon -Itemplate
hlcsg/qcsg.cpp:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4018) // '<' : signed/unsigned mismatch
        ^
In file included from hlcsg/qcsg.cpp:13:
In file included from hlcsg/csg.h:17:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/qcsg.cpp:13:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:11:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/qcsg.cpp:13:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/qcsg.cpp:13:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
hlcsg/qcsg.cpp:447:27: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
            for (i = 0; i < f->w->m_NumPoints / 2; i++)      // add points backwards
                        ~ ^ ~~~~~~~~~~~~~~~~~~~~~
hlcsg/qcsg.cpp:1262:15: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]
        tmp = "Normal";
              ^
hlcsg/qcsg.cpp:1265:15: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]
        tmp = "Low";
              ^
hlcsg/qcsg.cpp:1268:15: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]
        tmp = "High";
              ^
hlcsg/qcsg.cpp:1354:17: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]
    g_Program = "hlcsg";
                ^
hlcsg/qcsg.cpp:1501:21: warning: array index 32 is past the end of the array (which contains 32 elements) [-Warray-bounds]
                    wadconfigname[MAX_WAD_CFG_NAME] = 0;
                    ^             ~~~~~~~~~~~~~~~~
hlcsg/qcsg.cpp:32:1: note: array 'wadconfigname' declared here
char            wadconfigname[MAX_WAD_CFG_NAME];
^
hlcsg/qcsg.cpp:867:17: warning: unused function 'CopyGenerictoCLIP' [-Wunused-function]
static void     CopyGenerictoCLIP(const brush_t* const b)
                ^
12 warnings generated.
/nxb-bin/usr/bin/c++ -O2 -pipe -fno-strict-aliasing  -Wall -Wextra  -DSYSTEM_POSIX -DSTDC_HEADERS -DHAVE_SYS_RESOURCE_H  -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H  -DHAVE_FCNTL_H -DHAVE_UNISTD_H -DDOUBLEVEC_T -o hlcsg/textures.o -c hlcsg/textures.cpp -Icommon -Itemplate
In file included from hlcsg/textures.cpp:1:
In file included from hlcsg/csg.h:17:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/textures.cpp:1:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:11:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/textures.cpp:1:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/textures.cpp:1:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
hlcsg/textures.cpp:305:46: warning: comparison of integers of different signs: 'int' and 'unsigned int' [-Wsign-compare]
            if (lumpinfo[nTexLumps].disksize > MAX_TEXTURE_SIZE)
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~
5 warnings generated.
/nxb-bin/usr/bin/c++ -O2 -pipe -fno-strict-aliasing  -Wall -Wextra  -DSYSTEM_POSIX -DSTDC_HEADERS -DHAVE_SYS_RESOURCE_H  -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H  -DHAVE_FCNTL_H -DHAVE_UNISTD_H -DDOUBLEVEC_T -o hlcsg/wadcfg.o -c hlcsg/wadcfg.cpp -Icommon -Itemplate
In file included from hlcsg/wadcfg.cpp:3:
In file included from hlcsg/csg.h:17:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadcfg.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:11:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadcfg.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/wadcfg.cpp:3:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
hlcsg/wadcfg.cpp:100:29: warning: illegal character encoding in character literal [-Winvalid-source-encoding]
        if (ThinkChar[0] == '<FF>')
                            ^
hlcsg/wadcfg.cpp:85:5: warning: array index 1 is past the end of the array (which contains 1 element) [-Warray-bounds]
    ThinkChar[1] = '\0';
    ^         ~
hlcsg/wadcfg.cpp:77:5: note: array 'ThinkChar' declared here
    char    ThinkChar[1];       // 2 char array = thinkchar and null terminator
    ^
hlcsg/wadcfg.cpp:202:54: warning: conversion from string literal to 'char *' is deprecated [-Wc++11-compat-deprecated-writable-strings]
    WadCfgParseError(TokenBuffer, g_wadcfglinecount, "(eof)");
                                                     ^
hlcsg/wadcfg.cpp:370:10: warning: address of array 'wadconfigname' will always evaluate to 'true' [-Wpointer-bool-conversion]
    if (!wadconfigname)
        ~^~~~~~~~~~~~~
8 warnings generated.
/nxb-bin/usr/bin/c++ -O2 -pipe -fno-strict-aliasing  -Wall -Wextra  -DSYSTEM_POSIX -DSTDC_HEADERS -DHAVE_SYS_RESOURCE_H  -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H  -DHAVE_FCNTL_H -DHAVE_UNISTD_H -DDOUBLEVEC_T -o hlcsg/wadinclude.o -c hlcsg/wadinclude.cpp -Icommon -Itemplate
hlcsg/wadinclude.cpp:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4267) // 'size_t' to 'unsigned int', possible loss of data
        ^
In file included from hlcsg/wadinclude.cpp:3:
In file included from hlcsg/csg.h:17:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadinclude.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:11:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadinclude.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/wadinclude.cpp:3:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
5 warnings generated.
/nxb-bin/usr/bin/c++ -O2 -pipe -fno-strict-aliasing  -Wall -Wextra  -DSYSTEM_POSIX -DSTDC_HEADERS -DHAVE_SYS_RESOURCE_H  -DHAVE_SYS_STAT_H -DHAVE_SYS_TIME_H  -DHAVE_FCNTL_H -DHAVE_UNISTD_H -DDOUBLEVEC_T -o hlcsg/wadpath.o -c hlcsg/wadpath.cpp -Icommon -Itemplate
In file included from hlcsg/wadpath.cpp:3:
In file included from hlcsg/csg.h:17:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadpath.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:11:
common/mathlib.h:1:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4244) //amckern - 64bit - double to vec_t
        ^
In file included from hlcsg/wadpath.cpp:3:
In file included from hlcsg/csg.h:19:
In file included from common/winding.h:13:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
In file included from hlcsg/wadpath.cpp:3:
In file included from hlcsg/csg.h:24:
common/boundingbox.h:6:9: warning: unknown pragma ignored [-Wunknown-pragmas]
#pragma warning(disable: 4305)                             // truncation from 'const double' to 'float'
        ^
4 warnings generated.
/nxb-bin/usr/bin/c++  -o hlcsg/hlcsg common/blockmem.o common/bspfile.o common/cmdlib.o common/filelib.o common/files.o common/log.o common/mathlib.o common/messages.o common/resourcelock.o common/scriplib.o common/threads.o common/winding.o hlcsg/autowad.o hlcsg/brush.o hlcsg/brushunion.o hlcsg/hullfile.o hlcsg/map.o hlcsg/netvis_in_vis.o hlcsg/properties.o hlcsg/qcsg.o hlcsg/textures.o hlcsg/wadcfg.o hlcsg/wadinclude.o hlcsg/wadpath.o -lpthread
hlcsg/textures.o: In function `TexinfoForBrushTexture(plane_t const*, brush_texture_t*, double const*)':
hlcsg/textures.cpp:(.text+0x1334): undefined reference to `sincos'
c++: error: linker command failed with exit code 1 (use -v to see invocation)
*** Error code 1

Stop.
make[1]: stopped in /wrkdirs/usr/ports/games/zhlt/work/zhlt-3.4
*** Error code 1

Stop.
make: stopped in /usr/ports/games/zhlt



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201710220135.v9M1ZnIC046278>