summaryrefslogtreecommitdiffstats
path: root/components/resource_provider
Commit message (Collapse)AuthorAgeFilesLines
* Quit the message loop by default in ShellConnectionLost when ↵sky2016-03-223-9/+0
| | | | | | | | | | | | | | | | | | | ApplicationRunner is used This was originally at https://codereview.chromium.org/1814223002/ , but Ben is out and I need this for tests, so I'm taking over. BUG=none TEST=covered by tests TBR=ben@chromium.org R=ben@chromium.org Committed: https://crrev.com/a50f9840749052fbdec087a304548217cc6fd00b Cr-Commit-Position: refs/heads/master@{#382389} Review URL: https://codereview.chromium.org/1819063002 Cr-Commit-Position: refs/heads/master@{#382688}
* Converts resource_provider apptests to unit testssky2016-03-228-113/+223
| | | | | | | | | | | BUG=594729 TEST=test only change R=erg@chromium.org, dpranke@chromium.org TBR=dpranke@chromium.org Review URL: https://codereview.chromium.org/1816323002 Cr-Commit-Position: refs/heads/master@{#382594}
* Revert of Quit the message loop by default in ShellConnectionLost when ↵esprehn2016-03-222-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ApplicationRunner is used (patchset #2 id:20001 of https://codereview.chromium.org/1819063002/ ) Reason for revert: Looks like to made the mojo_apptests go red. I think this is also making MUS tests fail? https://build.chromium.org/p/chromium.linux/builders/Linux%20Tests/builds/39128 Original issue's description: > Quit the message loop by default in ShellConnectionLost when ApplicationRunner is used > > This was originally at https://codereview.chromium.org/1814223002/ , but Ben is out and > I need this for tests, so I'm taking over. > > BUG=none > TEST=covered by tests > TBR=ben@chromium.org > R=ben@chromium.org > > Committed: https://crrev.com/a50f9840749052fbdec087a304548217cc6fd00b > Cr-Commit-Position: refs/heads/master@{#382389} TBR=ben@chromium.org,sky@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=none Review URL: https://codereview.chromium.org/1821913002 Cr-Commit-Position: refs/heads/master@{#382460}
* Quit the message loop by default in ShellConnectionLost when ↵sky2016-03-212-6/+0
| | | | | | | | | | | | | | | | ApplicationRunner is used This was originally at https://codereview.chromium.org/1814223002/ , but Ben is out and I need this for tests, so I'm taking over. BUG=none TEST=covered by tests TBR=ben@chromium.org R=ben@chromium.org Review URL: https://codereview.chromium.org/1819063002 Cr-Commit-Position: refs/heads/master@{#382389}
* Cascade shutdown of instancesben2016-03-171-1/+6
| | | | | | | | BUG= Review URL: https://codereview.chromium.org/1810713002 Cr-Commit-Position: refs/heads/master@{#381660}
* Change primordial pipes to ShellClientrockot2016-03-142-0/+6
| | | | | | | | | | | | | | | | | | | | | Changes shell client startup pipes to be ShellClient instead of ShellClientFactory. This simplifies a lot of startup code. Due to this change, apps must now take responsibility for shutting themselves down when they feel it's appropriate. For now, all relevant apps are force-exited to mimic the old behavior. Once apptests are deleted, we should expose a clean quit closure to apps so they have something to run when they want to quit. Hard-exiting the process is definitely not the right thing to do. BUG= Review URL: https://codereview.chromium.org/1801963002 Cr-Commit-Position: refs/heads/master@{#381114}
* [mojo-sdk] Remove mojo_ignore_result and move C++ macros.h to bindings ↵amistry2016-03-111-1/+0
| | | | | | | | | | | | internal code. The one macro remaining in macros.h is only used by generated C++ code. BUG=534695 Review URL: https://codereview.chromium.org/1784743003 Cr-Commit-Position: refs/heads/master@{#380556}
* Moves mojo_application_manifest to data_depssky2016-03-101-2/+5
| | | | | | | | | | | | | Otherwise they aren't picked up as runtime dependencies and isolates won't work. BUG=none TEST=none R=ben@chromium.org Review URL: https://codereview.chromium.org/1783533003 Cr-Commit-Position: refs/heads/master@{#380347}
* Remove Mojo bindings environment.Yuzhu Shen2016-03-081-3/+0
| | | | | | | | | BUG=585942 R=ben@chromium.org Review URL: https://codereview.chromium.org/1765243002 . Cr-Commit-Position: refs/heads/master@{#379839}
* Add a instance groups to Connect(), and introduce an Identity struct.ben2016-03-082-7/+6
| | | | | | | | | BUG= CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1769163002 Cr-Commit-Position: refs/heads/master@{#379757}
* Change userid from a uint32_t to a string guidben2016-03-052-2/+3
| | | | | | | | | | | | | TBR=sky@chromium.org BUG= patch from issue 1760963003 at patchset 20001 (http://crrev.com/1760963003#ps20001) CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1770533002 Cr-Commit-Position: refs/heads/master@{#379476}
* Rename shell.mojom to connector.mojom and ApplicationManager to Shellben2016-03-051-1/+1
| | | | | | | | | | TBR=sky@chromium.org BUG= CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1764253002 Cr-Commit-Position: refs/heads/master@{#379459}
* Remove MOJO_DISALLOW_COPY_AND_ASSIGN and MOJO_ALLOW_UNUSED_LOCAL.amistry2016-03-031-1/+1
| | | | | | | | BUG=534695 Review URL: https://codereview.chromium.org/1755003002 Cr-Commit-Position: refs/heads/master@{#378891}
* Change Mojo URLs to structured names.ben2016-02-276-26/+22
| | | | | | | | | | | | | type:path Remove GURLs from all over the place. This eliminates the need to register Mojo and Exe schemes. BUG= CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1743473002 Cr-Commit-Position: refs/heads/master@{#378130}
* Replace with mojo::Connector (already exists) now that Shell is gone.ben2016-02-265-13/+11
| | | | | | | | | | | | Requires: - Move AppRefCount to a different class, MessageLoopRef, which is optionally used by applications that wish to quit the current message loop started by application runner when the ref drops to zero. - Changing the signature of Initialize() to take a Connector. This is what most of the change in this CL is. BUG= Review URL: https://codereview.chromium.org/1725353003 Cr-Commit-Position: refs/heads/master@{#377841}
* Rename WeakBindingSet/WeakInterfacePtrSet to BindingSet/InterfacePtrSet.yzshen2016-02-251-2/+2
| | | | | | | | | | | | | | This CL also renames the element type (WeakBinding/WeakInterfacePtr) to Element and hide them in the corresonding *Set class. BUG=None CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Committed: https://crrev.com/632d319842096e6998d174e2f251865979ce2b72 Cr-Commit-Position: refs/heads/master@{#377384} Review URL: https://codereview.chromium.org/1735583002 Cr-Commit-Position: refs/heads/master@{#377528}
* Revert "Rename WeakBindingSet/WeakInterfacePtrSet to ↵yzshen2016-02-241-2/+2
| | | | | | | | | | | | | | BindingSet/InterfacePtrSet." This reverts commit 632d319842096e6998d174e2f251865979ce2b72. TBR=jam@chromium.org BUG= CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1734803002 . Cr-Commit-Position: refs/heads/master@{#377393}
* Rename WeakBindingSet/WeakInterfacePtrSet to BindingSet/InterfacePtrSet.yzshen2016-02-241-2/+2
| | | | | | | | | | | This CL also renames the element type (WeakBinding/WeakInterfacePtr) to Element and hide them in the corresonding *Set class. BUG=None CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1735583002 Cr-Commit-Position: refs/heads/master@{#377384}
* Add a user id parameter to connections.ben2016-02-242-2/+2
| | | | | | | | | | | | | | | | | | | | | | | This is simply a uint32 that identifies the user running a particular instance. Note that the shell cares nothing about higher level semantic meaning/mapping of this identifier. That's for a user service to perform. An application that connects to another specifies the user id they wish the target to be run as. This can either be a specific user, the root user, or "inherit" which means either their own identity or root, whichever is available in that order. The application manager resolves "inherit" to the source identity or the root identity, and initializes & completes the connection. When a target application is initialized, the shell tells it (via Initialize()) the identity it is run as. When a target application receives an inbound connection, the shell tells it (via AcceptConnection) the identity of the caller. This allows a service run as root to service connections from other users, and create facades scoped to that user. Long term, only specific applications will be able to pass anything other than "inherit" as the user id. (e.g. the login app and the profile creator app). This isn't done in this CL. I need to add some tests for this, along with the rest of the shell stuff. TBD. R=sky@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1719193003 Cr-Commit-Position: refs/heads/master@{#377239}
* This enforces the capability filter specified in an application manifest.ben2016-02-233-1/+12
| | | | | | | | Note that this is mostly set to permissive right now because the capability filters as currently specified are a PITA to use. I'm going to be working with some of the security folk to devise a way to simplify this. Review URL: https://codereview.chromium.org/1716793003 Cr-Commit-Position: refs/heads/master@{#376940}
* Move two files into mojo/public/cpp/bindings.yzshen2016-02-121-1/+1
| | | | | | | | | | | | | They are: - weak_binding_set.h - weak_interface_ptr_set.h BUG=None CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1692783002 Cr-Commit-Position: refs/heads/master@{#375180}
* Rename ConnectToService to ConnectToInterface()ben2016-02-101-1/+1
| | | | | | | | | TBR=rockot@chromium.org BUG= Review URL: https://codereview.chromium.org/1687693002 Cr-Commit-Position: refs/heads/master@{#374677}
* [mojo] Delete third_party/mojorockot2016-02-101-1/+1
| | | | | | | | | | | All users are on the new EDK now. This wipes out third_party/mojo, updates all dependencies, and removes the use-new-edk flag. BUG=None Review URL: https://codereview.chromium.org/1676913002 Cr-Commit-Position: refs/heads/master@{#374631}
* Rename ServiceProvider to InterfaceProvider.ben2016-02-101-1/+1
| | | | | | | | | | | | TBR=rockot@chromium.org R=tsepez@chromium.org BUG= CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_site_isolation Review URL: https://codereview.chromium.org/1684783002 Cr-Commit-Position: refs/heads/master@{#374620}
* Rename Connection::AddService/ConnectToService to ↵ben2016-02-091-1/+1
| | | | | | | | | | | Connection::AddInterface/GetInterface TBR=rockot@chromium.org BUG= Review URL: https://codereview.chromium.org/1681813002 Cr-Commit-Position: refs/heads/master@{#374328}
* Rename ApplicationDelegate to ShellClient.ben2016-02-073-12/+8
| | | | | | | | | | | ApplicationConnection -> Connection TBR=rockot@chromium.org BUG= Review URL: https://codereview.chromium.org/1675083002 Cr-Commit-Position: refs/heads/master@{#374054}
* Extract shell methods from ApplicationImpl into a base class, and pass this ↵ben2016-02-075-13/+12
| | | | | | | | | | | | | | | to Initialize() instead. Also eliminates use of mojo::shell::mojom::Shell in favor of this base interface. This means most code doesn't have to use ApplicationImpl - only the places that instantiate them. TBR=rockot@chromium.org BUG= Review URL: https://codereview.chromium.org/1674903003 Cr-Commit-Position: refs/heads/master@{#374049}
* ConfigureIncomingConnection -> AcceptConnectionben2016-02-062-3/+3
| | | | | | | | | | | Makes this interface begin to resemble Application a bit more closely. R=rockot@chromium.org BUG=none Review URL: https://codereview.chromium.org/1674803002 Cr-Commit-Position: refs/heads/master@{#373963}
* Add a rule for collating mojo application manifests.ben2016-02-041-1/+7
| | | | | | | | | | | Introduces a new GN template for generating a manifest. Instantiations of this template can define dependencies which are collated with the parent to produce a meta (package) manifest absorbing the dependencies manifests. R=rockot,jam http://crbug.com/575858 Review URL: https://codereview.chromium.org/1660243002 Cr-Commit-Position: refs/heads/master@{#373396}
* Implement a skeleton of Mojo Application manifests.ben2016-02-022-0/+6
| | | | | | | | | | | | | | | | | | | In this first cut, when a local .mojo or .exe target is loaded, we look for a manifest json file nearby and consume it into a catalog maintained by the PackageManagerImpl. Default manifests are provided for several interesting Mojo apps in Chromium, with pretty names to make the Mash Task Viewer look a little nicer. Future CL improvements: - comprehensive testing. currently mojo_shell_apptests is broken due to the EDK change. - persisting the consumed catalog in a single store (e.g. Preferences) so that we don't need to read a bunch of files every startup. i.e. implement ApplicationCatalogStore. - block creating the ApplicationInstance on having read the manifest, so the base CapabilityFilter is understood. - implement base CapabilityFilter application. R=rockot@chromium.org http://crbug.com/575858 Review URL: https://codereview.chromium.org/1641043002 Cr-Commit-Position: refs/heads/master@{#372853}
* Move mojo/application/public -> mojo/shell/publicben2016-01-129-21/+21
| | | | | | | | | TBR=sky@chromium.org http://crbug.com/575308 Review URL: https://codereview.chromium.org/1565343003 Cr-Commit-Position: refs/heads/master@{#368776}
* Convert Pass()→std::move() in //components/[n-z]*dcheng2015-12-263-7/+11
| | | | | | | | | | BUG=557422 R=avi@chromium.org TBR=jochen@chromium.org Review URL: https://codereview.chromium.org/1548203002 Cr-Commit-Position: refs/heads/master@{#366914}
* Switch to standard integer types in components/, part 3 of 4.avi2015-12-258-1/+15
| | | | | | | | | BUG=138542 TBR=blundell@chromium.org Review URL: https://codereview.chromium.org/1551433002 Cr-Commit-Position: refs/heads/master@{#366874}
* Add more components to "gn check", work on dom_distiller.brettw2015-11-301-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Added components are: bitmap_uploader browser_sync dom_distiller exp proxy_config query_parser rappor renderer_context_menu resource_provider resources rlz safe_browsing_db safe_json scheduler search The dom distiller GN build was a little messed up. The JNI registrar files were in core but referenced files in content. I moved the registrar files to content/browser which is where they're needed and matches some other components. There were also some other duplicated java targets, and I split out the content build file into separate subdirectories and renamed the targets to match. TBR=dpranke@chromium.org BUG=562773 Review URL: https://codereview.chromium.org/1487433002 Cr-Commit-Position: refs/heads/master@{#362234}
* Add context_utils.h includes where needed.torne2015-11-251-0/+1
| | | | | | | | | | | | | base::android::GetApplicationContext is now defined in context_utils.h. Update includes for files that use this, and stop including it in jni_android.h. BUG=552419 TBR=jochen@chromium.org,sky@chromium.org,xhwang@chromium.org,davidben@chromium.org,tedchoc@chromium.org,scheib@chromium.org,qinmin@chromium.org,halliwell@chromium.org,thakis@chromium.org Review URL: https://codereview.chromium.org/1475773002 Cr-Commit-Position: refs/heads/master@{#361701}
* Convert ConnectToApplication to take a params classben2015-11-201-3/+1
| | | | | | | | | R=sky@chromium.org BUG=none Review URL: https://codereview.chromium.org/1455833005 Cr-Commit-Position: refs/heads/master@{#360954}
* mojo_runner: Get --trace-start working with generic mojo_runner.erg2015-11-184-0/+6
| | | | | | | | | | Android didn't like our magic to automatically include a connection to mojo:tracing in ApplicationImpl. This does things the explicit way: including a mojo:TracingImpl in each and every mojo application package. BUG=534895 Review URL: https://codereview.chromium.org/1459453003 Cr-Commit-Position: refs/heads/master@{#360434}
* Move third_party/mojo/src/mojo/public to mojo/publicrockot2015-11-138-11/+11
| | | | | | | | | BUG=None NOPRESUBMIT=true Review URL: https://codereview.chromium.org/1410053006 Cr-Commit-Position: refs/heads/master@{#359461}
* mandoline: Reland "Fix ICU initialization".erg2015-11-126-36/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to complete the initialization of ICU before we raise the sandbox. That means we can't pass a file descriptor to the ICU data file across mojo pipes. Due to how Android handles resources files, we also can't pass a file descriptor around inside the same process. So pass a raw pointer to a memory mapped file during the sandbox warm-up phase, and make a new option to initialize ICU from this raw pointer. But that just uncovers a bigger issue: we don't always call what was the sandbox warming code. If it's general initialization that needs to be called before we run MojoMain(), we need to include initialization code in most all main.cc implementations. This bakes a base initialize call into the mojo application library. This fixes a crash in the page cycler set, which happens when a page tries to do date operations, which fail because of missing locale data. This fixes several crashes in local runs. [[This reland disables the sandbox on the page cycler bots because they don't have a new enough kernel to be sandboxed(!). It also includes the icu data in the mojo runner unittests.]] BUG=546644 First Review URL: https://codereview.chromium.org/1425853003 TBR=jam@chromium.org,sky@chromium.org R=yzshen@chromium.org Review URL: https://codereview.chromium.org/1431133003 Cr-Commit-Position: refs/heads/master@{#359349}
* Revert of mandoline: Fix ICU initialization. (patchset #31 id:570001 of ↵erg2015-11-106-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://codereview.chromium.org/1425853003/ ) Reason for revert: Failures on Chromium Mojo Linux Perf which appears to be because the perf bots don't have an up to date kernel and on Chromium Mojo Android which has some weird crash. Original issue's description: > mandoline: Fix ICU initialization. > > We need to complete the initialization of ICU before we raise the > sandbox. That means we can't pass a file descriptor to the ICU data file > across mojo pipes. Due to how Android handles resources files, we also > can't pass a file descriptor around inside the same process. So pass a > raw pointer to a memory mapped file during the sandbox warm-up phase, > and make a new option to initialize ICU from this raw pointer. > > But that just uncovers a bigger issue: we don't always call what was the > sandbox warming code. If it's general initialization that needs to be > called before we run MojoMain(), we need to include initialization code > in most all main.cc implementations. This bakes a base initialize call > into the mojo application library. > > This fixes a crash in the page cycler set, which happens when a page > tries to do date operations, which fail because of missing locale data. > This should let us raise the sandbox on the page cycler. > > BUG=546644 > > Committed: https://crrev.com/e5735ff0a8ddb61672d964a44ebc8a8ebe2b6242 > Cr-Commit-Position: refs/heads/master@{#358904} TBR=sky@chromium.org,jam@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=546644 Review URL: https://codereview.chromium.org/1429263005 Cr-Commit-Position: refs/heads/master@{#358955}
* mandoline: Fix ICU initialization.erg2015-11-106-36/+0
| | | | | | | | | | | | | | | | | | | | | | | | | We need to complete the initialization of ICU before we raise the sandbox. That means we can't pass a file descriptor to the ICU data file across mojo pipes. Due to how Android handles resources files, we also can't pass a file descriptor around inside the same process. So pass a raw pointer to a memory mapped file during the sandbox warm-up phase, and make a new option to initialize ICU from this raw pointer. But that just uncovers a bigger issue: we don't always call what was the sandbox warming code. If it's general initialization that needs to be called before we run MojoMain(), we need to include initialization code in most all main.cc implementations. This bakes a base initialize call into the mojo application library. This fixes a crash in the page cycler set, which happens when a page tries to do date operations, which fail because of missing locale data. This should let us raise the sandbox on the page cycler. BUG=546644 Review URL: https://codereview.chromium.org/1425853003 Cr-Commit-Position: refs/heads/master@{#358904}
* Fix Mus example after r358343.jam2015-11-071-1/+1
| | | | | | | | | | The problem was that the thunks were being loaded into window_type_launcher executable, instead of the implementation. BUG=550498 Review URL: https://codereview.chromium.org/1429363002 Cr-Commit-Position: refs/heads/master@{#358462}
* Fixes window type launcher resource lookupsky2015-11-061-5/+9
| | | | | | | | | | | | | | Resource provider expects to find resources in directories named after the mojo app followed by resources. If the name doesn't match resources aren't found. BUG=none TEST=none R=sadrul@chromium.org Review URL: https://codereview.chromium.org/1426583013 Cr-Commit-Position: refs/heads/master@{#358436}
* Get Mandoline working in component build.jam2015-11-067-18/+28
| | | | | | | | | | Since state is now shared between apps and the shell, there could be bugs that don't exist in static builds. Running in multi-process (default for Mandoline now) makes this less of an issue, since no apps will share state. There's very little code that runs in the shell in a child process. --single-process works for now, but that could have more issues down the line. For now, this is really a developer productivity feature, just like component build in Chrome. BUG=550498 Review URL: https://codereview.chromium.org/1410693004 Cr-Commit-Position: refs/heads/master@{#358343}
* Window Type Launcher as a process.ben2015-11-032-2/+8
| | | | | | | | | | | | | | | | When run in child process mode, mojo_runner sets thunks in .mojo DLLs that allow various mojo system calls to work. These thunks are only needed for .DLLs loaded in this manner. When the mojo runner launches a standalone executable, the executable should statically link the real implementations of the system calls, not the thunks. The problem was that there were a couple of client libs that implicitly depended on the thunks. The fix was to make this not be the case and instead: - standalone executable targets statically link the real implementations (e.g. //mojo/gles2 and //mojo/runner:platform_handle) - .mojo targets statically link the thunk targets, these dependencies are added automatically by the mojo_application gn target. R=jam@chromium.org http://crbug.com/548694 Review URL: https://codereview.chromium.org/1409393008 Cr-Commit-Position: refs/heads/master@{#357646}
* gn format everything.tfarina2015-11-031-1/+3
| | | | | | | | | | | | | | | | | This patch was generated using the following command line: $ git ls-files "*.gn" | grep -v format_test_data | sed -e "s/^/gn format --in-place /" >x.sh $ chmod +x x.sh $ ./x.sh BUG=None R=dpranke@chromium.org,scottmg@chromium.org TBR=brettw@chromium.org Review URL: https://codereview.chromium.org/1415753003 Cr-Commit-Position: refs/heads/master@{#357493}
* Adds GetDisplays() to WindowManagersky2015-10-153-10/+7
| | | | | | | | | | | | | | And removes hacks that were necessitated without it. I also added a converter from a std::string to a URLRequestPtr as I got tired of creating the URLRequestPtr, then setting url. BUG=none TEST=none R=ben@chromium.org Review URL: https://codereview.chromium.org/1407073002 Cr-Commit-Position: refs/heads/master@{#354392}
* Adds a way to determine id of content handler that created appsky2015-09-011-4/+3
| | | | | | | | | | | | This is needed for html viewer so that it can know which html_viewer is servicing the request. BUG=479172,490221 TEST=covered by tests R=ben@chromium.org Review URL: https://codereview.chromium.org/1311353005 Cr-Commit-Position: refs/heads/master@{#346541}
* Annotate GN executables and shared_libraries with sanitizer deps.brettw2015-08-311-0/+1
| | | | | | | | | | | | | | | | | These are needed to link in asan/lsan/etc. mode. GYP injects these automatically but GN doesn't have automatic dependency injection. All tests and components (which cover the vast majority of such targets in actual use) are templates which add these dependencies already, so most of the time it never comes up. Only a few of these changes are actually necessary to link all tests run on the asan bot (which is also what engineers will typically build, since almost nobody will build all in asan mode). But to reduce confusion from linker errors in asan mode, I annotated all executables and shared libraries I could find with the sanitizer dependency. I moved a config out of a target in yasm, and sorted a fews deps on other targets. TBR=xhwang@chromium.org (widevine) TBR=achuith@chromium.org (tools/perf, tools/telemetry) Review URL: https://codereview.chromium.org/1318343003 Cr-Commit-Position: refs/heads/master@{#346490}
* GN: Use lib.unstripped rather than lib.stripped. Add a toolchain.gniagrieve2015-08-101-1/+2
| | | | | | | | | | | | | | | toolchain.gni introduces: root_shlib_dir, shlib_prefix, and shlib_extension The original goal of this change was to put shlibs under lib/ for Linux / Android, since that's where GYP puts them. However, the lack of support for loadable_module (or more specifically - per target output directory) in GN makes this infeasible at the moment. This change also mitigates a subtle bug where on Android the unstripped .so is used mistakenly instead of the lib.stripped/ version. It also fixes shlib's link_output being set to the unstripped .so rather than the stripped .so (on Android). BUG=509771 Review URL: https://codereview.chromium.org/1236503002 Cr-Commit-Position: refs/heads/master@{#342697}