|author||brucedawson <email@example.com>||Tue Nov 22 18:47:44 2016|
|committer||Commit bot <firstname.lastname@example.org>||Tue Nov 22 18:47:44 2016|
Change some source_sets to static_library to shrink binary The gn generated binaries are bigger than the gyp generated binaries. One of the known differences was due to the nacl_global_rng and g_NaCl_log_gio global variables which are in gn's chrome.dll but not in gyp's. In some cases these global variables can serve as effective canaries - removing them can lead to much code going away as well. Changing from source_set to static_library means that the linker is not required to link in the associated .obj files, which can save time and space. In this case no code was removed so the space savings was small - just the 1.5 KB of space consumed by the globals. Remail@example.com BUG=630755 Review-Url: https://codereview.chromium.org/2519103003
Welcome to Native Client. For the latest information about Native Client, see the Native Client project page.
Most of the Native Client project documentation is available online:
The following list describes major files and directories that you‘ll see in your working copy of the repository, including some directories that don’t exist until you've built Native Client. Paths are relative to the
COPYING NOTICE README.md RELEASE_NOTES documentation/: Documentation, release, and license information.
SConstruct scons.bat scons scons-out/ site_scons/: Build-related files. The
scons files, with data from
SConstruct, let you build Native Client and its tests. The
site-scons directories don‘t exist in the git repository; they’re created when Native Client is built. The
scons-out/*/staging directories contain files, such as the Native Client plug-in and compiled examples, that let you use and test Native Client.
src/: Core source code for Native Client.
src/include/: Header files that are missing from some platforms and are used by more than one major part of Native Client
src/shared/: Source code that's used by both trusted code (such as the service runtime) and untrusted code (such as Native Client modules)
src/third_party: Other people's source code
src/trusted/: Source code that's used only by trusted code
src/untrusted/: Source code that's used only by untrusted code
tests/common/: Source code for examples and tests.
../third_party/: Third-party source code and binaries that aren't part of the service runtime. When built, the Native Client toolchain is in
tools/: Utilities such as the plug-in installer.