Fuchsia support has been upstreamed into Clang, so the existing
Linux-hosted Clang toolchain binaries in third_party with the correct
--target are sufficient. Fuchsia is POSIXy so a lot of things will just
work, but some places will require different implementations, so this CL
adds support for is_fuchsia as well as a basic implementation of the
toolchain config.
The SDK (headers, sysroot, etc.) is currently available at
go/fuchsia-sdk until a standard location for it is decided upon.
The near term goal behind this CL is to bring up base/ and net/ on an
fyi bot running Fuchsia.
BUG=706592
Review-Url: https://codereview.chromium.org/2784063002
Cr-Original-Commit-Position: refs/heads/master@{#471360}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2f97ee120e2d83a87e36e50432b58e790db160ff
This change was motivated by the need to remove the
references to wheezy. I noticed that the target_sysroot_dir
argument could be generalized which avoids the extra
conditional in sysroot.gni.
BUG=697494
Review-Url: https://codereview.chromium.org/2810633004
Cr-Original-Commit-Position: refs/heads/master@{#463368}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 75cc3b096e245801afa0607dc4f8adc03566ae16
Building with the wheezy sysroot and is_clang=false results in errors
like this:
../../base/process/process_iterator.h:12:16: fatal error: list: No
such file or directory
#include <list>
[1] added a restriction that use_sysroot must be false when building
with is_clang=false. However, as of [2], the wheezy sysroot has been
removed, and these compilation errors are not present on the Jessie
sysroot. This CL removes the restriction added by [1].
[1] https://codereview.chromium.org/1476923005
[2] https://codereview.chromium.org/2597523003
BUG=575778
R=dpranke@chromium.org
Review-Url: https://codereview.chromium.org/2804633005
Cr-Original-Commit-Position: refs/heads/master@{#462343}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c2c8a4d94797d67f76e061be40cfed0378eccd81
This is an attempt to reland a change that was attempted
several times already. It now includes changes to the
linux packaging expectations which previously caused
failed on the official bots.
TESTED=ninja linux_packages_all
BUG=701894
Review-Url: https://codereview.chromium.org/2748183005
Cr-Original-Commit-Position: refs/heads/master@{#459062}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 94c4fa81c45284d0fe1e5616f52fcad56745077b
Reason for revert:
Broken the official rpm builders (https://bugs.chromium.org/p/chromium/issues/detail?id=701585) and also causes an apparent regressing in the number of static initializes.
Original issue's description:
> Reland of Update linux sysroot images from debian/wheezy to debian/jessie (patchset #1 id:1 of https://codereview.chromium.org/2743253004/ )
>
> Reason for revert:
> Linux bot has now been upgraded
>
> Original issue's description:
> > Revert of Update linux sysroot images from debian/wheezy to debian/jessie (patchset #8 id:140001 of https://codereview.chromium.org/2361223002/ )
> >
> > Reason for revert:
> > Broke the linux builder which it seems is still on Precise.
> >
> > Original issue's description:
> > > Update linux sysroot images from debian/wheezy to debian/jessie
> > >
> > > BUG=564904
> > >
> > > Review-Url: https://codereview.chromium.org/2361223002
> > > Cr-Commit-Position: refs/heads/master@{#456441}
> > > Committed: 8d4f1d731f
> >
> > TBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=564904
> >
> > Review-Url: https://codereview.chromium.org/2743253004
> > Cr-Commit-Position: refs/heads/master@{#456449}
> > Committed: 189891d210
>
> TBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=564904
>
> Review-Url: https://codereview.chromium.org/2755483002
> Cr-Commit-Position: refs/heads/master@{#456758}
> Committed: 79d4fc169aTBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=564904
Review-Url: https://codereview.chromium.org/2754443003
Cr-Original-Commit-Position: refs/heads/master@{#456900}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: d93f0e0cabc7d2d4570b60d97434e32749c5723f
Reason for revert:
Linux bot has now been upgraded
Original issue's description:
> Revert of Update linux sysroot images from debian/wheezy to debian/jessie (patchset #8 id:140001 of https://codereview.chromium.org/2361223002/ )
>
> Reason for revert:
> Broke the linux builder which it seems is still on Precise.
>
> Original issue's description:
> > Update linux sysroot images from debian/wheezy to debian/jessie
> >
> > BUG=564904
> >
> > Review-Url: https://codereview.chromium.org/2361223002
> > Cr-Commit-Position: refs/heads/master@{#456441}
> > Committed: 8d4f1d731f
>
> TBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=564904
>
> Review-Url: https://codereview.chromium.org/2743253004
> Cr-Commit-Position: refs/heads/master@{#456449}
> Committed: 189891d210TBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=564904
Review-Url: https://codereview.chromium.org/2755483002
Cr-Original-Commit-Position: refs/heads/master@{#456758}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 79d4fc169a9af62228134cf4c60714dbbe4659dd
Reason for revert:
Broke the linux builder which it seems is still on Precise.
Original issue's description:
> Update linux sysroot images from debian/wheezy to debian/jessie
>
> BUG=564904
>
> Review-Url: https://codereview.chromium.org/2361223002
> Cr-Commit-Position: refs/heads/master@{#456441}
> Committed: 8d4f1d731fTBR=phajdan.jr@chromium.org,thestig@chromium.org,thomasanderson@google.com,dpranke@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=564904
Review-Url: https://codereview.chromium.org/2743253004
Cr-Original-Commit-Position: refs/heads/master@{#456449}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 189891d210bb98c91e155d4794dffa03d95f1e15
We're working on a class of changes in the Linux desktop UI
that won't work on Precise; they need newer Linux versions
that basically amount to needing to link against the Debian
Jessie sysroot instead of the Debian Wheezy sysroot. Previously
we were working around this by checking whether we were building
with ozone + use_kbdcommon, but that caused a dependency inversion
by making //build depend on //ui.
This changes adds a dedicated GN build arg, use_jessie_sysroot,
that we'll explicitly set instead, and that way we can avoid
the dependency inversion.
R=thomasanderson@chromium.org, tonikitoo@igalia.com
BUG=564904
Review-Url: https://codereview.chromium.org/2687203002
Cr-Original-Commit-Position: refs/heads/master@{#449505}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 657454d7091e2d6108703305a6ba1d4904df98a0
Tie the debian/jessie usage to use_xkbcommon rather
than use_ozone for now.
This is more conservative and avoids problems for ozone/headless
and other bots.
BUG=687725
Review-Url: https://codereview.chromium.org/2676643004
Cr-Original-Commit-Position: refs/heads/master@{#448468}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ef8c544029d9e7201b3d24e87af90a97702ed5b4
This is needed because Debian/wheezy (currently used) does not support
libxkbcommon0/libxkbcommon-dev packages, needed for keyboard support on
Ozone/Wayland.
BUG=681562
Review-Url: https://codereview.chromium.org/2645523003
Cr-Original-Commit-Position: refs/heads/master@{#446081}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 58f836955cb7ca30cffc60a95bc337a5b6fa092c
Build and link against the Ubuntu Precise amd64 sysroot on Desktop
Chrome OS instead of always using the system libraries.
BUG=638394
Review-Url: https://codereview.chromium.org/2272273002
Cr-Original-Commit-Position: refs/heads/master@{#414564}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c575bbcd130b38994e36b0a97bfe5ceea954a643
Right now when custom sysroot is provided as gn parameter (target_sysroot)
only 32 bit custom sysroot will be used. 64 bit sysroot (which is also needed
by 32 bit build by - for example - protobuf) is expected to be found in default
location. This change adds possibility to provide path to directory containing
both sysroots for linux (32 bit and 64 bit).
BUG=622616
Review-Url: https://codereview.chromium.org/2096323002
Cr-Original-Commit-Position: refs/heads/master@{#402742}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 16c1060131d3e94aa57a241f3ed33afbdf2f2263
This change adds support for cross compiling chrome on ARM64 linux.
Temporarily disabled nacl and tcmalloc to fix compilation errors.
BUG=613452
Review-Url: https://codereview.chromium.org/2001523002
Cr-Original-Commit-Position: refs/heads/master@{#399766}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3026e6886f052160a3ff594801d5b4dbe8a20753
Explicitly: This reverts the patch that reverted the patch that
removed the majority of absolute paths from linux builds, and makes
it possible to use an absolute path by setting dont_embed_build_metadata
to false.
In conjunction with codereview.chromium.org/1642193002 that modifies the codesearch
buildbot to use dont_embed_build_metadata = false, this CL should allow
codesearch to continue working, and all other buildbots and users
to gain the benefits of not requiring absolute paths.
BUG=580103
Review URL: https://codereview.chromium.org/1643523004
Cr-Original-Commit-Position: refs/heads/master@{#373432}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4b6f030a35226c0d6e412b1025e791e5391b1455
[Note: Dependency claims are only valid on Linux builds]
This change removes absolute file paths from several locations in
produced binaries, reducing the total number of files containing
absolute file paths from ~30k to ~4k.
Specifically, this removes absolute paths from:
.rodata (sysroot based)
.debug_str, .debug_info (debug prefix based)
.debug_line (debug prefix and sysroot based)
.debug_info still contains (on Linux) 22 absolute paths, but
as discussed below, this is most likely simple to resolve.
This can be measured by using
$ find out/Default/ -type f | grep -v ninja | xargs -I '{}' grep -l \
'absolute-path-component' '{}' | wc -l
Before: 30420
After: 3917 (https://gist.github.com/anonymous/fd870076c990fcf792c7)
The remaining instances mostly originate from NaCL not
having the flag enabled. Enabling requires updating the
toolchain's version of clang to newer than release 3.8
Generated ninja files still have some absolute file paths. At
the very least, they contain -fdebug-prefix-map=/ABSOLUTE/PATH/TO/DIR.
This will be removed later.
BUG=439949
Review URL: https://codereview.chromium.org/1556923002
Cr-Original-Commit-Position: refs/heads/master@{#370320}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fdca0741b22a4dddbf1808b8d0081651662b22c5
Currently out sysroots are not gcc compatible (except
for gcc 4.6 which isn't capable of building chromium).
BUG=567206
Review URL: https://codereview.chromium.org/1516483004
Cr-Original-Commit-Position: refs/heads/master@{#364131}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3e86f046bdf3df1b37189a7204095ddfa837963f
Reason for revert:
Speculative revert to fix:
FAILED: cd ../../chrome; flock -- /tmp/linux_package_lock bash ../out/Release/installer/debian/build.sh -o../out/Release -b ../out/Release -a ia32 -d google_chrome -c beta
dpkg-shlibdeps: warning: binaries to analyze should already be installed in their package's directory.
4c4
< libc6 (>= 2.11)
---
> libc6 (>= 2.15)
https://build.chromium.org/p/chromium.chrome/builders/Google%20Chrome%20Linux/builds/43856/steps/compile/logs/stdio
Original issue's description:
> Only build against prebuilt sysroot when using clang
>
> Its is not currently possible to use gcc with the sysroot
> since the sysroot only contains C++ headers for gcc 4.6
> and gcc 4.8 is required to build chromium. Luckily clang
> is more flexible and able to detect and work with the 4.6
> headers in the sysroot.
>
> BUG=504446
>
> Committed: https://crrev.com/ccc8c1e14c155255a8ef844704d97fa8e7d0dac2
> Cr-Commit-Position: refs/heads/master@{#361905}
TBR=dpranke@chromium.org,sbc@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=504446
Review URL: https://codereview.chromium.org/1483433002
Cr-Original-Commit-Position: refs/heads/master@{#361916}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 10c8cbc6c725a8aee45a539e0e5acefbd027e011
Its is not currently possible to use gcc with the sysroot
since the sysroot only contains C++ headers for gcc 4.6
and gcc 4.8 is required to build chromium. Luckily clang
is more flexible and able to detect and work with the 4.6
headers in the sysroot.
BUG=504446
Review URL: https://codereview.chromium.org/1476923005
Cr-Original-Commit-Position: refs/heads/master@{#361905}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: ccc8c1e14c155255a8ef844704d97fa8e7d0dac2
Reason for revert:
Couldn't reproduce the failure.
Original issue's description:
> Revert of Use sysroot by default for all linux builds (patchset #7 id:120001 of https://codereview.chromium.org/1464983003/ )
>
> Reason for revert:
> Seems to have caused issues with goma: https://code.google.com/p/chromium/issues/detail?id=560973
>
> Original issue's description:
> > Use sysroot by default for all linux builds
> >
> > Using a sysroot was already the default for official
> > build and when cross compiling (e.g. arm, mips, x86-32).
> > This change makes it the default in all cases.
> >
> > The old behavior of building against local
> > system libraries can still be achieved by
> > setting use_sysroot=0
> >
> > BUG=504446
> >
> > Committed: https://crrev.com/a931efd5dc8d8783ce73a64fc641627866b6869d
> > Cr-Commit-Position: refs/heads/master@{#361197}
>
> TBR=dpranke@chromium.org,thestig@chromium.org,thakis@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=504446
>
> Committed: https://crrev.com/05373dc078f0d5d3f2fb1398db9a4008a55d9016
> Cr-Commit-Position: refs/heads/master@{#361405}
TBR=dpranke@chromium.org,thestig@chromium.org,thakis@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=504446
Review URL: https://codereview.chromium.org/1472873004
Cr-Original-Commit-Position: refs/heads/master@{#361411}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 964155752e49f75260e86ba824fcec81b3fd4c3d
Reason for revert:
Seems to have caused issues with goma: https://code.google.com/p/chromium/issues/detail?id=560973
Original issue's description:
> Use sysroot by default for all linux builds
>
> Using a sysroot was already the default for official
> build and when cross compiling (e.g. arm, mips, x86-32).
> This change makes it the default in all cases.
>
> The old behavior of building against local
> system libraries can still be achieved by
> setting use_sysroot=0
>
> BUG=504446
>
> Committed: https://crrev.com/a931efd5dc8d8783ce73a64fc641627866b6869d
> Cr-Commit-Position: refs/heads/master@{#361197}
TBR=dpranke@chromium.org,thestig@chromium.org,thakis@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=504446
Review URL: https://codereview.chromium.org/1473363002
Cr-Original-Commit-Position: refs/heads/master@{#361405}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 05373dc078f0d5d3f2fb1398db9a4008a55d9016
Using a sysroot was already the default for official
build and when cross compiling (e.g. arm, mips, x86-32).
This change makes it the default in all cases.
The old behavior of building against local
system libraries can still be achieved by
setting use_sysroot=0
BUG=504446
Review URL: https://codereview.chromium.org/1464983003
Cr-Original-Commit-Position: refs/heads/master@{#361197}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a931efd5dc8d8783ce73a64fc641627866b6869d
This changes various defaults about the ARM compiler setup so
that GN matches what GYP does today:
* Prefix for cross tools is arm-linux-gnueabihf- not arm-linux-gnueabi-
* arm_float_abi defaults to hard for non-Android ARMv7
* Non-CrOS ARM builds use the ARM sysroot by default
(the one installed by install-build-deps.sh --arm)
* Define a clang_arm toolchain, pass it the -no-integrated and
-target arm-linux-gnueabihf and switches as GYP does
R=dpranke@chromium.org, sbc@chromium.org
BUG=
Review URL: https://codereview.chromium.org/1352313002
Cr-Original-Commit-Position: refs/heads/master@{#350100}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cc3a331e1bc91166a5d51fc1fa44fba49d1fb461
The sysroot are generally useful (for example when
cross compiling) and not limited to use in the installer
or official releases.
Another reason to move this is that it would allow other
projects to more easily share chromium's build setup
without depending on chrome/.
Also, rename the install script to simply install-sysroot.
This way the script can keep the same name and support
multiple different debian releases without needing
to duplicate the script (e.g. when we switch to jessie).
BUG=504446
TEST=cross build chromium for arm and ia32
Review URL: https://codereview.chromium.org/1141003002
Cr-Original-Commit-Position: refs/heads/master@{#336843}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8208b4d81396c11e1f8ca8f6ffe52b9fcea87d05
The first pass of moving the other Chrome-specific build flags out of the root build config file and into the new one. This requires both ffmpeg and Blink changes to finish landing.
Originally landed as https://codereview.chromium.org/1120803003/TBR=scottmg@chromium.orgTBR=ddorwin@chromium.org (widevine)
CQ_EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
Review URL: https://codereview.chromium.org/1123433002
Cr-Original-Commit-Position: refs/heads/master@{#327998}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2b2364bb2c6fbb88e6a4550abeb9141bc7cb949c
Remove most references to android_webview_build from the build directory
now that we no longer support that build configuration. Fold conditions
into their parents where appropriate. Leave the variable itself defined
to 0 as not all uses in the tree have been removed yet.
A few references are left alone here and will be removed separately in
later changes that will be larger refactorings to eliminate other
variables.
BUG=440793
Review URL: https://codereview.chromium.org/1043913002
Cr-Original-Commit-Position: refs/heads/master@{#323013}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: c6fe7a775af41cd98533e89a902b8b67044caa87
The latest GN binaries rename cpu_arch to current_cpu and/or target_cpu
as appropriate, build_cpu_arch to host_cpu, and os to current_os and target_os as appropriate.
R=brettw@chromium.orgTBR=ddorwin@chromium.org
EXTRA_TRYBOTS=tryserver.chromium.linux:android_chromium_gn_compile_dbg,android_chromium_gn_compile_rel;tryserver.chromium.win:win8_chromium_gn_rel,win8_chromium_gn_dbg;tryserver.chromium.mac:mac_chromium_gn_rel,mac_chromium_gn_dbg
BUG=344767
Review URL: https://codereview.chromium.org/913373002
Cr-Original-Commit-Position: refs/heads/master@{#317223}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4327621a322c964a8bc6d1ef5a4534f0f877d63e
gn now run with arg target_arch = "x64", arm64 and mips64el
releated changes are added as well but not verified.
BUG=none
Review URL: https://codereview.chromium.org/864173006
Cr-Original-Commit-Position: refs/heads/master@{#315680}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 98de73d11797b1b0ac7ac0b2f4234cb8f57bd2fc
The GYP flow allows 'sysroot' to be overridden via GYP_DEFINES, which is needed
in some scenarios such as building for Chrome OS. This CL declares
'target_sysroot' as a GN argument, which can be used to override the default
sysroot when compiling using the target toolchain via the GN flow.
BUG=427726
TEST=Verify that sysroot is overridden via `gn gen --args='target_sysroot=...' ...`
Review URL: https://codereview.chromium.org/683063005
Cr-Original-Commit-Position: refs/heads/master@{#301868}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4a8f241213d5618a152bc00cc4eaeb556b63d765
Some minor tweaks in STL usage in GN itself to enable it to compile using the Android version of the STL. Enable this in the build (not so much because we need a GN binary on Android, but for build verification purposes).
Moved the executable_ldconfig config from the linux file to the gcc one since its shared between the Linux and Android builds. Added "-Bdynamic" and "-Wl,-z,nocopyreloc" to this on Android.
Moved some sysroot path components from sysroot.gni to android/config.gni (which sysroot uses) so it can be shared with the toolchain definitions.
Added the android_full_debug build flag. Made the "optimize off" mode of the build match the GYP build's "light optimization" on Android contingent on this flag.
Pulls out the optimize and optimize_max shared flags into one list to avoid duplication.
Adds a bunch of linker optimization flags that should be passed on non-Mac Posix platforms, and turns on dead code stripping for Mac builds.
Adds functionality to the gcc toolchain template to be able to insert strings before and after the libs. Adds a wrapper template for android toolchains that sets these accordingly to get the gross Android crtbegin/end files inserted in the right place on the linker line.
Made the android_ndk_root variable relative to the source root rather than the system root. Uses of this now rebase according to their own needs which makes some of the arguments a lot easier to follow.
Build file updates for base and libevent for Android. Implement ashmem library.
The only change on desktop linux is the addition of -Wl,--fatal-warnings to the linker line.
R=ajwong@chromium.org, cjhopman@chromium.org, scottmg@chromium.org
Review URL: https://codereview.chromium.org/275703003
git-svn-id: http://src.chromium.org/svn/trunk/src/build@270138 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
Updates all rebase_path calls to use the new parameter ordering.
Use the new getenv function and delete the Python script we had to get the home directory.
Takes advantage of the new ability to have the default value of declare_args blocks be dependent on other values. This simplifies some code.
R=scottmg@chromium.org
Review URL: https://codereview.chromium.org/164773005
git-svn-id: http://src.chromium.org/svn/trunk/src/build@252065 4ff67af0-8c30-449e-8e8b-ad334ec8d88c
This hooks up detection for the "-arch" flag on Mac to set the GYP "ARCH" xcode variable. GN then removes the -arch argument from the compiler args, since GYP will then re-add it based on the ARCH value. Previously, not doing this resulting in mutliple "-arch" arguments to the compiler since GYP would always insert its own.
Disables some warnings on Windows for the re2 target to match the GYP build. The third warning (4018) that the GYP build sets is disabled globally so there's no need to do it for this target.
Hooks up some iOS SDK stuff.
BUG=336667
TBR=thakis@chromium.org
Review URL: https://codereview.chromium.org/141433015
git-svn-id: http://src.chromium.org/svn/trunk/src/build@247206 4ff67af0-8c30-449e-8e8b-ad334ec8d88c