From cebecfe1971af1c5adeb852cb45d42d295a9b2b2 Mon Sep 17 00:00:00 2001 From: Robin Voetter Date: Fri, 3 Jul 2020 16:40:49 +0200 Subject: [PATCH] Restructure to allow for other binding generators in the future --- build.zig | 6 +++--- generator/index.zig | 6 ++++++ generator/{registry => vulkan}/c-parse.zig | 2 +- generator/{ => vulkan}/generator.zig | 9 ++------- generator/{registry => vulkan}/parse.zig | 2 +- generator/{ => vulkan}/registry.zig | 0 generator/{render/util.zig => vulkan/render-util.zig} | 2 +- generator/{ => vulkan}/render.zig | 4 ++-- 8 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 generator/index.zig rename generator/{registry => vulkan}/c-parse.zig (99%) rename generator/{ => vulkan}/generator.zig (97%) rename generator/{registry => vulkan}/parse.zig (99%) rename generator/{ => vulkan}/registry.zig (100%) rename generator/{render/util.zig => vulkan/render-util.zig} (99%) rename generator/{ => vulkan}/render.zig (99%) diff --git a/build.zig b/build.zig index fb3d3be..146cc82 100644 --- a/build.zig +++ b/build.zig @@ -1,5 +1,5 @@ const std = @import("std"); -const vkgen = @import("generator/generator.zig"); +const vkgen = @import("generator/index.zig"); const Builder = std.build.Builder; const FmtStep = std.build.FmtStep; @@ -12,14 +12,14 @@ pub fn generateVk(b: *Builder) []const u8 { const output_file = std.fs.cwd().createFile(output, .{}) catch unreachable; defer output_file.close(); - vkgen.generate(b.allocator, spec, output_file.writer()) catch unreachable; + vkgen.generateVk(b.allocator, spec, output_file.writer()) catch unreachable; return output; } pub fn build(b: *Builder) void { var test_step = b.step("test", "Run all the tests"); - test_step.dependOn(&b.addTest("generator/generator.zig").step); + test_step.dependOn(&b.addTest("generator/index.zig").step); const target = b.standardTargetOptions(.{}); const mode = b.standardReleaseOptions(); diff --git a/generator/index.zig b/generator/index.zig new file mode 100644 index 0000000..0bb1fb9 --- /dev/null +++ b/generator/index.zig @@ -0,0 +1,6 @@ +pub const generateVk = @import("vulkan/generator.zig").generate; + +test "main" { + _ = @import("xml.zig"); + _ = @import("c-parse.zig"); +} diff --git a/generator/registry/c-parse.zig b/generator/vulkan/c-parse.zig similarity index 99% rename from generator/registry/c-parse.zig rename to generator/vulkan/c-parse.zig index bc70e1d..7b6f692 100644 --- a/generator/registry/c-parse.zig +++ b/generator/vulkan/c-parse.zig @@ -1,5 +1,5 @@ const std = @import("std"); -const registry = @import("../registry.zig"); +const registry = @import("registry.zig"); const xml = @import("../xml.zig"); const mem = std.mem; const Allocator = mem.Allocator; diff --git a/generator/generator.zig b/generator/vulkan/generator.zig similarity index 97% rename from generator/generator.zig rename to generator/vulkan/generator.zig index b4bbdba..1198272 100644 --- a/generator/generator.zig +++ b/generator/vulkan/generator.zig @@ -1,8 +1,8 @@ const std = @import("std"); const reg = @import("registry.zig"); -const xml = @import("xml.zig"); +const xml = @import("../xml.zig"); const renderRegistry = @import("render.zig").render; -const parseXml = @import("registry/parse.zig").parseXml; +const parseXml = @import("parse.zig").parseXml; const Allocator = std.mem.Allocator; const FeatureLevel = reg.FeatureLevel; @@ -204,8 +204,3 @@ pub fn generate(allocator: *Allocator, spec_xml: []const u8, writer: var) !void try gen.resolveDeclarations(); try gen.render(writer); } - -test "main" { - _ = @import("xml.zig"); - _ = @import("registry/c-parse.zig"); -} diff --git a/generator/registry/parse.zig b/generator/vulkan/parse.zig similarity index 99% rename from generator/registry/parse.zig rename to generator/vulkan/parse.zig index ec4752d..02f4d42 100644 --- a/generator/registry/parse.zig +++ b/generator/vulkan/parse.zig @@ -1,5 +1,5 @@ const std = @import("std"); -const registry = @import("../registry.zig"); +const registry = @import("registry.zig"); const xml = @import("../xml.zig"); const cparse = @import("c-parse.zig"); const mem = std.mem; diff --git a/generator/registry.zig b/generator/vulkan/registry.zig similarity index 100% rename from generator/registry.zig rename to generator/vulkan/registry.zig diff --git a/generator/render/util.zig b/generator/vulkan/render-util.zig similarity index 99% rename from generator/render/util.zig rename to generator/vulkan/render-util.zig index 0b0d5f7..722516f 100644 --- a/generator/render/util.zig +++ b/generator/vulkan/render-util.zig @@ -1,5 +1,5 @@ const std = @import("std"); -const reg = @import("../registry.zig"); +const reg = @import("registry.zig"); const mem = std.mem; const Allocator = mem.Allocator; diff --git a/generator/render.zig b/generator/vulkan/render.zig similarity index 99% rename from generator/render.zig rename to generator/vulkan/render.zig index 93343db..9fe641a 100644 --- a/generator/render.zig +++ b/generator/vulkan/render.zig @@ -1,7 +1,7 @@ const std = @import("std"); const reg = @import("registry.zig"); -const util = @import("render/util.zig"); -const cparse = @import("registry/c-parse.zig"); +const util = @import("render-util.zig"); +const cparse = @import("c-parse.zig"); const mem = std.mem; const Allocator = mem.Allocator;