Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 16 Sep 2017 09:25:08 -0600
From:      Adam Weinberger <adamw@adamw.org>
To:        Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org>
Cc:        Marcin Cieslak <saper@saper.info>, ports <ports@freebsd.org>, bhughes@freebsd.org
Subject:   Re: How to make www/npm pick www/node4 and www/node6 instead of www/node?
Message-ID:  <C91EE144-2D0F-4590-B350-8FECD84A88E1@adamw.org>
In-Reply-To: <CAMHz58TJYd77fFr3EMyompC3a14%2BxfDqLm7Jbp4gxhZHD1TiwQ@mail.gmail.com>
References:  <nycvar.OFS.7.76.6.1709092011170.3008@z.fncre.vasb> <CAMHz58TJYd77fFr3EMyompC3a14%2BxfDqLm7Jbp4gxhZHD1TiwQ@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On 16 Sep, 2017, at 7:40, Sunpoet Po-Chuan Hsieh <sunpoet@FreeBSD.org> =
wrote:
>=20
> On Sun, Sep 10, 2017 at 4:25 AM, Marcin Cieslak <saper@saper.info> =
wrote:
>=20
>> Hello,
>>=20
>> in the past (before r414303[1])
>> [1] https://svnweb.freebsd.org/ports/head/www/npm/Makefile?view=3D
>> log&pathrev=3D414303
>>=20
>> npm had a couple of OPTIONS to select which node engine should be =
used.
>>=20
>> Now this is all gone and replaced with
>>=20
>> RUN_DEPENDS=3D    node>=3D0.8.0:www/node
>>=20
>>=20
>> I am trying to build node-sass binaries for FreeBSD (I used to =
publish
>> them in the past)
>> and that requires running poudriere against multiple engines.
>>=20
>> The following attempt to cheat does not help:
>>=20
>>         poudriere bulk -j node4_10_3_i386 -p exp www/node4
>> textproc/node-sass
>>=20
>> (textproc/node-sass is my custom port https://github.com/saper/ports
>> -exp/tree/master/textproc/node-sass)
>>=20
>> since poudriere starts to build www/node4 and www/node in parallel.
>>=20
>>=20
>> Would that help if the npm dependency were changed to
>>=20
>> RUN_DEPENDS=3D    node:www/node
>>=20
>> so that only existing executable is needed? How could I tell =
poudriere to
>> pick node4 first?
>>=20
>> I used to maintain a private copy of the npm port with lots of =
OPTIONS and
>> this is a PITA.
>>=20
>>=20
>>=20
>> I have separate poudriere jails for all architectures I have decided =
to
>> support:
>>=20
>> $ poudriere jail -ln | grep ^node
>> node4_10_3_amd64
>> node4_10_3_i386
>> node6_10_3_amd64
>> node6_10_3_i386
>> node8_10_3_amd64
>> node8_10_3_i386
>>=20
>> In the past those had OPTIONS set to pick a proper engine as a =
www/npm
>> dependency.
>>=20
>>=20
>> How to do it cleanly now?
>>=20
>> Marcin
>=20
>=20
> Hello,
>=20
> I could add options for older node versions.
> You could use these options to select different node versions for your
> poudriere builds.
>=20
> On the other hand, I'm planning a change for npm port.
> It includes:
> - Add slave ports of npm (e.g. npm-node4, npm-node6) for older node
> versions.
> - Remove www/npm{2,3,4}.
>=20
> With this change, npm packages of different node version could be =
built by
> FreeBSD cluster.
>=20
> I'm looking forward to bhughes@'s comment.
>=20
> Regards,
> sunpoet

I'd hold off on that for now, sunpoet. Either USES=3Dnode or subpackages =
(both in progress) will be viable alternatives soon. I'd wait and see if =
one of those does what you want first.

# Adam


--=20
Adam Weinberger
adamw@adamw.org
https://www.adamw.org




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C91EE144-2D0F-4590-B350-8FECD84A88E1>