That seems reasonable. Great work on the PR.

On Thu, Mar 24, 2022 at 10:45 PM Nicholas Nezis <[email protected]>
wrote:

> Ok, I think this PR has been around long enough and has a couple other sets
> of eyes on it. I made tweaks based on the feedback. I will merge it later
> tonight. Feel free to take a final look. Thanks to those who helped review
> the changes.
>
> https://github.com/apache/incubator-heron/pull/3779
>
> On Sun, Feb 27, 2022 at 4:38 PM Nicholas Nezis <[email protected]>
> wrote:
>
> > Ok, so a lot more Bazel related cleanup on that PR.
> > https://github.com/apache/incubator-heron/pull/3779
> >
> > 1. Removed Docker specific `bazel.rc`
> >   a. No longer needed now that we have JDK 11 and it works better in
> Docker
> > 2. Removed Travis specific cross-compile toolchain
> >   a. No longer needed now that Travis CI is using a modern OS version
> > 3. Removed Travis specific `bazel.rc`
> >   a. I don't think this is needed. This was due to the old OS and limited
> > VM resources. Can put back if necessary, but the tests seem to be passing
> > just fine. Even faster than before.
> > 4. Removed ancient `Applatix` CI scripts
> >   a. Not used or maintained. They were acquired by Intuit in 2018.
> > 5. Updated documentation
> >   a. Including a switch from installing Bazel to Bazelisk. This will help
> > with documentation maintenance.
> >
> > On Sun, Feb 27, 2022 at 2:23 AM Nicholas Nezis <[email protected]
> >
> > wrote:
> >
> >> While working through a bug we ran into with MacOS failing to compile, I
> >> got a better understanding of some of the Bazel settings. In another
> thread
> >> with Josh, who is compiling on the Apple M1 for the first time, he ran
> into
> >> issues with Linux vs OSX.
> >>
> >> It dawned on me that we were explicitly setting the config to modify a
> >> number of settings. Some of them include the following items:
> >> 1. Platform libraries (Linux C libraries)
> >> 2. Platform + CPU decision on which binary to use (Helm binary)
> >> 3. OS decision (MacOS unique steps vs Linux as the default)
> >> 4. Optimization setting (We just hardcoded to C03, but Bazel reported as
> >> "fastbuild")
> >> 5. Stylecheck toggle (darwin vs darwin_nostyle)
> >>
> >> In a recent PR, I collapsed all of the Linux flavors to a standard
> >> `--config=linux`. This was born out of my frustration with the build
> >> scripts not jiving with Bazel standards. But it was not actually solving
> >> the problem. I'm hoping that this PR will help resolve some of the
> issues.
> >>
> >> https://github.com/apache/incubator-heron/pull/3779
> >>
> >> Changes:
> >> 1. No longer need to set `--config`. Bazel will detect the OS
> >> automatically.
> >> 2. Default is `fastbuild`, but you can add `-c opt` to build optimized
> >> build.
> >>   a. You can even build both side by side with Bazel making a folder
> like
> >> darwin-fastbuild and darwin-opt
> >> 3. If you want to run stylecheck, you can add `--config=stylecheck`
> >> 4. The Linux libraries (-lm, -lpthread, -lrt) are included in
> >> `tools/platform/BUILD`
> >> 5. As we add support for ARM, we can add more options in
> >> `tools/platform/BUILD`
> >> 6. Scripts outside of Bazel were updated to remove `--config`.
> >> 7. Scripts outside of Bazel will specify  `-c opt` or
> >> `--config=stylecheck` when needed.
> >>
> >
>

Reply via email to