library: client modules end in -client, like protocols end in -protocol
display-client and input-client (files and module names), so a service, its wire contract, and its client never share a name: `display` the service, `display-protocol` the contract, `display-client` a program's view of it. The nine consumers' imports and their packages' declared lists follow (regenerated from the source scan); build-support's module_homes table carries the new names.
This commit is contained in:
@@ -63,8 +63,8 @@ const module_homes = [_]ModuleHome{
|
|||||||
.{ .name = "pci-class", .home = "device" },
|
.{ .name = "pci-class", .home = "device" },
|
||||||
.{ .name = "device-registry", .home = "device" },
|
.{ .name = "device-registry", .home = "device" },
|
||||||
// library/client — userspace service clients.
|
// library/client — userspace service clients.
|
||||||
.{ .name = "display", .home = "client" },
|
.{ .name = "display-client", .home = "client" },
|
||||||
.{ .name = "input", .home = "client" },
|
.{ .name = "input-client", .home = "client" },
|
||||||
// library/protocol — the wire protocols.
|
// library/protocol — the wire protocols.
|
||||||
.{ .name = "vfs-protocol", .home = "protocol" },
|
.{ .name = "vfs-protocol", .home = "protocol" },
|
||||||
.{ .name = "input-protocol", .home = "protocol" },
|
.{ .name = "input-protocol", .home = "protocol" },
|
||||||
|
|||||||
@@ -1,5 +1,8 @@
|
|||||||
//! The "client" library domain (library/client): userspace-service clients —
|
//! The "client" library domain (library/client): userspace-service clients —
|
||||||
//! they talk to services over IPC, not to the kernel.
|
//! they talk to services over IPC, not to the kernel. Client modules end in
|
||||||
|
//! `-client` the way wire protocols end in `-protocol`, so a service, its
|
||||||
|
//! protocol, and its client never share a name (`display` the service,
|
||||||
|
//! `display-protocol` the wire contract, `display-client` a program's view).
|
||||||
|
|
||||||
const std = @import("std");
|
const std = @import("std");
|
||||||
|
|
||||||
@@ -10,16 +13,16 @@ pub fn build(b: *std.Build) void {
|
|||||||
const ipc = kernel.module("ipc");
|
const ipc = kernel.module("ipc");
|
||||||
const time = kernel.module("time");
|
const time = kernel.module("time");
|
||||||
|
|
||||||
_ = b.addModule("display", .{
|
_ = b.addModule("display-client", .{
|
||||||
.root_source_file = b.path("display/display.zig"),
|
.root_source_file = b.path("display/display-client.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
.{ .name = "ipc", .module = ipc },
|
.{ .name = "ipc", .module = ipc },
|
||||||
.{ .name = "time", .module = time },
|
.{ .name = "time", .module = time },
|
||||||
.{ .name = "display-protocol", .module = protocol.module("display-protocol") },
|
.{ .name = "display-protocol", .module = protocol.module("display-protocol") },
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
_ = b.addModule("input", .{
|
_ = b.addModule("input-client", .{
|
||||||
.root_source_file = b.path("input/input.zig"),
|
.root_source_file = b.path("input/input-client.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
.{ .name = "ipc", .module = ipc },
|
.{ .name = "ipc", .module = ipc },
|
||||||
.{ .name = "time", .module = time },
|
.{ .name = "time", .module = time },
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "ps2-keyboard",
|
.name = "ps2-keyboard",
|
||||||
.root_source_file = b.path("keyboard.zig"),
|
.root_source_file = b.path("keyboard.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"acpi-ids", "driver", "input", "input-protocol", "ipc", "logging", "memory",
|
"acpi-ids", "driver", "input-client", "input-protocol", "ipc", "logging", "memory",
|
||||||
"process", "time", "xkeyboard-config",
|
"process", "time", "xkeyboard-config",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
@@ -27,7 +27,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "ps2-mouse",
|
.name = "ps2-mouse",
|
||||||
.root_source_file = b.path("mouse.zig"),
|
.root_source_file = b.path("mouse.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"acpi-ids", "driver", "input", "input-protocol", "ipc", "logging", "memory",
|
"acpi-ids", "driver", "input-client", "input-protocol", "ipc", "logging", "memory",
|
||||||
"process", "time",
|
"process", "time",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ const device = @import("driver");
|
|||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const memory = @import("memory");
|
const memory = @import("memory");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const xkb = @import("xkeyboard-config");
|
const xkb = @import("xkeyboard-config");
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ const device = @import("driver");
|
|||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const memory = @import("memory");
|
const memory = @import("memory");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const ps2 = @import("ps2-library.zig");
|
const ps2 = @import("ps2-library.zig");
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "usb-hid-keyboard",
|
.name = "usb-hid-keyboard",
|
||||||
.root_source_file = b.path("keyboard.zig"),
|
.root_source_file = b.path("keyboard.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"driver", "input", "input-protocol", "ipc", "logging", "process", "service", "usb",
|
"driver", "input-client", "input-protocol", "ipc", "logging", "process", "service",
|
||||||
"usb-abi", "xkeyboard-config",
|
"usb", "usb-abi", "xkeyboard-config",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
b.installArtifact(usb_hid_keyboard_exe);
|
b.installArtifact(usb_hid_keyboard_exe);
|
||||||
@@ -20,8 +20,8 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "usb-hid-mouse",
|
.name = "usb-hid-mouse",
|
||||||
.root_source_file = b.path("mouse.zig"),
|
.root_source_file = b.path("mouse.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"driver", "input", "input-protocol", "ipc", "logging", "process", "service", "usb",
|
"driver", "input-client", "input-protocol", "ipc", "logging", "process", "service",
|
||||||
"usb-abi",
|
"usb", "usb-abi",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
b.installArtifact(usb_hid_mouse_exe);
|
b.installArtifact(usb_hid_mouse_exe);
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ const std = @import("std");
|
|||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const service = @import("service");
|
const service = @import("service");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const device_manager = @import("driver");
|
const device_manager = @import("driver");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const usb = @import("usb");
|
const usb = @import("usb");
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ const std = @import("std");
|
|||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const service = @import("service");
|
const service = @import("service");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const device_manager = @import("driver");
|
const device_manager = @import("driver");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const usb = @import("usb");
|
const usb = @import("usb");
|
||||||
|
|||||||
@@ -10,8 +10,9 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "usb-xhci-bus",
|
.name = "usb-xhci-bus",
|
||||||
.root_source_file = b.path("usb-xhci-bus.zig"),
|
.root_source_file = b.path("usb-xhci-bus.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"device-manager-protocol", "driver", "input", "ipc", "logging", "memory", "mmio",
|
"device-manager-protocol", "driver", "input-client", "ipc", "logging", "memory",
|
||||||
"pci", "process", "service", "time", "usb-abi", "usb-ids", "usb-transfer-protocol",
|
"mmio", "pci", "process", "service", "time", "usb-abi", "usb-ids",
|
||||||
|
"usb-transfer-protocol",
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
b.installArtifact(exe);
|
b.installArtifact(exe);
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ const ipc = @import("ipc");
|
|||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const service = @import("service");
|
const service = @import("service");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const device_manager = @import("driver");
|
const device_manager = @import("driver");
|
||||||
const memory = @import("memory");
|
const memory = @import("memory");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
const exe = build_support.userBinary(b, .{
|
const exe = build_support.userBinary(b, .{
|
||||||
.name = "display-demo",
|
.name = "display-demo",
|
||||||
.root_source_file = b.path("display-demo.zig"),
|
.root_source_file = b.path("display-demo.zig"),
|
||||||
.imports = &.{ "display", "logging", "time" },
|
.imports = &.{ "display-client", "logging", "time" },
|
||||||
});
|
});
|
||||||
b.installArtifact(exe);
|
b.installArtifact(exe);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
//! is deliberately independent of the mouse.
|
//! is deliberately independent of the mouse.
|
||||||
|
|
||||||
|
|
||||||
const display = @import("display");
|
const display = @import("display-client");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
pub fn main() void {
|
pub fn main() void {
|
||||||
|
|||||||
@@ -10,8 +10,8 @@ pub fn build(b: *std.Build) void {
|
|||||||
.name = "display",
|
.name = "display",
|
||||||
.root_source_file = b.path("display.zig"),
|
.root_source_file = b.path("display.zig"),
|
||||||
.imports = &.{
|
.imports = &.{
|
||||||
"display", "display-protocol", "driver", "input", "ipc", "logging", "memory",
|
"display-client", "display-protocol", "driver", "input-client", "ipc", "logging",
|
||||||
"scanout-protocol", "service", "thread", "time",
|
"memory", "scanout-protocol", "service", "thread", "time",
|
||||||
},
|
},
|
||||||
.threaded = true, // real atomics/TLS (docs/threading.md)
|
.threaded = true, // real atomics/TLS (docs/threading.md)
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -17,11 +17,11 @@
|
|||||||
|
|
||||||
const std = @import("std");
|
const std = @import("std");
|
||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const Thread = @import("thread").Thread;
|
const Thread = @import("thread").Thread;
|
||||||
const service = @import("service");
|
const service = @import("service");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const display = @import("display");
|
const display = @import("display-client");
|
||||||
const memory = @import("memory");
|
const memory = @import("memory");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const compositor = @import("compositor.zig");
|
const compositor = @import("compositor.zig");
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
const exe = build_support.userBinary(b, .{
|
const exe = build_support.userBinary(b, .{
|
||||||
.name = "input",
|
.name = "input",
|
||||||
.root_source_file = b.path("input.zig"),
|
.root_source_file = b.path("input.zig"),
|
||||||
.imports = &.{ "input", "input-protocol", "ipc", "logging", "process", "service" },
|
.imports = &.{ "input-client", "input-protocol", "ipc", "logging", "process", "service" },
|
||||||
});
|
});
|
||||||
b.installArtifact(exe);
|
b.installArtifact(exe);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ const std = @import("std");
|
|||||||
const ipc = @import("ipc");
|
const ipc = @import("ipc");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const service = @import("service");
|
const service = @import("service");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
const input_protocol = @import("input-protocol");
|
const input_protocol = @import("input-protocol");
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
const exe = build_support.userBinary(b, .{
|
const exe = build_support.userBinary(b, .{
|
||||||
.name = "input-source",
|
.name = "input-source",
|
||||||
.root_source_file = b.path("input-source.zig"),
|
.root_source_file = b.path("input-source.zig"),
|
||||||
.imports = &.{ "input", "logging", "process", "time" },
|
.imports = &.{ "input-client", "logging", "process", "time" },
|
||||||
});
|
});
|
||||||
b.installArtifact(exe);
|
b.installArtifact(exe);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
//! decoded hardware is a follow-up (see docs/input.md).
|
//! decoded hardware is a follow-up (see docs/input.md).
|
||||||
|
|
||||||
const std = @import("std");
|
const std = @import("std");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const process = @import("process");
|
const process = @import("process");
|
||||||
const time = @import("time");
|
const time = @import("time");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ pub fn build(b: *std.Build) void {
|
|||||||
const exe = build_support.userBinary(b, .{
|
const exe = build_support.userBinary(b, .{
|
||||||
.name = "input-test",
|
.name = "input-test",
|
||||||
.root_source_file = b.path("input-test.zig"),
|
.root_source_file = b.path("input-test.zig"),
|
||||||
.imports = &.{ "input", "logging" },
|
.imports = &.{ "input-client", "logging" },
|
||||||
});
|
});
|
||||||
b.installArtifact(exe);
|
b.installArtifact(exe);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@
|
|||||||
//! device classes to one subscription — source -> service -> subscriber, per device.
|
//! device classes to one subscription — source -> service -> subscriber, per device.
|
||||||
|
|
||||||
const std = @import("std");
|
const std = @import("std");
|
||||||
const input = @import("input");
|
const input = @import("input-client");
|
||||||
const logging = @import("logging");
|
const logging = @import("logging");
|
||||||
|
|
||||||
fn writeLine(comptime fmt: []const u8, arguments: anytype) void {
|
fn writeLine(comptime fmt: []const u8, arguments: anytype) void {
|
||||||
|
|||||||
Reference in New Issue
Block a user