Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
b789ef5
[native_toolchain_c] Fix clang compiler search + tools for Swiftly
nikeokoronkwo Nov 18, 2025
a367d17
Resolved tool_resolver.dart unnecessary import
nikeokoronkwo Nov 19, 2025
0ff54c4
Added CHANGELOG.md update and version bump
nikeokoronkwo Nov 19, 2025
ec4e5d7
updated lookup for apple linker
nikeokoronkwo Dec 15, 2025
a1a38a2
Merge branch 'main' into fix/swiftly
nikeokoronkwo Dec 15, 2025
9cf4dac
updated pubspec version for native_toolchain_c
nikeokoronkwo Dec 15, 2025
836991b
Merge branch 'main' into fix/swiftly
nikeokoronkwo Dec 22, 2025
7a25e6c
Merge branch 'main' into fix/swiftly
nikeokoronkwo Jan 10, 2026
9980d95
Updated CI for swiftly
nikeokoronkwo Jan 10, 2026
294624b
merge main branch
nikeokoronkwo Mar 15, 2026
c089af9
Squashed commit of the following:
nikeokoronkwo Mar 15, 2026
34c5e98
Merge branch 'main' into fix/swiftly
nikeokoronkwo Mar 15, 2026
72c450d
Updated Github PATH for Swiftly in CI
nikeokoronkwo Mar 15, 2026
2e88d0e
Merge branch 'fix/swiftly' of https://github.com/nikeokoronkwo/native…
nikeokoronkwo Mar 15, 2026
bafbfd9
updated swiftly job with deps
nikeokoronkwo Mar 19, 2026
573d96f
Merge branch 'main' into fix/swiftly
nikeokoronkwo Mar 19, 2026
f7d636a
Fixed apple `ld` test by testing against stderr rather than stdout
nikeokoronkwo Mar 19, 2026
31a1b15
Add priority for builtin `ar` for apple
nikeokoronkwo Mar 19, 2026
fd67c32
analyzing issues fixed
nikeokoronkwo Mar 19, 2026
d60f514
Replaced AbsoluteToolResolver with PathFilter for absolute path
nikeokoronkwo Mar 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions pkgs/native_toolchain_c/lib/src/native_toolchain/apple_clang.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
// 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.

import 'package:code_assets/code_assets.dart';

import '../tool/tool.dart';
import '../tool/tool_resolver.dart';

Expand Down Expand Up @@ -31,6 +33,10 @@ final Tool appleAr = Tool(
wrappedResolver: appleClang.defaultResolver!,
relativePath: Uri.file('ar'),
),
PathToolResolver(
Comment thread
nikeokoronkwo marked this conversation as resolved.
Outdated
toolName: 'Apple archiver',
executableName: OS.current.executableFileName('ar'),
),
]),
);

Expand All @@ -43,6 +49,15 @@ final Tool appleLd = Tool(
wrappedResolver: appleClang.defaultResolver!,
relativePath: Uri.file('ld'),
),
PathToolResolver(
toolName: 'Apple linker',
executableName: OS.current.executableFileName('ld'),
Comment thread
nikeokoronkwo marked this conversation as resolved.
Outdated
),
RelativeToolResolver(
toolName: 'Apple linker',
wrappedResolver: appleClang.defaultResolver!,
relativePath: Uri.file(OS.current.executableFileName('ld.lld')),
),
]),
);

Expand Down
5 changes: 4 additions & 1 deletion pkgs/native_toolchain_c/lib/src/tool/tool_resolver.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
// 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.

import 'dart:async';
Comment thread
nikeokoronkwo marked this conversation as resolved.
Outdated
import 'dart:convert';
import 'dart:io';

Expand Down Expand Up @@ -65,8 +66,10 @@ class PathToolResolver extends ToolResolver {
if (process.exitCode == 0) {
final file = File(LineSplitter.split(process.stdout).first);
final uri = File(await file.resolveSymbolicLinks()).uri;
if (uri.pathSegments.last == 'llvm') {
if (uri.pathSegments.last == 'llvm' ||
uri.pathSegments.last == 'swiftly') {
// https://github.com/dart-lang/native/issues/136
// https://github.com/dart-lang/native/issues/2792
Comment thread
nikeokoronkwo marked this conversation as resolved.
return file.uri;
}
return uri;
Expand Down
Loading