mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-08-02 14:57:31 +03:00
pkg: remove unused files, add highway API to get targets
This commit is contained in:
9
pkg/highway/bridge.cpp
Normal file
9
pkg/highway/bridge.cpp
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#include <hwy/targets.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
extern "C" {
|
||||||
|
|
||||||
|
int64_t hwy_supported_targets() {
|
||||||
|
return HWY_SUPPORTED_TARGETS;
|
||||||
|
}
|
||||||
|
}
|
@ -71,6 +71,7 @@ pub fn build(b: *std.Build) !void {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lib.addCSourceFiles(.{ .flags = flags.items, .files = &.{"bridge.cpp"} });
|
||||||
lib.addCSourceFiles(.{
|
lib.addCSourceFiles(.{
|
||||||
.dependency = upstream,
|
.dependency = upstream,
|
||||||
.flags = flags.items,
|
.flags = flags.items,
|
||||||
|
@ -0,0 +1,57 @@
|
|||||||
|
extern "c" fn hwy_supported_targets() i64;
|
||||||
|
|
||||||
|
pub const Targets = packed struct(i64) {
|
||||||
|
// x86_64
|
||||||
|
_reserved: u4 = 0,
|
||||||
|
avx3_spr: bool = false,
|
||||||
|
_reserved_5: u1 = 0,
|
||||||
|
avx3_zen4: bool = false,
|
||||||
|
avx3_dl: bool = false,
|
||||||
|
avx3: bool = false,
|
||||||
|
avx2: bool = false,
|
||||||
|
_reserved_10: u1 = 0,
|
||||||
|
sse4: bool = false,
|
||||||
|
ssse3: bool = false,
|
||||||
|
_reserved_13: u1 = 0, // SSE3 reserved
|
||||||
|
sse2: bool = false,
|
||||||
|
_reserved_15_23: u9 = 0,
|
||||||
|
|
||||||
|
// aarch64
|
||||||
|
sve2_128: bool = false,
|
||||||
|
sve_256: bool = false,
|
||||||
|
sve2: bool = false,
|
||||||
|
sve: bool = false,
|
||||||
|
neon: bool = false,
|
||||||
|
neon_without_aes: bool = false,
|
||||||
|
_reserved_30_36: u6 = 0,
|
||||||
|
|
||||||
|
// risc-v
|
||||||
|
rvv: bool = false,
|
||||||
|
_reserved_38_46: u9 = 0,
|
||||||
|
|
||||||
|
// IBM Power
|
||||||
|
ppc10: bool = false,
|
||||||
|
ppc9: bool = false,
|
||||||
|
ppc8: bool = false,
|
||||||
|
z15: bool = false,
|
||||||
|
z14: bool = false,
|
||||||
|
_reserved_52_57: u6 = 0,
|
||||||
|
|
||||||
|
// WebAssembly
|
||||||
|
wasm_emu256: bool = false,
|
||||||
|
wasm: bool = false,
|
||||||
|
_reserved_60_61: u2 = 0,
|
||||||
|
|
||||||
|
// Emulation
|
||||||
|
emu128: bool = false,
|
||||||
|
scalar: bool = false,
|
||||||
|
_reserved_63: u1 = 0,
|
||||||
|
};
|
||||||
|
|
||||||
|
pub fn supported_targets() Targets {
|
||||||
|
return @bitCast(hwy_supported_targets());
|
||||||
|
}
|
||||||
|
|
||||||
|
test {
|
||||||
|
_ = supported_targets();
|
||||||
|
}
|
@ -4,12 +4,6 @@ pub fn build(b: *std.Build) !void {
|
|||||||
const target = b.standardTargetOptions(.{});
|
const target = b.standardTargetOptions(.{});
|
||||||
const optimize = b.standardOptimizeOption(.{});
|
const optimize = b.standardOptimizeOption(.{});
|
||||||
|
|
||||||
const module = b.addModule("simdutf", .{
|
|
||||||
.root_source_file = .{ .path = "main.zig" },
|
|
||||||
.target = target,
|
|
||||||
.optimize = optimize,
|
|
||||||
});
|
|
||||||
|
|
||||||
const lib = b.addStaticLibrary(.{
|
const lib = b.addStaticLibrary(.{
|
||||||
.name = "simdutf",
|
.name = "simdutf",
|
||||||
.target = target,
|
.target = target,
|
||||||
@ -17,12 +11,10 @@ pub fn build(b: *std.Build) !void {
|
|||||||
});
|
});
|
||||||
lib.linkLibCpp();
|
lib.linkLibCpp();
|
||||||
lib.addIncludePath(.{ .path = "vendor" });
|
lib.addIncludePath(.{ .path = "vendor" });
|
||||||
module.addIncludePath(.{ .path = "vendor" });
|
|
||||||
|
|
||||||
if (target.result.isDarwin()) {
|
if (target.result.isDarwin()) {
|
||||||
const apple_sdk = @import("apple_sdk");
|
const apple_sdk = @import("apple_sdk");
|
||||||
try apple_sdk.addPaths(b, &lib.root_module);
|
try apple_sdk.addPaths(b, &lib.root_module);
|
||||||
try apple_sdk.addPaths(b, module);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var flags = std.ArrayList([]const u8).init(b.allocator);
|
var flags = std.ArrayList([]const u8).init(b.allocator);
|
||||||
@ -44,19 +36,19 @@ pub fn build(b: *std.Build) !void {
|
|||||||
|
|
||||||
b.installArtifact(lib);
|
b.installArtifact(lib);
|
||||||
|
|
||||||
{
|
// {
|
||||||
const test_exe = b.addTest(.{
|
// const test_exe = b.addTest(.{
|
||||||
.name = "test",
|
// .name = "test",
|
||||||
.root_source_file = .{ .path = "main.zig" },
|
// .root_source_file = .{ .path = "main.zig" },
|
||||||
.target = target,
|
// .target = target,
|
||||||
.optimize = optimize,
|
// .optimize = optimize,
|
||||||
});
|
// });
|
||||||
test_exe.linkLibrary(lib);
|
// test_exe.linkLibrary(lib);
|
||||||
|
//
|
||||||
var it = module.import_table.iterator();
|
// var it = module.import_table.iterator();
|
||||||
while (it.next()) |entry| test_exe.root_module.addImport(entry.key_ptr.*, entry.value_ptr.*);
|
// while (it.next()) |entry| test_exe.root_module.addImport(entry.key_ptr.*, entry.value_ptr.*);
|
||||||
const tests_run = b.addRunArtifact(test_exe);
|
// const tests_run = b.addRunArtifact(test_exe);
|
||||||
const test_step = b.step("test", "Run tests");
|
// const test_step = b.step("test", "Run tests");
|
||||||
test_step.dependOn(&tests_run.step);
|
// test_step.dependOn(&tests_run.step);
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
@ -6,12 +6,6 @@ pub fn build(b: *std.Build) !void {
|
|||||||
|
|
||||||
const upstream = b.dependency("utfcpp", .{});
|
const upstream = b.dependency("utfcpp", .{});
|
||||||
|
|
||||||
const module = b.addModule("utfcpp", .{
|
|
||||||
.root_source_file = .{ .path = "main.zig" },
|
|
||||||
.target = target,
|
|
||||||
.optimize = optimize,
|
|
||||||
});
|
|
||||||
|
|
||||||
const lib = b.addStaticLibrary(.{
|
const lib = b.addStaticLibrary(.{
|
||||||
.name = "utfcpp",
|
.name = "utfcpp",
|
||||||
.target = target,
|
.target = target,
|
||||||
@ -19,12 +13,10 @@ pub fn build(b: *std.Build) !void {
|
|||||||
});
|
});
|
||||||
lib.linkLibCpp();
|
lib.linkLibCpp();
|
||||||
lib.addIncludePath(upstream.path(""));
|
lib.addIncludePath(upstream.path(""));
|
||||||
module.addIncludePath(upstream.path(""));
|
|
||||||
|
|
||||||
if (target.result.isDarwin()) {
|
if (target.result.isDarwin()) {
|
||||||
const apple_sdk = @import("apple_sdk");
|
const apple_sdk = @import("apple_sdk");
|
||||||
try apple_sdk.addPaths(b, &lib.root_module);
|
try apple_sdk.addPaths(b, &lib.root_module);
|
||||||
try apple_sdk.addPaths(b, module);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
var flags = std.ArrayList([]const u8).init(b.allocator);
|
var flags = std.ArrayList([]const u8).init(b.allocator);
|
||||||
@ -44,19 +36,19 @@ pub fn build(b: *std.Build) !void {
|
|||||||
|
|
||||||
b.installArtifact(lib);
|
b.installArtifact(lib);
|
||||||
|
|
||||||
{
|
// {
|
||||||
const test_exe = b.addTest(.{
|
// const test_exe = b.addTest(.{
|
||||||
.name = "test",
|
// .name = "test",
|
||||||
.root_source_file = .{ .path = "main.zig" },
|
// .root_source_file = .{ .path = "main.zig" },
|
||||||
.target = target,
|
// .target = target,
|
||||||
.optimize = optimize,
|
// .optimize = optimize,
|
||||||
});
|
// });
|
||||||
test_exe.linkLibrary(lib);
|
// test_exe.linkLibrary(lib);
|
||||||
|
//
|
||||||
var it = module.import_table.iterator();
|
// var it = module.import_table.iterator();
|
||||||
while (it.next()) |entry| test_exe.root_module.addImport(entry.key_ptr.*, entry.value_ptr.*);
|
// while (it.next()) |entry| test_exe.root_module.addImport(entry.key_ptr.*, entry.value_ptr.*);
|
||||||
const tests_run = b.addRunArtifact(test_exe);
|
// const tests_run = b.addRunArtifact(test_exe);
|
||||||
const test_step = b.step("test", "Run tests");
|
// const test_step = b.step("test", "Run tests");
|
||||||
test_step.dependOn(&tests_run.step);
|
// test_step.dependOn(&tests_run.step);
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user