Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: fix build break when omitting icu #14533

Closed
wants to merge 1 commit into from

Conversation

MSLaguana
Copy link
Contributor

When building without ICU (vcbuild.bat intl-none) the unicode/ucnv.h
header is not available, which caused compilation errors prior to this
change.

Checklist
  • make -j4 test (UNIX), or vcbuild test (Windows) passes
  • commit message follows commit guidelines
Affected core subsystem(s)

Build

When building without ICU (`vcbuild.bat intl-none`) the unicode/ucnv.h
header is not available, which caused compilation errors prior to this
change.
@nodejs-github-bot nodejs-github-bot added c++ Issues and PRs that require attention from people who are familiar with C++. i18n-api Issues and PRs related to the i18n implementation. labels Jul 28, 2017
@MSLaguana
Copy link
Contributor Author

Note that the unicode/ucnv.h header is already included in the node_i18n.cc file, gated by an appropriate ifdef.

@TimothyGu
Copy link
Member

LGTM. Can you see if #14489 will fix build first though?

@MSLaguana
Copy link
Contributor Author

I didn't see that PR earlier. Just had a look now, and I don't think it will fix the missing header issue that I was seeing since you don't touch any of the C files or headers. I'll try it out when I get some time.

@MSLaguana
Copy link
Contributor Author

@TimothyGu just tried your PR, and got the same error about a missing header as I expected.

@TimothyGu
Copy link
Member

@MSLaguana Okay, thanks for checking!

Copy link
Contributor

@refack refack left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Need to figure out how to CI this...

@refack
Copy link
Contributor

refack commented Aug 1, 2017

CI (forced to build without a273b03) https://ci.nodejs.org/job/node-test-commit/11483/

@refack
Copy link
Contributor

refack commented Aug 1, 2017

@MSLaguana this might be incomplete, see CI results:

../src/inspector_io.cc:14:28: fatal error: unicode/unistr.h: No such file or directory
 #include <unicode/unistr.h>
src\inspector_io.cc(14): fatal error C1083: Cannot open include file: 'unicode/unistr.h': No such file or directory [c:\workspace\node-compile-windows\label\win-vs2017\node.vcxproj]

Copy link
Contributor

@refack refack left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be incomplete

@MSLaguana
Copy link
Contributor Author

Looks like you are right @refack, wonder why it built successfully for me without changes to that file too. I'll make sure I get the same error, then fix it as well.

@kfarnung
Copy link
Contributor

kfarnung commented Aug 1, 2017

@refack I don't think your change to disable intl was complete. Inspector depends on it and checks options.with_intl to figure that out:

def configure_inspector(o):
  disable_inspector = (options.without_inspector or
                       options.with_intl in (None, 'none') or
                       options.without_ssl)
  o['variables']['v8_enable_inspector'] = 0 if disable_inspector else 1

Maybe you can override options.with_intl instead?

@MSLaguana
Copy link
Contributor Author

Here's a CI run where I've overridden options.with_intl as @kfarnung suggested: https://ci.nodejs.org/job/node-test-commit/11488/ using commit MSLaguana@ea44d36

@refack
Copy link
Contributor

refack commented Aug 1, 2017

Well it builds, next get the tests to pass ( @MSLaguana I mean in a diffirent future PR )

@refack refack self-assigned this Aug 1, 2017
@MSLaguana
Copy link
Contributor Author

I think that #14489 will help with the next failures, e.g. lint failing due to a lack of ICU should be fixed by that.

@refack
Copy link
Contributor

refack commented Aug 1, 2017

Extra check of just this commit: https://ci.nodejs.org/job/node-test-commit-linuxone/7676/

refack pushed a commit to refack/node that referenced this pull request Aug 1, 2017
When building without ICU (`vcbuild.bat intl-none`) the unicode/ucnv.h
header is not available, which causes compilation errors.

PR-URL: nodejs#14533
Reviewed-By: Timothy Gu <timothygu99@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
@refack
Copy link
Contributor

refack commented Aug 1, 2017

Landed in 1782b38

@refack refack closed this Aug 1, 2017
@MSLaguana MSLaguana deleted the fixNoIcuBuildBreak branch August 1, 2017 18:55
addaleax pushed a commit that referenced this pull request Aug 2, 2017
When building without ICU (`vcbuild.bat intl-none`) the unicode/ucnv.h
header is not available, which causes compilation errors.

PR-URL: #14533
Reviewed-By: Timothy Gu <timothygu99@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
@addaleax addaleax mentioned this pull request Aug 2, 2017
@refack refack removed their assignment Oct 20, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c++ Issues and PRs that require attention from people who are familiar with C++. i18n-api Issues and PRs related to the i18n implementation.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants