electron/libchromiumcontent

Use custom libc++?

alexeykuzmin opened this issue ยท 8 comments

Chromium has started to use custom libc++ build
https://docs.google.com/document/d/1zmHUXlpGNXB433wHnr40dLwj7c-USsIVlyAeH7vOI9o/edit#heading=h.bfky2xssferh

Right now we don't use it setting use_custom_libcxx = false, but at some point it might stop working.

/cc @zcbenz, @alespergl, @gavignus

There are looming issues with native Node modules' compatibility if custom standard library were introduced. For that reason I would avoid that scenario for as long as possible.

Is there a plan what to do if it will become the only way to build Chromium?
We can try to help keeping it alive in Chromium, but is it possible?

If that time comes and it's somehow impossible to use the system library, the solution will depend on the nature of that incompatibility. It might be possible to change a few compiler switches and some lines of code. But it's hard to plan for a disaster if the scale of it is unpredictable. Let's keep watching for now.

We probably have to use custom libc++ for the Chrome 62 upgrade. Chromium is now requiring libstdc++ > 4.8, which is newer than what's in Ubuntu LTS distribution, which is installed on most CI machines.

If we still link Electron with system libstdc++, Electron would have a requirement of libstdc++ > 4.8, making Electron apps unable to run on CI machines with default setup.

FYI... we are using our own custom docker images for CI, so we can change those images.

@jkleinsc As far as I understand without custom libc++ we cannot support Ubuntu 14.04 LTS anymore.

@zcbenz Is everything ok now? Should we close this issue when the Ch62 PRs is merged?

@alexeykuzmin I believe everything is working fine, native modules also work fine on Linux.