How to make www/npm pick www/node4 and www/node6 instead of www/node?
Adam Weinberger
adamw at adamw.org
Sat Sep 16 15:25:14 UTC 2017
> On 16 Sep, 2017, at 7:40, Sunpoet Po-Chuan Hsieh <sunpoet at FreeBSD.org> wrote:
>
> On Sun, Sep 10, 2017 at 4:25 AM, Marcin Cieslak <saper at saper.info> wrote:
>
>> Hello,
>>
>> in the past (before r414303[1])
>> [1] https://svnweb.freebsd.org/ports/head/www/npm/Makefile?view=
>> log&pathrev=414303
>>
>> npm had a couple of OPTIONS to select which node engine should be used.
>>
>> Now this is all gone and replaced with
>>
>> RUN_DEPENDS= node>=0.8.0:www/node
>>
>>
>> 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.
>>
>> The following attempt to cheat does not help:
>>
>> poudriere bulk -j node4_10_3_i386 -p exp www/node4
>> textproc/node-sass
>>
>> (textproc/node-sass is my custom port https://github.com/saper/ports
>> -exp/tree/master/textproc/node-sass)
>>
>> since poudriere starts to build www/node4 and www/node in parallel.
>>
>>
>> Would that help if the npm dependency were changed to
>>
>> RUN_DEPENDS= node:www/node
>>
>> so that only existing executable is needed? How could I tell poudriere to
>> pick node4 first?
>>
>> I used to maintain a private copy of the npm port with lots of OPTIONS and
>> this is a PITA.
>>
>>
>>
>> I have separate poudriere jails for all architectures I have decided to
>> support:
>>
>> $ 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
>>
>> In the past those had OPTIONS set to pick a proper engine as a www/npm
>> dependency.
>>
>>
>> How to do it cleanly now?
>>
>> Marcin
>
>
> Hello,
>
> I could add options for older node versions.
> You could use these options to select different node versions for your
> poudriere builds.
>
> 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}.
>
> With this change, npm packages of different node version could be built by
> FreeBSD cluster.
>
> I'm looking forward to bhughes@'s comment.
>
> Regards,
> sunpoet
I'd hold off on that for now, sunpoet. Either USES=node 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
--
Adam Weinberger
adamw at adamw.org
https://www.adamw.org
More information about the freebsd-ports
mailing list