Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(585)

Issue 2731313004: GN: Generate appropriate .dSYMs for .frameworks and .apps (Closed)

Created:
3 years, 9 months ago by themblsha
Modified:
3 years, 9 months ago
CC:
chromium-reviews, mac-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

GN: Generate appropriate .dSYMs for .frameworks and .apps .dSYM file names should match the name of the bundle they were generated for: For "Chromium.app" "Chromium.app.dSYM" should be used, and for "Chromium Framework.framework" "Chromium Framework.framework.dSYM". .dSYM bundles are generated by the template("mac_toolchain"), which knows nothing of the .app/.framework suffixes, so we're moving the .dSYMs to the proper location when forming the .app/.framework bundles. BUG=699153

Patch Set 1 #

Patch Set 2 : Modify linker_driver.py to create .dSYMs with correct names. #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+26 lines, -13 lines) Patch
M build/config/mac/rules.gni View 1 2 chunks +3 lines, -0 lines 0 comments Download
M build/toolchain/mac/BUILD.gn View 1 1 chunk +7 lines, -3 lines 2 comments Download
M build/toolchain/mac/linker_driver.py View 1 2 chunks +16 lines, -10 lines 0 comments Download

Messages

Total messages: 12 (2 generated)
themblsha
3 years, 9 months ago (2017-03-07 17:25:37 UTC) #3
Robert Sesek
What's the rationale? I decided against doing this when implementing dSYM generation because of the ...
3 years, 9 months ago (2017-03-07 18:14:33 UTC) #4
Dirk Pranke
I defer to rsesek@ here.
3 years, 9 months ago (2017-03-07 22:35:01 UTC) #5
Robert Sesek
not lgtm for two reasons: 1) This breaks the //chrome:chrome_dsym_archive target, which is built as ...
3 years, 9 months ago (2017-03-16 21:52:35 UTC) #6
themblsha
https://codereview.chromium.org/2731313004/diff/20001/build/toolchain/mac/BUILD.gn File build/toolchain/mac/BUILD.gn (right): https://codereview.chromium.org/2731313004/diff/20001/build/toolchain/mac/BUILD.gn#newcode175 build/toolchain/mac/BUILD.gn:175: if (defined(invoker.dsym_name)) { This doesn't actually work, as it ...
3 years, 9 months ago (2017-03-17 15:50:58 UTC) #7
Robert Sesek
https://codereview.chromium.org/2731313004/diff/20001/build/toolchain/mac/BUILD.gn File build/toolchain/mac/BUILD.gn (right): https://codereview.chromium.org/2731313004/diff/20001/build/toolchain/mac/BUILD.gn#newcode175 build/toolchain/mac/BUILD.gn:175: if (defined(invoker.dsym_name)) { On 2017/03/17 15:50:58, themblsha wrote: > ...
3 years, 9 months ago (2017-03-17 16:59:36 UTC) #8
Robert Sesek
Random idea: Maybe the linker tool needs a debug_output_path?
3 years, 9 months ago (2017-03-17 17:14:08 UTC) #9
themblsha
On 2017/03/17 17:14:08, Robert Sesek wrote: > Random idea: Maybe the linker tool needs a ...
3 years, 9 months ago (2017-03-17 17:24:53 UTC) #10
Robert Sesek
On 2017/03/17 17:24:53, themblsha wrote: > On 2017/03/17 17:14:08, Robert Sesek wrote: > > Random ...
3 years, 9 months ago (2017-03-17 17:54:17 UTC) #11
themblsha
3 years, 9 months ago (2017-03-24 12:48:40 UTC) #12
On 2017/03/17 17:54:17, Robert Sesek (OOO til Mar-29) wrote:
> On 2017/03/17 17:24:53, themblsha wrote:
> > On 2017/03/17 17:14:08, Robert Sesek wrote:
> > > Random idea: Maybe the linker tool needs a debug_output_path?
> > 
> > As an additional parameter? Currenty linker seems to be invoked through
> > shared_library / executable targets, and it seems that I need to patch GN in
> > order to add debug_output_path to them.
> 
> Yes, I think this may require a change to GN because the
> shared_library/executable/other linker tool types don't place their outputs in
> the bundle directly, they go into places like
> "obj/chrome/chrome_helper_app_executable/Google Chrome Helper". At that time,
> the linker target doesn't know where in the bundle the file ultimately will
end
> up, so it does seem like it will require passing more information to the
linker
> tool().
> 
> I don't really have a clear path to fixing this laid out -- it's going to take
> some fiddling to figure out the best solution.

I updated a couple of Yandex-specific scripts that relied on old .dSYM names
(had to be done because we have a ton of builds where the tools should work).
Most likely won't have enough time to tackle the GN work.

Powered by Google App Engine
This is Rietveld 408576698