-
Notifications
You must be signed in to change notification settings - Fork 1
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
[GN]: GN fails to build on AIX #16
Comments
Currently failing on "wget --no-check-certificate https://chromium.googlesource.com/chromium/chromium/+archive/master/third_party/libevent.tar.gz" |
@liKelvinKh For now can you download the tarball on another machine and copy over? |
okay, I will do that |
Thanks, basically to get the environment set in-order to run bootstrap script, you can update the script as follows (assuming you copy the tarball in
|
What error do you get with the debugger? It is possible that the bootstrap script is missing logic for AIX. |
Log: it complained that the system cannot find 'cc'. I added logic so that when it is AIX, it uses gcc instead of cc. |
Findings:
edit: Disregard the following, there isn't a select.h in libevent |
@liKelvinKh: does it allow you to override with the CC / CXX environment variables? |
@joransiu : It didn't override it, but it added a default value in case the environment variable was not found.
os.environ.get('CC') looks for an environment variable 'CC'. And if it is not found, it uses the second parameter instead as a default value. |
Getting this error. Ran the original command and nothing new shows up. It appears that "next" exists in a struct defined in evrpc.h:
or
Here is one of the pieces of code in evrpc that uses "next":
|
@liKelvinKh |
@jbajwa but variable "next" is still undeclared though? |
Discussed with @liKelvinKh , the next step would be to get the correct |
…iew.chromium.org/2536463002/ ) Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/11861 See: https://github.com/v8/v8/wiki/Blink-layout-tests Original issue's description: > Object > -- New JSObject for promises: JSPromise > > Builtins > -- PromiseThen TFJ > -- PromiseCreateAndSet TFJ for internal use > -- PerformPromiseThen TFJ for internal use > -- PromiseInit for initial promise setup > -- SpeciesConstructor for use in PromiseThen > -- ThrowIfNotJSReceiver for use in SpeciesConstructor > -- AppendPromiseCallback to update FixedArray with new callback > -- InternalPerformPromiseThen > > Promises.js > -- Cleanup unused symbols > -- Remove PerformPromiseThen > -- Remove PromiseThen > -- Remove PromiseSet > -- Remove PromiseAttachCallbacks > > Runtime > -- PromiseSet to set promise inobject values > -- Refactor functions to use FixedArrays for callbacks instead of > JSArray > -- Runtime_PromiseStatus to return promise status > -- Runtime_PromiseResult to return promise result > -- Runtime_PromiseDeferred to return deferred attached to promise > -- Runtime_PromiseRejectReactions to return reject reactions attached > to promise > > This CL results in a 13.07% improvement in the promises benchmark > (over 5 runs). > > BUG=v8:5343 > > Committed: https://crrev.com/30b564c76f490f8f6b311a74b25b26cf0a96be2d > Cr-Commit-Position: refs/heads/master@{#41503} [email protected],[email protected],[email protected],[email protected] # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5343 Review-Url: https://codereview.chromium.org/2554013002 Cr-Commit-Position: refs/heads/master@{#41512}
….chromium.org/2536463002/ )" This reverts commit 4c7cccf. BUG=v8:5343 Review-Url: https://codereview.chromium.org/2554943002 Cr-Commit-Position: refs/heads/master@{#41534}
…ps://codereview.chromium.org/2549773002/ ) Reason for revert: gc stress failures: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/8024 Original issue's description: > Internalize strings in-place > > using newly introduced ThinStrings, which store a pointer to the actual, > internalized string they represent. > > BUG=v8:4520 > > Review-Url: https://codereview.chromium.org/2549773002 > Cr-Commit-Position: refs/heads/master@{#42168} > Committed: https://chromium.googlesource.com/v8/v8/+/af51befe694fe039db3554d4b9165f7d6baceb77 [email protected],[email protected],[email protected],[email protected] # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4520 Review-Url: https://codereview.chromium.org/2621913002 Cr-Commit-Position: refs/heads/master@{#42170}
The required repositories from chromium to build GN -
Below are initial patches with a link to where the master lives on base_patch.txt | https://chromium.googlesource.com/chromium/src/base/+/master | commit to apply on top of - cd3764c886341eea637a92960e92f8668d61ec42 These changes make it possible to build These are still somewhat rough and probably can be polished a lot further. Any sort of feedback would be great. |
Patches for building v8 using the aforementioned GN ( the one built on aix ) - v8_patch.txt | https://chromium.googlesource.com/v8/v8.git/+/master | commit to apply on top of - c9e83ebc3947aca22d024129963e1e7d25d804acc build_patch.txt | https://chromium.googlesource.com/chromium/src/+/master/build/ | commit to apply on top of - 0fdcf96e9928229dd4b3b366b00a49da8eae00ed icu_patch.txt | commit to apply on top of - ec5152fccfdf72281af53f863e3859c20f409153 |
This is now complete with the required patches committed to Google's repository. The GN binary was ported for AIX along with linux_s390x, linux_ppc64 and linux_ppc64le. ( See: https://chromium.googlesource.com/chromium/src/+/0088ee5017f4bef6c27243a54d8998f993db11b8). The patches required to build v8 with using aforementioned GN binary have also went though. Since they touch projects on both V8 and Chromium (for utilizing the already existing build toolchain), this had to be done in multiple cls which are listed below. Also, note that it's up to us to keep the GN binary building on our supported platforms (similar to how we currently deal with V8). |
I've updated the configs for GN to build on PPC/s390 linux (CL), but on AIX it requires more effort as one of its dependencies (libevent) is failing to build.
Script to build GN standalone using ninja:
info about
ninja
: https://ninja-build.org/manual.htmlinfo about
gn
: https://chromium.googlesource.com/chromium/src/tools/gnThe text was updated successfully, but these errors were encountered: