> > Yes, but then you're doing a custom build anyway. I thought the goal was > to take a regular V8 build and integrate it to a MSVC project. >
Oh, I thought the thread was about custom builds. (It's not like we're distributing *any* official builds -- one reason being that there are so many possible configurations.) Out of interest: How much test coverage does a "use_custom_libcxx = false" > build have upstream? > At a quick look, it's covered at least by this bot: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket.appspot.com/8885642278861891136/+/steps/build/0/steps/lookup_GN_args/0/logs/gn_args/0 There might well be more bots that cover it in the wider Chromium landscape. On Monday, March 16, 2020 at 11:37:28 AM UTC-7, Jakob Kummerow wrote: >> >> Is #2 not addressed by use_custom_libcxx = false in args.gn? At least on >> Linux, that causes the default system libstdc++ to be used. >> >> >> On Mon, Mar 16, 2020 at 7:32 PM 'Bill Ticehurst' via v8-dev < >> [email protected]> wrote: >> >>> I thought I'd posted before on why this is a problem currently, but >>> can't find it. To summarize the major points: >>> >>> 1. Clang builds with flags MSVC doesn't support - specifically, >>> /Zc:dllexportInlines- can cause issues with component builds. (As Clang >>> won't export __declspec(dllexport) functions that have an inline >>> definition, but MSVC may still try to import them - especially on debug >>> builds where it inlines less). Maybe this is the missing symbols issues you >>> hit, Chris? >>> 2. While the compiler may try to be ABI compatible, the libc++ standard >>> library from LLVM that V8 uses by default isn't compatible with the MSVC >>> C++ standard runtime library, and some APIs expose C++ STL types. >>> >>> Arguable both of these could be cleaned up in the codebase to where they >>> aren't a problem, but right now they are. (#1 probably isn't an issue if >>> building a static library to link in, but #2 still would be). >>> >>> - Bill >>> >>> On Sunday, March 15, 2020 at 5:58:24 PM UTC-7, Chris Fischer wrote: >>>> >>>> That was my thought as well. However, when I successfully built V8 >>>> with CLANG and then tried to build our application with MSVC 2017 it failed >>>> in the link process with missing symbols. Rebuilding the same version of >>>> V8 with MSVC (and fixing a few compiler errors and warnings for that to >>>> work) produced new binaries that resolved the linker errors. >>>> >>>> >>>> On Sunday, March 15, 2020 at 5:54:51 AM UTC-4, Ben Noordhuis wrote: >>>>> >>>>> On Sat, Mar 14, 2020 at 3:03 PM Chris Fischer <[email protected]> >>>>> wrote: >>>>> > >>>>> > I'd like to chime in for continued support of MSVC (with build >>>>> regression automated tests). We embed V8 in a large project with many >>>>> third party code components. Many of these components are not available >>>>> as >>>>> source so building with CLANG is not viable. We currently use V8 as a >>>>> component build (DLL) but could also use V8 as a static library compiled >>>>> with /MD. In general, most of our third party software comes with these >>>>> too variants (static & dynamic libraries with /MD runtime). >>>>> > >>>>> > I'd be happy to help in contributing / maintaining MSVC support but >>>>> would need a primer on contributing and and some contacts as sounding >>>>> boards for feedback and brainstorming. >>>>> > >>>>> > Chris Fischer >>>>> >>>>> I don't have a stake in this and I don't want to derail the >>>>> conversation but the clang-cl frontend is ABI-compatible with cl.exe >>>>> these days, isn't it? You don't even need to use it for all of your >>>>> project, just V8. >>>>> >>>> -- >>> -- >>> v8-dev mailing list >>> [email protected] >>> http://groups.google.com/group/v8-dev >>> --- >>> You received this message because you are subscribed to the Google >>> Groups "v8-dev" group. >>> To unsubscribe from this group and stop receiving emails from it, send >>> an email to [email protected]. >>> To view this discussion on the web visit >>> https://groups.google.com/d/msgid/v8-dev/927d7546-969b-4243-a9f1-4802c3301924%40googlegroups.com >>> <https://groups.google.com/d/msgid/v8-dev/927d7546-969b-4243-a9f1-4802c3301924%40googlegroups.com?utm_medium=email&utm_source=footer> >>> . >>> >> -- > -- > v8-dev mailing list > [email protected] > http://groups.google.com/group/v8-dev > --- > You received this message because you are subscribed to the Google Groups > "v8-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/v8-dev/a73110ff-d588-479a-8bbb-d96bba3148bb%40googlegroups.com > <https://groups.google.com/d/msgid/v8-dev/a73110ff-d588-479a-8bbb-d96bba3148bb%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-dev/CAKSzg3TwAMUC0vqZ4VMPMc4XRXXeZNJBFRqcrEM9OjOjYF1d-g%40mail.gmail.com.
