The TODO about a system yasm is not longer necessary. We don't need to support this for Chrome developers. For Linux distros, Pawel has added an overlay to change the behavior.
The TODO about the output names is out-of-date. The new output location matches the names generated by the C compiler in the Chrome build.
Review-Url: https://codereview.chromium.org/1972173003
Cr-Original-Commit-Position: refs/heads/master@{#393544}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 09869628d781a977987b65906856bd259e40dd9e
This CL moves the definitions for the generated libraries out of //build/linux
and into sub-folders. This fixues an issue where pulling in build/linux could
force downstream users of //build to have libudev headers available.
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel
Review-Url: https://codereview.chromium.org/1945893002
Cr-Original-Commit-Position: refs/heads/master@{#391516}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8490e057b86dcfa3acb519fb1ebf406da13420ce
This showed up as a bottleneck for gn gen on Android. Refactoring these
out improves gn gen time (avg of 3 trails on my machine) from 2151->1984
BUG=none
Review URL: https://codereview.chromium.org/1909273002
Cr-Original-Commit-Position: refs/heads/master@{#389484}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 95ba4446355ffd95eca68d3c3ba7fc3c2e364b6d
We want 'use_system_harfbuzz' to always be false unless you are
building against a real ChromeOS sysroot targeted for an actual
device (i.e., just building with chromeos=1 isn't good enough).
This CL changes the defaults for the variables and fixes a few
unnecessary dependencies in the pangocairo pkg-config settings
in GYP that were causing us to get strange linker errors.
With this change, CrOS builds will need to explicitly set
use_system_harfbuzz=true, we will no longer try to guess
whether to use it or not.
R=drott@chromium.org, behdad@chromium.org
BUG=589342
Review URL: https://codereview.chromium.org/1862893002
Cr-Original-Commit-Position: refs/heads/master@{#385487}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 518b35929ff33d0dc2397a186eecbc3b536acb40
This relands https://codereview.chromium.org/1773233002/.
Original description:
Media Galleries Partial Deprecation: Remove image metadata & libexif.
Removing libexif is a great thing.
It will remove a ~200KB DLL from Windows, Mac, and ChromeOS. It will remove bugs and security issues.
BUG=542912,577272
TBR=
Review URL: https://codereview.chromium.org/1803883002
Cr-Original-Commit-Position: refs/heads/master@{#381121}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: cd96b6f874573d7089bf2eb9d54ed53d7469bb56
Reason for revert:
Causes build errors on official waterfall.
https://bugs.chromium.org/p/chromium/issues/detail?id=593580
Original issue's description:
> Media Galleries Partial Deprecation: Remove image metadata & libexif.
>
> Removing libexif is a great thing.
>
> It will remove a ~200KB DLL from Windows, Mac, and ChromeOS. It will remove bugs and security issues.
>
> BUG=542912,577272
>
> Committed: https://crrev.com/f3890c75101ff9b07f48aed992285cc45bf5b4d5
> Cr-Commit-Position: refs/heads/master@{#380306}
TBR=phajdan.jr@chromium.org,rdevlin.cronin@chromium.org,thakis@chromium.org,tommycli@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=542912,577272
Review URL: https://codereview.chromium.org/1791623002
Cr-Original-Commit-Position: refs/heads/master@{#380852}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0978e4ebde4a1c07f4e8da88cc9daa7732a63b1a
Removing libexif is a great thing.
It will remove a ~200KB DLL from Windows, Mac, and ChromeOS. It will remove bugs and security issues.
BUG=542912,577272
Review URL: https://codereview.chromium.org/1773233002
Cr-Original-Commit-Position: refs/heads/master@{#380306}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: f3890c75101ff9b07f48aed992285cc45bf5b4d5
The move to libvpx_new happened before M47 (landed in 2524, M47 branch was 2526):
crbug.com/481034
https://codereview.chromium.org/1323333002
Clients which try to transition directly between the tree after this change and before the previous move will end up in a very broken state.
Now it is 6 months later and M48 is stable so is unlikely that a client would check out the old code at all, much less try to transition directly between the two versions.
Leave a compatibility layer for targets which need to be updated out of band (webrtc, libyuv)
Review URL: https://codereview.chromium.org/1734613003
Cr-Original-Commit-Position: refs/heads/master@{#378739}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 8cdf034791388299f18fba186f2941313320b706
Since we added udev to the sysroot /usr/lib/pkgconfig
now already exists (previously only /usr/lib/<arch>/pkgconfig
existed) so simply using 'mv' to rename the directory
is no longer enough.
BUG=561584
Review URL: https://codereview.chromium.org/1699353002
Cr-Original-Commit-Position: refs/heads/master@{#376030}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 5c9493141fbc4afb6de44f31964adb01e4bfa4c0
The primary change/advantage here is gcc-4.8 and the
more recent libstdc++.
TEST=build chrome against the new sysroot
Review URL: https://codereview.chromium.org/1663863003
Cr-Original-Commit-Position: refs/heads/master@{#373405}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 3bde47dff9fe951e18bdf71de95e358c84fcb7f1
This change helps to reduce the external dependencies for OEMs to support cast_shell.
Updates third_party/libpng so it can be used as a dependency for freetype on Chromecast.
Remove the gyp variable use_custom_freetype because it is now unused.
BUG=internal b/26249831
TEST=builds and runs with gyp and gn
Review URL: https://codereview.chromium.org/1627533002
Cr-Original-Commit-Position: refs/heads/master@{#372996}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 0ddf78a46654c13f9ee7de921a820087f45375e3
Previously we were using PKG_CONFIG_PATH to tell pkg-config
to search the sysroot directories. However the default
libpath is always added to this path, so pkg-config would
fall back to looking in the system directories.
Using PKG_CONFIG_LIBDIR instead overrides the default
libdir which makes the build more hermetic and forces the
sysroot to provide all the required .pc files.
Review URL: https://codereview.chromium.org/1580643002
Cr-Original-Commit-Position: refs/heads/master@{#369224}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 4d4a9acde47d5e955c12eb0bf3feaa800c2a6f55
This change bring is in following change to sysroot
contents:
82063a2: Add chromeos-specific packages to linux sysroot image
34a5998: Add more packages to the Wheezy sysroot
BUG=576807
Review URL: https://codereview.chromium.org/1576293002
Cr-Original-Commit-Position: refs/heads/master@{#369012}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: fdd653a846bb55e0d2795bbe0f481c923d485b6e
x11proto-xinerama-dev is needed by libxinerama-dev, libxdmcp-dev is used
by xcb.
With this change (and after regenerating the sysroot), it is possible to
run gn and configure the build without having a single pkg-config in the
host system (tested on amd64).
R=sbc@chromium.org,dpranke@chromium.org
Review URL: https://codereview.chromium.org/1539393002
Cr-Original-Commit-Position: refs/heads/master@{#367302}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 34a5998d2a36de0149470d23b7f98df863e61d21
For some reason our intranet here is blocking googleapis.com.
Actually other tools that are updated via runhooks are using
that alias url already (e.g. clang).
Review URL: https://codereview.chromium.org/1534873002
Cr-Original-Commit-Position: refs/heads/master@{#366481}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: dbf2f363526a4a1fc90af90206a2e0e7761eb75d
This brings in the following changes to the sysroot:
- d746383 Include /usr/share/pkgconfig files in sysroot image
- 475c72a Add libpthread-stubs0-dev to sysroot image
BUG=569947
Review URL: https://codereview.chromium.org/1536433003
Cr-Original-Commit-Position: refs/heads/master@{#365655}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 2199e4c1c2619ba1996515bccf7b5e33226b5662
This change makes gn's pkg-config.py match more
closely the behavior of pkg-config-wrapper.
pkg-config-wrapper is always run with the third
argument set to '<(system_libdir)', which defaults to
'lib', which means that gyp never using lib64 in
practice. Even though system_libdir is supported in
gyp, there is currently no equivalent that I can find
in gn, so I left a TODO.
This change is required before we can land the sysroot
change that populates /usr/lib/pkgconfig:
https://codereview.chromium.org/1531513002
BUG=569947
Review URL: https://codereview.chromium.org/1530723002
Cr-Original-Commit-Position: refs/heads/master@{#365415}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b05b60bf32ce6f01253888ad0a0d1e0cbdac84b0
This is required by the xcb pkg-config file but
has gone unnoticed since most host systems have this
installed.
BUG=569949
Review URL: https://codereview.chromium.org/1530683003
Cr-Original-Commit-Position: refs/heads/master@{#365384}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 475c72a09a1167c4cf70fa99503a7f3fa3117f79
The gn bots require both host and target sysrot images
installed. This change is needed to convert the Linux
ARM bot gn.
BUG=564059
Review URL: https://codereview.chromium.org/1499313002
Cr-Original-Commit-Position: refs/heads/master@{#363916}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: b564072892d52a11ae26004739111409be25ec44
This removes some of the smarts that relied on GYP_DEFINES being set.
With the move to GN, GYP_DEFINES will often not be set.
BUG=564869
Review URL: https://codereview.chromium.org/1493913002
Cr-Original-Commit-Position: refs/heads/master@{#363218}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 38d1fc620f41e8994079eb8532ed12631863d4c6
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
Also, the extra libdrm dependencies needed.
The packagelists were updated by running:
./sysroot-creator-wheezy.sh UpdatePackageListsAll
BUG=559062
Review URL: https://codereview.chromium.org/1464123002
Cr-Original-Commit-Position: refs/heads/master@{#361035}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a0e3d0246001dd352580e670d34b7163fd2351ea
This adds the wayland library to third_party and libffi
as a build dependency on linux. libffi is already a run-time
dependency as libgobject depends on it.
BUG=549782
Review URL: https://codereview.chromium.org/1426583009
Cr-Original-Commit-Position: refs/heads/master@{#359701}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 754ca2c474484f29b3b33c1d2f1909c6a3193260
This is required by Android since it builds both 64 and 32 bit v8
snapshots, which need to be built on the host by toolchains with the matching bit-width.
BUG=552040
Review URL: https://codereview.chromium.org/1430143002
Cr-Original-Commit-Position: refs/heads/master@{#359212}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: 79822596ae07da6b5b7c9a43d2c7bfffc3fa0d06
The is_headless setting configures the build in the same
way as the embedded flag in gyp.
Contributions by Alexander Timin <altimin@chromium.org> and
Alex Clarke <alexclarke@chromium.org>.
BUG=546953,318413
Review URL: https://codereview.chromium.org/1410883007
Cr-Original-Commit-Position: refs/heads/master@{#359096}
Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src
Cr-Mirrored-Commit: a557457caccb3c0f60e5d35ccc8c55af5849d76a