Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(1429)

Issue 5305052: Allows translator_glsl to be built as a shared library (Closed)

Can't Edit
Can't Publish+Mail
Start Review
Created:
12 years, 7 months ago by piman
Modified:
12 years, 7 months ago
Reviewers:
apatrick1
CC:
angleproject-review_googlegroups.com
Base URL:
http://angleproject.googlecode.com/svn/trunk
Visibility:
Public.

Description

Allows translator_glsl to be built as a shared library http://codereview.chromium.org/8222028/ uses translator_glsl from multiple chromium components. Unfortunately, it causes problems at least on linux: The translator leaks weak symbols because of stl template instantiation, which have "vague" linkage. Because these symbol leak, the code jumps arbitrarily across the 2 versions of the static lib, that use different globals, leading to incorrect behavior. The solution to that is to be able to have translator_glsl be a shared library itself, so that it's not duplicated. BUG=None TEST=compile chrome with component=shared_library in GYP_DEFINES

Patch Set 1 #

Total comments: 1

Patch Set 2 : bump version #

Patch Set 3 : Also make translator_hlsl a component #

Unified diffs Side-by-side diffs Delta from patch set Stats (+64 lines, -29 lines) Patch
M build/common.gypi View 2 chunks +6 lines, -1 line 0 comments Download
M include/GLSLANG/ShaderLang.h View 10 chunks +46 lines, -25 lines 0 comments Download
M src/build_angle.gyp View 1 2 3 chunks +11 lines, -2 lines 0 comments Download
M src/common/version.h View 1 1 chunk +1 line, -1 line 0 comments Download

Messages

Total messages: 9
piman
12 years, 7 months ago (2011-10-20 21:16:28 UTC) #1
apatrick1
Looks okay. Just curious about the comment inline. You need to update src/common/version.h with the ...
12 years, 7 months ago (2011-10-20 21:34:46 UTC) #2
piman
On 2011/10/20 21:34:46, apatrick1 wrote: > Looks okay. Just curious about the comment inline. > ...
12 years, 7 months ago (2011-10-20 22:03:55 UTC) #3
piman
On 2011/10/20 22:03:55, piman wrote: > On 2011/10/20 21:34:46, apatrick1 wrote: > > Looks okay. ...
12 years, 7 months ago (2011-10-20 22:05:54 UTC) #4
apatrick1
Okay I'll land it then and I'll do the interesting thing with the revision number.
12 years, 7 months ago (2011-10-20 22:06:03 UTC) #5
piman
On Thu, Oct 20, 2011 at 3:06 PM, <apatrick@chromium.org> wrote: > Okay I'll land it ...
12 years, 7 months ago (2011-10-20 22:22:00 UTC) #6
apatrick1
Hmm. Building ANGLE from the gyp generated VS projects I get errors like: 5>------ Rebuild ...
12 years, 7 months ago (2011-10-20 22:24:54 UTC) #7
piman
On Thu, Oct 20, 2011 at 3:24 PM, <apatrick@chromium.org> wrote: > Hmm. Building ANGLE from ...
12 years, 7 months ago (2011-10-20 22:40:26 UTC) #8
apatrick1
12 years, 7 months ago (2011-10-20 23:07:01 UTC) #9
With component=shared_library and that change.

1>------ Build started: Project: libGLESv2, Configuration: Debug Win32 ------
1>Linking...
1>LINK : fatal error LNK1181: cannot open input file
'..\build\debug\lib\translator_hlsl.lib'
1>libGLESv2 - 1 error(s), 0 warning(s)
2>------ Build started: Project: libEGL, Configuration: Debug Win32 ------
2>Linking...
2>LINK : fatal error LNK1181: cannot open input file
'..\build\debug\lib\libglesv2.lib'
2>libEGL - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 2 failed, 3 up-to-date, 0 skipped ==========

It's looking in the build/Debug/lib directory. For some reason the files are in
src/Debug/lib, which doesn't happen for when component=static_library.
Sign in to reply to this message.

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b