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

Issue 88058: Build on Linux with shared libraries (significant chunks courtesy craigsch):... (Closed)

Created:
11 years, 8 months ago by sgk
Modified:
9 years, 5 months ago
CC:
chromium-reviews_googlegroups.com, Craig Schlenter, tony
Visibility:
Public.

Description

Build on Linux with shared libraries (significant chunks courtesy craigsch): * Set $RPATH to $LIB_DIR in the SCons configuration. * Add missing dependencies: * net/net.gyp:net => testing/gtest.gyp:gtest * third_party/libxml/libxml.gyp:xmlcatalog => third_party/icu38/icu38.gyp:icuuc * chrome/chrome.gyp:perf_tests => renderer => views => webkit/webkit.gyp:glue * Add files: * third_party/WebKit/WebCore/loader/icon/IconRecord.cpp * third_party/WebKit/WebCore/page/Coordinates.cpp * skia/sgl/SkUnPreMultiply.cpp * Exclude on Linux: * chrome/views/controls/scroll_view.cc * chrome/views/focus/external_focus_tracker.cc * media/filter/ffmpeg_demuxer.{cc,h} * Remove files: * third_party/WebKit/WebCore/Configurations/Version.xcconfig * Sort the chrome.gyp:views linux exclusion list. * DEPS roll for $SHLINKFLAGS settings in gyp. Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=14166

Patch Set 1 #

Patch Set 2 : '' #

Total comments: 4

Patch Set 3 : '' #

Patch Set 4 : '' #

Unified diffs Side-by-side diffs Delta from patch set Stats (+28 lines, -11 lines) Patch
M DEPS View 1 chunk +1 line, -1 line 0 comments Download
M build/common.gypi View 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/chrome.gyp View 2 chunks +10 lines, -5 lines 0 comments Download
M media/media.gyp View 1 chunk +2 lines, -0 lines 0 comments Download
M net/net.gyp View 1 2 3 1 chunk +4 lines, -0 lines 0 comments Download
M skia/skia.gyp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/libxml/libxml.gyp View 2 chunks +3 lines, -0 lines 0 comments Download
M webkit/webkit.gyp View 3 chunks +1 line, -4 lines 0 comments Download

Messages

Total messages: 8 (0 generated)
sgk
11 years, 8 months ago (2009-04-21 21:43:36 UTC) #1
Mark Mentovai
LG otherwise http://codereview.chromium.org/88058/diff/1008/11 File net/net.gyp (right): http://codereview.chromium.org/88058/diff/1008/11#newcode21 Line 21: '../testing/gtest.gyp:gtest', This one seems weird. Care ...
11 years, 8 months ago (2009-04-21 21:59:08 UTC) #2
Evan Martin
LG!
11 years, 8 months ago (2009-04-21 22:00:05 UTC) #3
Evan Martin
http://codereview.chromium.org/88058/diff/1008/11 File net/net.gyp (right): http://codereview.chromium.org/88058/diff/1008/11#newcode21 Line 21: '../testing/gtest.gyp:gtest', On 2009/04/21 21:59:08, Mark Mentovai wrote: > ...
11 years, 8 months ago (2009-04-21 22:13:37 UTC) #4
Mark Mentovai
Sounds like a good candidate for a comment. "We know this is weird, here's why ...
11 years, 8 months ago (2009-04-21 22:18:18 UTC) #5
sgk
http://codereview.chromium.org/88058/diff/1008/11 File net/net.gyp (right): http://codereview.chromium.org/88058/diff/1008/11#newcode21 Line 21: '../testing/gtest.gyp:gtest', On 2009/04/21 22:13:37, Evan Martin wrote: > ...
11 years, 8 months ago (2009-04-21 22:48:19 UTC) #6
Evan Martin
On 2009/04/21 22:48:19, sgk wrote: > But it makes more sense to add the gtest ...
11 years, 8 months ago (2009-04-21 22:55:54 UTC) #7
sgk
11 years, 8 months ago (2009-04-21 23:17:39 UTC) #8
http://codereview.chromium.org/88058/diff/1008/11
File net/net.gyp (right):

http://codereview.chromium.org/88058/diff/1008/11#newcode21
Line 21: '../testing/gtest.gyp:gtest',
On 2009/04/21 22:48:20, sgk wrote:
> On 2009/04/21 22:13:37, Evan Martin wrote:
> > On 2009/04/21 21:59:08, Mark Mentovai wrote:
> > > This one seems weird.  Care to explain?
> > 
> > I ran into this one before.  The net library has a "test_utils" module of
some
> > sort, which needs gtest.  But for some reason you also can't split out that
> > single module into net_unittests... I believe because maybe users of net
also
> > use that test helper module?
> 
> Went back and investigated.  Without this, disk_cache and stress_cache died
with
> (e.g.):
> 
> Linking
> /usr/local/google/home/sgk/chrome/trunk1/src/sconsbuild/Debug/crash_cache
> /usr/local/google/home/sgk/chrome/trunk1/src/sconsbuild/Debug/lib/libnet.so:
> undefined reference to
> `testing::internal::AssertHelper::operator=(testing::Message const&) const'
> /usr/local/google/home/sgk/chrome/trunk1/src/sconsbuild/Debug/lib/libnet.so:
> undefined reference to
> `testing::internal::AssertHelper::AssertHelper(testing::TestPartResultType,
char
> const*, int, char const*)'
> collect2: ld returned 1 exit status
> 
> But it makes more sense to add the gtest dependency to those executables, not
to
> libnet.so itself.  Uploaded new CL.

A full, clean-tree rebuild with shared libs shows that I'm incorrect above. 
Even linking 'chrome' itself with shared libs fails with the above undefined
reference(s).  Adding the gtest.gyp:gtest dependency back to libnet.so itself,
with a comment per mmentovai's suggestion.

        --SK

Powered by Google App Engine
This is Rietveld 408576698