New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 622775 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android
Pri: 3
Type: Bug

Blocked on:
issue 699210



Sign in to add a comment

Make sure that official builds explicitly pass -Wl,--build-id.

Project Member Reported by thakis@chromium.org, Jun 23 2016

Issue description

Clang r271692 made it so that clang no longer passes -Wl,--build-id to the linker by default (unless a cmake define forces it one, which we'll do for now). The motivation is that not passing this makes links quite a bit faster.

Breakpad / crash needs a build-id, so we should make sure that we explicitly pass it in official builds, and then stop building clang with the build define that forces it to pass this flag implicitly. Then links will be faster in non-official builds.

(this only affects linux and android.)

(cc'ing a few folks who were on a thread about this recently)
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jun 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/90f52193989bb835ed58f903e108827c4d1ee869

commit 90f52193989bb835ed58f903e108827c4d1ee869
Author: thakis <thakis@chromium.org>
Date: Thu Jun 23 19:26:41 2016

clang update.py: Force on --build-id for now.

BUG= 622775 , 621972 

Review-Url: https://codereview.chromium.org/2091753003
Cr-Commit-Position: refs/heads/master@{#401679}

[modify] https://crrev.com/90f52193989bb835ed58f903e108827c4d1ee869/tools/clang/scripts/update.py

Project Member

Comment 3 by bugdroid1@chromium.org, Mar 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4e5c4a1545902ab817b8d758c8b3ec4380552b5d

commit 4e5c4a1545902ab817b8d758c8b3ec4380552b5d
Author: thakis <thakis@chromium.org>
Date: Tue Mar 07 18:43:27 2017

build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON

BUG= 622775 

Review-Url: https://codereview.chromium.org/2732293002
Cr-Commit-Position: refs/heads/master@{#455154}

[modify] https://crrev.com/4e5c4a1545902ab817b8d758c8b3ec4380552b5d/build/config/android/BUILD.gn
[modify] https://crrev.com/4e5c4a1545902ab817b8d758c8b3ec4380552b5d/build/config/compiler/BUILD.gn

Project Member

Comment 4 by bugdroid1@chromium.org, Mar 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e806d46df51009e8c254727b374873bc4379b1fb

commit e806d46df51009e8c254727b374873bc4379b1fb
Author: thakis <thakis@chromium.org>
Date: Tue Mar 07 19:28:09 2017

Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #2 id:20001 of https://codereview.chromium.org/2732293002/ )

Reason for revert:
https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20ChromeOS/builds/30394/steps/compile/logs/stdio

pnacl-ld: Unrecognized option: --build-id=sha1

gn args:
goma_dir = "/b/c/goma_client"
is_chrome_branded = true
is_debug = false
is_official_build = true
target_os = "chromeos"
use_goma = true

Original issue's description:
> build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON
>
> BUG= 622775 
>
> Review-Url: https://codereview.chromium.org/2732293002
> Cr-Commit-Position: refs/heads/master@{#455154}
> Committed: https://chromium.googlesource.com/chromium/src/+/4e5c4a1545902ab817b8d758c8b3ec4380552b5d

TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 622775 

Review-Url: https://codereview.chromium.org/2732023004
Cr-Commit-Position: refs/heads/master@{#455172}

[modify] https://crrev.com/e806d46df51009e8c254727b374873bc4379b1fb/build/config/android/BUILD.gn
[modify] https://crrev.com/e806d46df51009e8c254727b374873bc4379b1fb/build/config/compiler/BUILD.gn

Blockedon: 699210
Project Member

Comment 6 by bugdroid1@chromium.org, Mar 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22

commit c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22
Author: thakis <thakis@chromium.org>
Date: Thu Mar 16 18:12:09 2017

Reland of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2732023004/ )

Reason for revert:
With https://bugs.chromium.org/p/nativeclient/issues/detail?id=4391#c1 fixed, this might now work.

Original issue's description:
> Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #2 id:20001 of https://codereview.chromium.org/2732293002/ )
>
> Reason for revert:
> https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20ChromeOS/builds/30394/steps/compile/logs/stdio
>
> pnacl-ld: Unrecognized option: --build-id=sha1
>
> gn args:
> goma_dir = "/b/c/goma_client"
> is_chrome_branded = true
> is_debug = false
> is_official_build = true
> target_os = "chromeos"
> use_goma = true
>
> Original issue's description:
> > build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON
> >
> > BUG= 622775 
> >
> > Review-Url: https://codereview.chromium.org/2732293002
> > Cr-Commit-Position: refs/heads/master@{#455154}
> > Committed: https://chromium.googlesource.com/chromium/src/+/4e5c4a1545902ab817b8d758c8b3ec4380552b5d
>
> TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG= 622775 
>
> Review-Url: https://codereview.chromium.org/2732023004
> Cr-Commit-Position: refs/heads/master@{#455172}
> Committed: https://chromium.googlesource.com/chromium/src/+/e806d46df51009e8c254727b374873bc4379b1fb

TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 622775 

Review-Url: https://codereview.chromium.org/2756713002
Cr-Commit-Position: refs/heads/master@{#457493}

[modify] https://crrev.com/c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22/build/config/android/BUILD.gn
[modify] https://crrev.com/c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22/build/config/compiler/BUILD.gn

Project Member

Comment 7 by bugdroid1@chromium.org, Mar 16 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c9650610e0df4aa3d24cdb52f1139c17cdfe530b

commit c9650610e0df4aa3d24cdb52f1139c17cdfe530b
Author: thakis <thakis@chromium.org>
Date: Thu Mar 16 19:48:52 2017

Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2756713002/ )

Reason for revert:
Still breaks pnacl-ld on Windows: https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.chrome%2FGoogle_Chrome_Win%2F16241%2F%2B%2Frecipes%2Fsteps%2Fcompile%2F0%2Fstdout
pnacl-ld: "--build-id=sha1" affects translation. To allow, specify --pnacl-allow-native

Original issue's description:
> Reland of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2732023004/ )
>
> Reason for revert:
> With https://bugs.chromium.org/p/nativeclient/issues/detail?id=4391#c1 fixed, this might now work.
>
> Original issue's description:
> > Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #2 id:20001 of https://codereview.chromium.org/2732293002/ )
> >
> > Reason for revert:
> > https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20ChromeOS/builds/30394/steps/compile/logs/stdio
> >
> > pnacl-ld: Unrecognized option: --build-id=sha1
> >
> > gn args:
> > goma_dir = "/b/c/goma_client"
> > is_chrome_branded = true
> > is_debug = false
> > is_official_build = true
> > target_os = "chromeos"
> > use_goma = true
> >
> > Original issue's description:
> > > build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON
> > >
> > > BUG= 622775 
> > >
> > > Review-Url: https://codereview.chromium.org/2732293002
> > > Cr-Commit-Position: refs/heads/master@{#455154}
> > > Committed: https://chromium.googlesource.com/chromium/src/+/4e5c4a1545902ab817b8d758c8b3ec4380552b5d
> >
> > TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG= 622775 
> >
> > Review-Url: https://codereview.chromium.org/2732023004
> > Cr-Commit-Position: refs/heads/master@{#455172}
> > Committed: https://chromium.googlesource.com/chromium/src/+/e806d46df51009e8c254727b374873bc4379b1fb
>
> TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG= 622775 
>
> Review-Url: https://codereview.chromium.org/2756713002
> Cr-Commit-Position: refs/heads/master@{#457493}
> Committed: https://chromium.googlesource.com/chromium/src/+/c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22

TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG= 622775 

Review-Url: https://codereview.chromium.org/2754973002
Cr-Commit-Position: refs/heads/master@{#457523}

[modify] https://crrev.com/c9650610e0df4aa3d24cdb52f1139c17cdfe530b/build/config/android/BUILD.gn
[modify] https://crrev.com/c9650610e0df4aa3d24cdb52f1139c17cdfe530b/build/config/compiler/BUILD.gn

Project Member

Comment 8 by bugdroid1@chromium.org, Mar 31 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1bafcfdfcc6867b9be120e54c73b0ea526cd886e

commit 1bafcfdfcc6867b9be120e54c73b0ea526cd886e
Author: Nico Weber <thakis@chromium.org>
Date: Fri Mar 31 19:48:18 2017

Reland of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2754973002/ )

Reason for revert:
pnacl should no longer complain about this switch.

Original issue's description:
> Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2756713002/ )
>
> Reason for revert:
> Still breaks pnacl-ld on Windows: https://luci-logdog.appspot.com/v/?s=chromium%2Fbb%2Fchromium.chrome%2FGoogle_Chrome_Win%2F16241%2F%2B%2Frecipes%2Fsteps%2Fcompile%2F0%2Fstdout
> pnacl-ld: "--build-id=sha1" affects translation. To allow, specify --pnacl-allow-native
>
>
> Original issue's description:
> > Reland of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #1 id:1 of https://codereview.chromium.org/2732023004/ )
> >
> > Reason for revert:
> > With https://bugs.chromium.org/p/nativeclient/issues/detail?id=4391#c1 fixed, this might now work.
> >
> > Original issue's description:
> > > Revert of build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON (patchset #2 id:20001 of https://codereview.chromium.org/2732293002/ )
> > >
> > > Reason for revert:
> > > https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20ChromeOS/builds/30394/steps/compile/logs/stdio
> > >
> > > pnacl-ld: Unrecognized option: --build-id=sha1
> > >
> > > gn args:
> > > goma_dir = "/b/c/goma_client"
> > > is_chrome_branded = true
> > > is_debug = false
> > > is_official_build = true
> > > target_os = "chromeos"
> > > use_goma = true
> > >
> > > Original issue's description:
> > > > build: Prepare for building clang without ENABLE_LINKER_BUILD_ID=ON
> > > >
> > > > BUG= 622775 
> > > >
> > > > Review-Url: https://codereview.chromium.org/2732293002
> > > > Cr-Commit-Position: refs/heads/master@{#455154}
> > > > Committed: https://chromium.googlesource.com/chromium/src/+/4e5c4a1545902ab817b8d758c8b3ec4380552b5d
> > >
> > > TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> > > # Skipping CQ checks because original CL landed less than 1 days ago.
> > > NOPRESUBMIT=true
> > > NOTREECHECKS=true
> > > NOTRY=true
> > > BUG= 622775 
> > >
> > > Review-Url: https://codereview.chromium.org/2732023004
> > > Cr-Commit-Position: refs/heads/master@{#455172}
> > > Committed: https://chromium.googlesource.com/chromium/src/+/e806d46df51009e8c254727b374873bc4379b1fb
> >
> > TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> > # Not skipping CQ checks because original CL landed more than 1 days ago.
> > BUG= 622775 
> >
> > Review-Url: https://codereview.chromium.org/2756713002
> > Cr-Commit-Position: refs/heads/master@{#457493}
> > Committed: https://chromium.googlesource.com/chromium/src/+/c3cb7d84db9a7d99ae917f32c1acca0f44ca3b22
>
> TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG= 622775 
>
> Review-Url: https://codereview.chromium.org/2754973002
> Cr-Commit-Position: refs/heads/master@{#457523}
> Committed: https://chromium.googlesource.com/chromium/src/+/c9650610e0df4aa3d24cdb52f1139c17cdfe530b

TBR=hans@chromium.org,torne@chromium.org,mcgrathr@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG= 622775 

Review-Url: https://codereview.chromium.org/2790473005 .
Cr-Commit-Position: refs/heads/master@{#461188}

[modify] https://crrev.com/1bafcfdfcc6867b9be120e54c73b0ea526cd886e/build/config/android/BUILD.gn
[modify] https://crrev.com/1bafcfdfcc6867b9be120e54c73b0ea526cd886e/build/config/compiler/BUILD.gn

Project Member

Comment 9 by bugdroid1@chromium.org, Apr 7 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d2b7120358af144734c354fb2f9679c2d5647b35

commit d2b7120358af144734c354fb2f9679c2d5647b35
Author: thakis <thakis@chromium.org>
Date: Fri Apr 07 17:04:47 2017

clang: Stop implicitly passing -Wl,--build-id to the linker.

We explicitly pass that in official builds now, and after we've built and
rolled in a compiler with this change here, we'll no longer ask the linker
to generate a build id in unofficial builds (where it's not needed), which
should speed up links a bit.

BUG= 622775 

Review-Url: https://codereview.chromium.org/2784423003
Cr-Commit-Position: refs/heads/master@{#462898}

[modify] https://crrev.com/d2b7120358af144734c354fb2f9679c2d5647b35/tools/clang/scripts/update.py

Project Member

Comment 10 by bugdroid1@chromium.org, Apr 12 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a6f580ee29385647f86e82efb9ab1192c6b0f849

commit a6f580ee29385647f86e82efb9ab1192c6b0f849
Author: hans <hans@chromium.org>
Date: Wed Apr 12 15:16:27 2017

Roll clang 298539:299960.

This includes r299782 which allows for using
_interlockedbittestandset without including
intrin.h, and a configuration change which means
Clang no longer implicitly passes -Wl,--build-id
to the linker by default.

BUG= 709521 , 622775 , 708769 

Review-Url: https://codereview.chromium.org/2816593003
Cr-Commit-Position: refs/heads/master@{#464027}

[modify] https://crrev.com/a6f580ee29385647f86e82efb9ab1192c6b0f849/tools/clang/scripts/update.py

Owner: thakis@chromium.org
Status: Fixed (was: Untriaged)

Sign in to add a comment