node: tweak icu4c setup

Personally, I’d be content to keep the dep as recommended, but it’s
possible the big red warning on the different build standards is making
people jumpy, and there are use cases where the `icu4c` dep does
interfere with certain usage, so I’ve partially reverted the direction
I took in the Node PR the other day by making the new ICU capabilities
optional.

Also added a caveat for the benefit of clarity, and hope more people
complain to Node upstream to fix the real root cause of the problem
here and make life for packagers a little easier.

Closes Homebrew/homebrew#36712.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
Dominyk Tiller 2015-02-10 20:58:58 +00:00 committed by Mike McQuaid
parent 5e5f9c0b0b
commit 0f005c5cb9

View file

@ -19,9 +19,12 @@ class Node < Formula
depends_on :python => :build
depends_on "pkg-config" => :build
depends_on "icu4c" => :recommended
depends_on "openssl" => :optional
# https://github.com/joyent/node/issues/7919
# https://github.com/Homebrew/homebrew/issues/36681
depends_on "icu4c" => :optional
fails_with :llvm do
build 2326
end
@ -114,6 +117,18 @@ class Node < Formula
EOS
end
if build.with? "icu4c"
s += <<-EOS.undent
Please note `icu4c` is built with a newer deployment target than Node and
this may cause issues in certain usage. Node itself is built against the
outdated `libstdc++` target, which is the root cause. For more information see:
https://github.com/joyent/node/issues/7919
If this is an issue for you, do `brew install node --without-icu4c`.
EOS
end
s
end