details of beefy12 poudriere jail pkg build environments

Oliver Schonrock oliver at schonrocks.com
Fri Dec 1 17:42:11 UTC 2017


I have not dived down this deep into the ports => pkg build system
before, so excuse me if I get this wrong.

TLDR;
-----

I suspect that the package I get from beefy12 in this build:

https://pkg-status.freebsd.org/builds/default:default:head-amd64:p455158_s326378:beefy12

was built in a jail with clang < 4.0.0 (ie FreeBSD 11, not 11.1 or
stable). My local machine is FreeBSD 11.1-RELEASE with clang = 4.0.0.
If I build my port locally from ports, it works, if I install the binary
from beefy it breaks.

Can anyone confirm what the jail environment is for that build? (I
haven't found how to look that up).


Longer version:
----------------

I am building www/npm-node8. When I use the resulting node8 binary to do
an "npm install node-sass" I get this error:

error: "_LIBCPP_TRIVIAL_PAIR_COPY_CTOR" is no longer supported. use
_LIBCPP_DEPRECATED_ABI_DISABLE_PAIR_TRIVIAL_COPY_CTOR
      instead

Node8 builds "gyp" which is used to build the "node-sass" addon. Gyp
source has this:

common.gypi:L~424:
        'conditions': [
          ['llvm_version < "4.0"', {
            # Use this flag because on FreeBSD std::pairs copy
constructor is non-trivial.
            # Doesn't apply to llvm 4.0 (FreeBSD 11.1) or later.
            # Refs:
https://lists.freebsd.org/pipermail/freebsd-toolchain/2016-March/002094.html
            # Refs:
https://svnweb.freebsd.org/ports/head/www/node/Makefile?revision=444555&view=markup
            'cflags': [ '-D_LIBCPP_TRIVIAL_PAIR_COPY_CTOR=1' ],
          }],


if built with clang<4.0.0 it will use that define which breaks the
subsequent build of node-sass.

If I use the pkg from beefy, the node-sass build breaks. If I build
node8 from ports on my local machine (which has clang=4.0.0) then that
skips the define and the node-sass build works.

So:

Can anyone confirm what version of clang/llvm we have on the beefy12
jail for the above build?

If my suspicion is right, and the beefy12 jail has clang < 4.0.0, then
(other than building locally or running my own poudriere server) what
options do I have?

First time I have had any trouble with the binary packages.

Thanks



-- 
Oliver Schönrock
email    : oliver at schonrocks.com

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 473 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-ports/attachments/20171201/1b6e4959/attachment.sig>


More information about the freebsd-ports mailing list