google / bloaty

Bloaty: a size profiler for binaries
Apache License 2.0
4.66k stars 337 forks source link

Prefer using system Abseil if available #347

Open carlocab opened 1 year ago

carlocab commented 1 year ago

Newer versions of Protobuf (22+) pull in Abseil as a dependency. We want to avoid using our bundled copy for these cases, as this will likely conflict with the version of Abseil that Protobuf uses.

The simplest way to do this seems to be to just prefer a system installation of Abseil if it's available.

I've also cherry-picked from #207 to simplify what I want to do here.

carlocab commented 1 year ago

I've also noticed some similar logic gated behind if(UNIX OR MINGW), but I don't quite follow why this is done. Happy to require something similar behind using a system Abseil if desired.

carlocab commented 5 months ago

Ping @haberman?

haberman commented 4 months ago

Sorry for the long delay on this.

The CI tests aren't running on this PR and I'm not sure why. They seems to be running on some PRs but not others.

The tests ran on the most recently merged PR https://github.com/google/bloaty/pull/370. I wonder if there is any chance that PR broke the CI. Any idea @arunsathiya?

arunsathiya commented 4 months ago

The tests ran on the most recently merged PR https://github.com/google/bloaty/pull/370. I wonder if there is any chance that PR broke the CI. Any idea @arunsathiya?

I am not sure just yet, but the workflows on the PR #370 were manually triggered by you, as a maintainer of the project.

cifuzz.yml build.yml
image image

Would something similar be required here? I am unable to see those workflows on the checks section of the current PR #347, possibly because I am not a maintainer of this project:

image

haberman commented 4 months ago

I saw the button on the other PR and clicked it. But I don't see the button here. I am not sure why it disappeared.

carlocab commented 3 months ago

I rebased on main. I think you can run the tests now.

carlocab commented 2 months ago

The external Abseil build seems to choke at trying to build googletest. I've fixed that by pointing it at third_party/googletest.

carlocab commented 2 months ago

The external Abseil build seems to choke at trying to build googletest. I've fixed that by pointing it at third_party/googletest.

Oops, that didn't work for some reason. I've just disabled Abseil's tests.

carlocab commented 3 weeks ago

Ping @haberman?

If it helps, we've been using a version of this patch at Homebrew for over a year now^1, and haven't gotten any complaints about it. (We've had at least ~5,000 installs in the past year.^2 This count excludes users who opt out of Homebrew analytics.)