mirror of
https://github.com/dart-lang/sdk
synced 2024-10-14 09:58:32 +00:00
6ef426d7df
This CL implements a slightly altered compilation process for `dart compile` on MacOS. Instead of the traditional approach of concatenating a dart snapshot with the dart runtime, this new implementation uses a new MachO segment to store the snapshot. Doing so ensure users can properly sign the resulting binaries. The dart runtime has also been updated to look for the snapshots in this new segment. There are new unit tests ensuring the dart runtime can correctly identify MachO-formatted executables and an end-to-end test ensuring `dart compile` produces code that has the new segment and produces code that can be signed. TEST=pkg/dartdev/test/commands/compile_test Change-Id: Ibdce80455e02bc2b6fd345d80be8d75f989a9c28 Cq-Include-Trybots: luci.dart.try:analyzer-mac-release-try,dart-sdk-mac-arm64-try,dart-sdk-mac-try,pkg-mac-release-arm64-try,pkg-mac-release-try,vm-kernel-mac-debug-x64-try,vm-kernel-mac-product-x64-try,vm-kernel-mac-release-arm64-try,vm-kernel-mac-release-x64-try Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/228080 Reviewed-by: Martin Kustermann <kustermann@google.com> Reviewed-by: Tess Strickland <sstrickl@google.com> Commit-Queue: Tess Strickland <sstrickl@google.com>
21 lines
578 B
C++
21 lines
578 B
C++
// Copyright (c) 2022, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
#ifndef RUNTIME_BIN_TEST_UTILS_H_
|
|
#define RUNTIME_BIN_TEST_UTILS_H_
|
|
|
|
namespace dart {
|
|
namespace bin {
|
|
namespace test {
|
|
|
|
// Helper method to be able to run the test from the runtime
|
|
// directory, or the top directory.
|
|
const char* GetFileName(const char* name);
|
|
|
|
} // namespace test
|
|
} // namespace bin
|
|
} // namespace dart
|
|
|
|
#endif // RUNTIME_BIN_TEST_UTILS_H_
|