Commit graph

12 commits

Author SHA1 Message Date
Martin Kustermann 168539d61d Reland "[vm] Build dart2native dependencies with the normal "create_sdk" target"
The flutter engine DEPS got new icu/boringssl so this CL can safely
land and roll into engine. A small change is made in Patchset 1..3.

This removes special logic for creating the `dart-sdk` we distribute
which used to build release and product mode and copied some binaries
from the latter into the former, before the SDK was actuallly ready to
test and distribute.

This changes the GN build rules to build the necessary
gen_snapshot/dart_precompiled_runtime product binaries during the normal
release build.

Normally during --mode=product builds the global build config in
//build/config/BUILDCONFIG.gn will set `-fvisibility=false`.

=> Doing so results in much smaller binaries - because only explicitly
   exported symbols are visible, the rest can be tree shaken by the linker.

Since we are building --mode=release, the `-fvisibility=false` will not
be set. In order to set the flag for the 2 special product-mode binaries
we need to add -fvisibility=hidden manually, in:

  * dart_product_config: Which is used for compiling VM sources.
  * 3rd party double-conversion library
  * 3rd party boringssl library
  * 3rd party icu library

The upstream CLs are:

  * BoringSSL: https://dart-review.googlesource.com/c/boringssl_gen/+/150482
  * ICU: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/2236407

Issue https://github.com/dart-lang/sdk/issues/42230

Change-Id: I8d9b37acbb5eb94e44d97652f838948a946fd372
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151505
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2020-06-17 16:12:26 +00:00
Martin Kustermann 21222b64c4 Revert "[vm] Build dart2native dependencies with the normal "create_sdk" target"
This reverts commit a88a328b7f.

Reason for revert: Auto roller hasn't rolled previous changes from
Dart yet. Those changes updated DEPS for icu/boringssl. We have to
wait with this CL until the DEPS changes have been done in the engine.

Original change's description:
> [vm] Build dart2native dependencies with the normal "create_sdk" target
> 
> This removes special logic for creating the `dart-sdk` we distribute
> which used to build release and product mode and copied some binaries
> from the latter into the former, before the SDK was actuallly ready to
> test and distribute.
> 
> This changes the GN build rules to build the necessary
> gen_snapshot/dart_precompiled_runtime product binaries during the normal
> release build.
> 
> Normally during --mode=product builds the global build config in
> //build/config/BUILDCONFIG.gn will set `-fvisibility=false`.
> 
> => Doing so results in much smaller binaries - because only explicitly
>    exported symbols are visible, the rest can be tree shaken by the linker.
> 
> Since we are building --mode=release, the `-fvisibility=false` will not
> be set. In order to set the flag for the 2 special product-mode binaries
> we need to add -fvisibility=hidden manually, in:
> 
>   * dart_product_config: Which is used for compiling VM sources.
>   * 3rd party double-conversion library
>   * 3rd party boringssl library
>   * 3rd party icu library
> 
> The upstream CLs are:
> 
>   * BoringSSL: https://dart-review.googlesource.com/c/boringssl_gen/+/150482
>   * ICU: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/2236407
> 
> Issue https://github.com/dart-lang/sdk/issues/42230
> 
> Change-Id: I3e47664d9fadb9ed1ad033bb17d46e769442f741
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150524
> Commit-Queue: Martin Kustermann <kustermann@google.com>
> Reviewed-by: Alexander Thomas <athom@google.com>
> Reviewed-by: Zach Anderson <zra@google.com>

TBR=kustermann@google.com,zra@google.com,athom@google.com,asiva@google.com

Change-Id: Ied0f2f5b58dceb2b59bc2ac6e11e5fd717c8885e
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151382
Reviewed-by: Martin Kustermann <kustermann@google.com>
Commit-Queue: Martin Kustermann <kustermann@google.com>
2020-06-16 10:41:27 +00:00
Martin Kustermann a88a328b7f [vm] Build dart2native dependencies with the normal "create_sdk" target
This removes special logic for creating the `dart-sdk` we distribute
which used to build release and product mode and copied some binaries
from the latter into the former, before the SDK was actuallly ready to
test and distribute.

This changes the GN build rules to build the necessary
gen_snapshot/dart_precompiled_runtime product binaries during the normal
release build.

Normally during --mode=product builds the global build config in
//build/config/BUILDCONFIG.gn will set `-fvisibility=false`.

=> Doing so results in much smaller binaries - because only explicitly
   exported symbols are visible, the rest can be tree shaken by the linker.

Since we are building --mode=release, the `-fvisibility=false` will not
be set. In order to set the flag for the 2 special product-mode binaries
we need to add -fvisibility=hidden manually, in:

  * dart_product_config: Which is used for compiling VM sources.
  * 3rd party double-conversion library
  * 3rd party boringssl library
  * 3rd party icu library

The upstream CLs are:

  * BoringSSL: https://dart-review.googlesource.com/c/boringssl_gen/+/150482
  * ICU: https://chromium-review.googlesource.com/c/chromium/deps/icu/+/2236407

Issue https://github.com/dart-lang/sdk/issues/42230

Change-Id: I3e47664d9fadb9ed1ad033bb17d46e769442f741
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150524
Commit-Queue: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Zach Anderson <zra@google.com>
2020-06-15 15:17:35 +00:00
Clement Skau 0cada76a06 [SDK] Removes dart2aot.
Bug: https://github.com/dart-lang/sdk/issues/38834
Change-Id: Iff1247186271643ea557a0aaec1e6b8438676c59
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/121706
Auto-Submit: Clement Skau <cskau@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2019-10-15 17:53:38 +00:00
Clement Skau 0d0f01a7b7 Add new AOT build steps to deb package build script.
Bug: https://github.com/dart-lang/sdk/issues/36892
Change-Id: I6e8b202101449b2e8ca4c780ceca1e7e0731964c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/101960
Commit-Queue: Clement Skau <cskau@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: William Hesse <whesse@google.com>
2019-05-29 08:45:00 +00:00
Alexander Thomas e679101211 [infra] Update debian package metadata
Change-Id: I73696171a6d118c39ef485f0456898f789596876
Reviewed-on: https://dart-review.googlesource.com/c/82993
Reviewed-by: William Hesse <whesse@google.com>
2018-11-07 09:54:46 +00:00
William Hesse 7907d5dcdd Change debian package build rules to drop GYP
BUG=
R=sortie@google.com

Review-Url: https://codereview.chromium.org/2995203002 .
2017-08-18 14:27:48 +02:00
sgjesse@google.com e0f76533c2 Don't depend on openjdk for building Debian packages
R=ricow@google.com
BUG=

Review URL: https://codereview.chromium.org//551803002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39958 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-08 12:43:04 +00:00
zra@google.com 12e83bbd84 Allows building debian packages for ARM.
This change adds arm as a possible architecture to
the create_debian_packages.py script and additionally
adds a toolchain flag so that arm packages can be
built using different cross-compilers that target
different ARM versions. The specified cross-compiler
is passed on to the debian/rules file through an
environment variable.

R=ricow@google.com, sgjesse@google.com

Review URL: https://codereview.chromium.org//396123003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39291 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-15 15:20:42 +00:00
sgjesse@google.com 3b353731f6 Add script to build Debian packages
The script create_debian_packages.py will build source and binary
Debian packages from the generated tarball.

R=kustermann@google.com, ricow@google.com
BUG=

Review URL: https://codereview.chromium.org//159003002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32550 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-11 11:08:26 +00:00
sgjesse@google.com 52a792b2b1 Update Debian build dependencies
subversion is not needed for building from source in tarball. g++ is implied by the build-essential package

R=ricow@google.com
BUG=

Review URL: https://codereview.chromium.org//138303008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32495 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-10 13:18:17 +00:00
sgjesse@google.com 8128bd9373 Add script for generating a source tarball and rules for bilding a Debian package
R=ricow@google.com, kusternamm@google.com
BUG=

Review URL: https://codereview.chromium.org//154073002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32359 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-06 14:37:45 +00:00