|
|
Created:
6 years, 7 months ago by Lei Zhang Modified:
6 years, 7 months ago CC:
chromium-reviews, mithro-old Base URL:
svn://chrome-svn/chrome/trunk/src/ Visibility:
Public. |
DescriptionLinux: Switch 32-bit official builds to use the bundled 64-bit linker.
It is assumed that even though the buildbots have 32-bit userland,
they also have a 64-bit kernel and a 64-bit libc installed.
BUG=366523
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=266729
Patch Set 1 : #
Total comments: 8
Patch Set 2 : rebase, no tabs #
Messages
Total messages: 18 (0 generated)
https://codereview.chromium.org/255023003/diff/20001/build/common.gypi File build/common.gypi (left): https://codereview.chromium.org/255023003/diff/20001/build/common.gypi#oldcod... build/common.gypi:3802: '-Wl,--reduce-memory-overheads', --reduce-memory-overheads is a PITA because it's GNU ld only. No flag currently 100% guarantees it is ok to use. e.g. linux_use_gold_flags==0 may mean use a gold binary, but not gold flags.
Just some minor comments. Otherwise LGTM. BTW Maybe it is time to relook at the threaded linking stuff too? https://codereview.chromium.org/255023003/diff/20001/build/common.gypi File build/common.gypi (right): https://codereview.chromium.org/255023003/diff/20001/build/common.gypi#newcod... build/common.gypi:729: # for component=static_library builds. Tab. https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... File third_party/binutils/download.py (right): https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... third_party/binutils/download.py:100: arch = GetArch() Maybe it should be; ------------------------------------ archs = GetArch() for arch in archs: if arch not in ('x64', 'ia32'): print "Error" return 1 if not FetchAndExtract(arch): print "Error" return 1 ------------------------------------ https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... third_party/binutils/download.py:108: return FetchAndExtract('x64') I think this script could detect the GYP_DEFINEs stuff here?
lgtm What about the unofficial 32bit bots? https://codereview.chromium.org/255023003/diff/20001/build/common.gypi File build/common.gypi (right): https://codereview.chromium.org/255023003/diff/20001/build/common.gypi#newcod... build/common.gypi:729: # for component=static_library builds. :set expandtab | retab
The unofficial "official" bots still set branding=Chrome buildtype=Official in their GYP_DEFINES, so they are covered here. I just checked all the official bots and made sure they have a 64-bit kernel + libc, will do the same for the unofficial ones. https://codereview.chromium.org/255023003/diff/20001/build/common.gypi File build/common.gypi (right): https://codereview.chromium.org/255023003/diff/20001/build/common.gypi#newcod... build/common.gypi:729: # for component=static_library builds. On 2014/04/28 19:01:21, mithro wrote: > Tab. Done. https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... File third_party/binutils/download.py (right): https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... third_party/binutils/download.py:100: arch = GetArch() On 2014/04/28 19:01:21, mithro wrote: > Maybe it should be; > > ------------------------------------ > archs = GetArch() > for arch in archs: > if arch not in ('x64', 'ia32'): > print "Error" > return 1 > > if not FetchAndExtract(arch): > print "Error" > return 1 > ------------------------------------ GetArch() hasn't changed, for a machine with a 64-bit kernel but 32-bit userland, it's going to only return 'ia32'. https://codereview.chromium.org/255023003/diff/20001/third_party/binutils/dow... third_party/binutils/download.py:108: return FetchAndExtract('x64') On 2014/04/28 19:01:21, mithro wrote: > I think this script could detect the GYP_DEFINEs stuff here? It's simpler to just install both toolchains. Not that many people build on 32-bit hosts.
With "unofficial", I meant these chaps: http://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20(dbg)(32) On Mon, Apr 28, 2014 at 12:13 PM, <thestig@chromium.org> wrote: > The unofficial "official" bots still set branding=Chrome > buildtype=Official in > their GYP_DEFINES, so they are covered here. > > I just checked all the official bots and made sure they have a 64-bit > kernel + > libc, will do the same for the unofficial ones. > > > > https://codereview.chromium.org/255023003/diff/20001/build/common.gypi > File build/common.gypi (right): > > https://codereview.chromium.org/255023003/diff/20001/ > build/common.gypi#newcode729 > build/common.gypi:729: # for component=static_library builds. > On 2014/04/28 19:01:21, mithro wrote: > >> Tab. >> > > Done. > > > https://codereview.chromium.org/255023003/diff/20001/ > third_party/binutils/download.py > File third_party/binutils/download.py (right): > > https://codereview.chromium.org/255023003/diff/20001/ > third_party/binutils/download.py#newcode100 > third_party/binutils/download.py:100: arch = GetArch() > On 2014/04/28 19:01:21, mithro wrote: > >> Maybe it should be; >> > > ------------------------------------ >> archs = GetArch() >> for arch in archs: >> if arch not in ('x64', 'ia32'): >> print "Error" >> return 1 >> > > if not FetchAndExtract(arch): >> print "Error" >> return 1 >> ------------------------------------ >> > > GetArch() hasn't changed, for a machine with a 64-bit kernel but 32-bit > userland, it's going to only return 'ia32'. > > > https://codereview.chromium.org/255023003/diff/20001/ > third_party/binutils/download.py#newcode108 > third_party/binutils/download.py:108: return FetchAndExtract('x64') > On 2014/04/28 19:01:21, mithro wrote: > >> I think this script could detect the GYP_DEFINEs stuff here? >> > > It's simpler to just install both toolchains. Not that many people build > on 32-bit hosts. > > https://codereview.chromium.org/255023003/ > To unsubscribe from this group and stop receiving emails from it, send an email to chromium-reviews+unsubscribe@chromium.org.
On 2014/04/28 19:28:32, Nico wrote: > With "unofficial", I meant these chaps: > http://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20(dbg)(32) Those bots are fine. They are building with component="shared_library"
The CQ bit was checked by thestig@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/thestig@chromium.org/255023003/40001
On 2014/04/28 19:40:10, Lei Zhang wrote: > On 2014/04/28 19:28:32, Nico wrote: > > With "unofficial", I meant these chaps: > > > http://build.chromium.org/p/chromium.linux/builders/Linux%20Builder%20(dbg)(32) > > Those bots are fine. They are building with component="shared_library" http://build.chromium.org/p/chromium/builders/Linux has linux_dump_symbols=0 set, so it should be ok too. If it needs to switch, we can manually set the GYP_DEFINES as it is a one-off.
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: tryserver.chromium on chromium_presubmit
The CQ bit was checked by thestig@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/thestig@chromium.org/255023003/40001
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: tryserver.chromium on chromium_presubmit
The CQ bit was checked by thestig@chromium.org
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/thestig@chromium.org/255023003/40001
Message was sent while issue was closed.
Change committed as 266729 |