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

Issue 341613003: ninja: Pass .so files outside of --start-group/--end-group. (Closed)

Created:
6 years, 6 months ago by Nico
Modified:
6 years, 6 months ago
Reviewers:
scottmg
CC:
gyp-developer_googlegroups.com
Visibility:
Public.

Description

ninja: Pass .so files outside of --start-group/--end-group. When doing 32bit release component builds of chromium, nacl_helper fails to link like so: g++ [...] -Wl,--as-needed -o nacl_helper -Wl,--start-group [...] obj/components/libnacl_linux.a [...] lib/libppapi_shared.so -Wl,--end-group [...] /usr/bin/ld: .../nacl_linux.plugin_main.o: undefined reference to symbol '_ZN5ppapi16PPB_Audio_Shared18SetThreadFunctionsEPK18PP_ThreadFunctions' /usr/bin/ld: note: '_ZN5ppapi16PPB_Audio_Shared18SetThreadFunctionsEPK18PP_ThreadFunctions' is defined in DSO lib/libppapi_shared.so so try adding it to the linker command line Note that libppapi_shared.so is on the link line. The error goes away if --as-needed isn't passed, if I use gold, or if the .so file is moved after --end-group. http://wiki.gentoo.org/wiki/Project:Quality_Assurance/As-needed suggests that --as-needed has additional constraints on library ordering, and I'm guessing that this error depends on how the implementations of --as-needed and --start-group/--end-group in ld.bfd interact. Moving $solibs out of --start-group/--end-group seems to work, so just do that. No test because we have no 32bit linux gyp bot. BUG=none (but found while working on 368384 / 385472) TEST=Build nacl_test on a 32bit release bot using the components build. links correctly R=scottmg@chromium.org Committed: https://code.google.com/p/gyp/source/detail?r=1944

Patch Set 1 #

Patch Set 2 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+2 lines, -2 lines) Patch
M pylib/gyp/generator/ninja.py View 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 5 (0 generated)
Nico
If you want I can try to create a test, but since it wouldn't run ...
6 years, 6 months ago (2014-06-17 23:39:18 UTC) #1
Nico
(patch set 1, which is identical to patch set 2, has green try runs, and ...
6 years, 6 months ago (2014-06-17 23:47:13 UTC) #2
scottmg
On 2014/06/17 23:39:18, Nico (away) wrote: > If you want I can try to create ...
6 years, 6 months ago (2014-06-17 23:48:37 UTC) #3
Nico
Committed patchset #2 manually as r1944 (presubmit successful).
6 years, 6 months ago (2014-06-17 23:59:24 UTC) #4
Nico
6 years, 6 months ago (2014-06-18 16:48:39 UTC) #5
Message was sent while issue was closed.
I verified that a 64bit components release build of nacl_helper fails the same
way with linux_use_bundled_gold=0 linux_use_bundled_binutils=0
linux_use_gold_flags=0 linux_use_debug_fission=0

Powered by Google App Engine
This is Rietveld 408576698