From e195e67b889c75c4850673a612272290ec148896 Mon Sep 17 00:00:00 2001 From: 1000copy <1000copy@gmail.com> Date: Mon, 15 Jan 2024 18:58:58 +0800 Subject: [PATCH 1/2] create examples of zig build explained --- .../part1/1.1/build.zig | 28 + .../part1/1.1/src/main.zig | 10 + .../part1/1.2/build.zig | 5 + .../part1/1.3/build.zig | 14 + .../part1/1.3/src/main.zig | 10 + .../part1/1.4/build.zig | 10 + .../part1/1.4/src/main.zig | 10 + .../part1/1.6/build.zig | 13 + .../part1/1.6/src/main.zig | 10 + .../part1/1.7/build.zig | 15 + .../part1/1.7/src/main.zig | 10 + .../part1/1.8/build.zig | 18 + .../part1/1.8/src/main.zig | 15 + .../part2/2.1/buffer.c | 28 + .../part2/2.1/build.zig | 24 + .../part2/2.1/main.c | 22 + .../part2/2.10/build.zig | 24 + .../part2/2.10/main.m | 15 + .../part2/2.11/buffer.c | 28 + .../part2/2.11/build.zig | 25 + .../part2/2.11/main.zig | 19 + .../part2/2.2/build.zig | 17 + .../part2/2.2/download.c | 30 + .../part2/2.3/bass-player.c | 26 + .../part2/2.3/bass/linux/bass.h | 1149 +++++++++++++++++ .../part2/2.3/bass/linux/x64/libbass.dylib | Bin 0 -> 873584 bytes .../part2/2.3/build.zig | 22 + .../part2/2.4/build.zig | 21 + .../part2/2.4/inc1/api.h | 1 + .../part2/2.4/inc2/api.h | 1 + .../part2/2.4/multi-main.c | 10 + .../part2/2.4/multi.c | 10 + .../part2/2.5/buffer.cc | 29 + .../part2/2.5/build.zig | 23 + .../part2/2.5/main.c | 22 + .../part2/2.6/buffer.cc | 29 + .../part2/2.6/build.zig | 23 + .../part2/2.6/main.c | 22 + .../part2/2.7/build.zig | 30 + .../part2/2.7/print-main.c | 16 + .../part2/2.7/print-unix.c | 7 + .../part2/2.7/print-windows.c | 10 + .../part2/2.8/buffer.cc | 29 + .../part2/2.8/build.zig | 40 + .../part2/2.8/main.c | 22 + .../part2/2.9/buffer.cc | 29 + .../part2/2.9/build.zig | 43 + .../part2/2.9/main.c | 22 + .../part3/3.1/foo.ihex | 0 .../part3/3.1/ihex.zig | 3 + .../part3/3.1/main.zig | 9 + .../part3/3.1/tools.zig | 3 + .../part3/3.2/build.zig | 22 + .../part3/3.2/main.zig | 5 + .../part3/3.3/build.zig | 16 + .../part3/3.3/main.zig | 5 + .../part3/3.4/build.zig | 16 + .../part3/3.4/main.zig | 5 + .../part3/3.5/build.zig | 18 + .../part3/3.6/build.zig | 15 + .../part3/3.6/main.zig | 10 + .../part3/3.7/build.zig | 87 ++ .../2024-01-15-zig-build-explained/readme.md | 7 + 63 files changed, 2257 insertions(+) create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.1/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.1/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.2/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.3/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.3/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.4/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.4/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.6/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.6/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.7/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.7/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.8/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part1/1.8/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.1/buffer.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.1/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.1/main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.10/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.10/main.m create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.11/buffer.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.11/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.11/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.2/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.2/download.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.3/bass-player.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/bass.h create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/x64/libbass.dylib create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.3/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.4/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.4/inc1/api.h create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.4/inc2/api.h create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.4/multi-main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.4/multi.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.5/buffer.cc create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.5/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.5/main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.6/buffer.cc create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.6/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.6/main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.7/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.7/print-main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.7/print-unix.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.7/print-windows.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.8/buffer.cc create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.8/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.8/main.c create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.9/buffer.cc create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.9/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part2/2.9/main.c create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.1/foo.ihex create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.1/ihex.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.1/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.1/tools.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.2/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.2/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.3/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.3/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.4/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.4/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.5/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.6/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.6/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.7/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/readme.md diff --git a/examples/2024-01-15-zig-build-explained/part1/1.1/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.1/build.zig new file mode 100644 index 0000000..6e97e3e --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.1/build.zig @@ -0,0 +1,28 @@ + const std = @import("std"); + pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); + const unit_tests = b.addTest(.{ + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + + const run_unit_tests = b.addRunArtifact(unit_tests); + const test_step = b.step("test", "Run unit tests"); + test_step.dependOn(&run_unit_tests.step); + } \ No newline at end of file diff --git a/examples/2024-01-15-zig-build-explained/part1/1.1/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.1/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.1/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.2/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.2/build.zig new file mode 100644 index 0000000..24ff89d --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.2/build.zig @@ -0,0 +1,5 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const named_step = b.step("step-name", "This is what is shown in help"); + _ = named_step; +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.3/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.3/build.zig new file mode 100644 index 0000000..a581773 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.3/build.zig @@ -0,0 +1,14 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + + const compile_step = b.step("compile", "Compiles src/main.zig"); + compile_step.dependOn(&exe.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.3/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.3/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.3/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.4/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.4/build.zig new file mode 100644 index 0000000..53064dc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.4/build.zig @@ -0,0 +1,10 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const exe = b.addExecutable(.{ + .name = "fresh", + .root_source_file = .{ .path = "src/main.zig" }, + .optimize = .ReleaseSafe, + }); + const compile_step = b.step("compile", "Compiles src/main.zig"); + compile_step.dependOn(&exe.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.4/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.4/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.4/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.6/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.6/build.zig new file mode 100644 index 0000000..f8203a1 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.6/build.zig @@ -0,0 +1,13 @@ +const std = @import("std"); + +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "fresh", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + b.installArtifact(exe); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.6/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.6/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.6/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.7/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.7/build.zig new file mode 100644 index 0000000..3321812 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.7/build.zig @@ -0,0 +1,15 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "fresh", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.7/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.7/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.7/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.8/build.zig b/examples/2024-01-15-zig-build-explained/part1/1.8/build.zig new file mode 100644 index 0000000..e8343e8 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.8/build.zig @@ -0,0 +1,18 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "fresh", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/1.8/src/main.zig b/examples/2024-01-15-zig-build-explained/part1/1.8/src/main.zig new file mode 100644 index 0000000..29f9f38 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/1.8/src/main.zig @@ -0,0 +1,15 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + std.debug.print("args from builds:", .{}); + for (std.os.argv) |arg| { + std.debug.print("{s},", .{arg}); + } + std.debug.print("\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.1/buffer.c b/examples/2024-01-15-zig-build-explained/part2/2.1/buffer.c new file mode 100644 index 0000000..5dce924 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.1/buffer.c @@ -0,0 +1,28 @@ +#include +#include + +void * buffer_create(size_t len) +{ + return malloc(len); +} + +void buffer_destroy(void * ptr) +{ + free(ptr); +} + +void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + memcpy( + (char*)buf + offset, + data, + len); +} + +void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + memcpy( + data, + (char*)buf + offset, + len); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.1/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.1/build.zig new file mode 100644 index 0000000..b10dbbc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.1/build.zig @@ -0,0 +1,24 @@ +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + // 这块调试了很久。最后的结论是根本不要写 + // .root_source_file = .{ .path = undefined }, + .target = target, + .optimize = optimize, + }); + // 这块调试了很久。API变了不会写,着了很久的文档和看了很久的代码 + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("main.c"), .flags = &.{} }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("buffer.c"), .flags = &.{} }); + //exe.linkLibC(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); // + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.1/main.c b/examples/2024-01-15-zig-build-explained/part2/2.1/main.c new file mode 100644 index 0000000..59828bc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.1/main.c @@ -0,0 +1,22 @@ +#include + +void * buffer_create(size_t len); +void buffer_destroy(void * ptr); +void buffer_write(void * buf, size_t offset, void * data, size_t len); +void buffer_read(void * buf, size_t offset, void * data, size_t len); + +int main() +{ + void * buf = buffer_create(8); + buffer_write(buf, 0, "World", 6); + + { + char str[8]; + buffer_read(buf, 0, str, 6); + printf("Hello, %s!\n", str); + } + + buffer_destroy(buf); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.10/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.10/build.zig new file mode 100644 index 0000000..858fdd6 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.10/build.zig @@ -0,0 +1,24 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ + .file = std.build.LazyPath.relative("main.m"), + .flags = &.{}, + }); + exe.linkFramework("Foundation"); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.10/main.m b/examples/2024-01-15-zig-build-explained/part2/2.10/main.m new file mode 100644 index 0000000..bbe17af --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.10/main.m @@ -0,0 +1,15 @@ +#import "Foundation/Foundation.h" + +@interface SampleClass : NSObject +- (void)sampleMethod; +@end +@implementation SampleClass +- (void)sampleMethod { + NSLog(@"Hello World in Objective-C!\n"); +} +@end +int main() { + SampleClass *sampleClass = [[SampleClass alloc]init]; + [sampleClass sampleMethod]; + return 0; +} \ No newline at end of file diff --git a/examples/2024-01-15-zig-build-explained/part2/2.11/buffer.c b/examples/2024-01-15-zig-build-explained/part2/2.11/buffer.c new file mode 100644 index 0000000..5dce924 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.11/buffer.c @@ -0,0 +1,28 @@ +#include +#include + +void * buffer_create(size_t len) +{ + return malloc(len); +} + +void buffer_destroy(void * ptr) +{ + free(ptr); +} + +void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + memcpy( + (char*)buf + offset, + data, + len); +} + +void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + memcpy( + data, + (char*)buf + offset, + len); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.11/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.11/build.zig new file mode 100644 index 0000000..d0fab38 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.11/build.zig @@ -0,0 +1,25 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ + .file = std.build.LazyPath.relative("buffer.c"), + .flags = &.{}, + }); + exe.linkLibC(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.11/main.zig b/examples/2024-01-15-zig-build-explained/part2/2.11/main.zig new file mode 100644 index 0000000..d51d3ac --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.11/main.zig @@ -0,0 +1,19 @@ +const std = @import("std"); + +pub extern fn buffer_create(len: usize) ?*anyopaque; +pub extern fn buffer_destroy(ptr: ?*anyopaque) void; +pub extern fn buffer_write(buf: ?*anyopaque, offset: usize, data: ?*const anyopaque, len: usize) void; +pub extern fn buffer_read(buf: ?*anyopaque, offset: usize, data: ?*anyopaque, len: usize) void; + +pub fn main() void { + const buf = buffer_create(8); + defer buffer_destroy(buf); + + buffer_write(buf, 0, "World", 6); + + { + var str: [8]u8 = undefined; + buffer_read(buf, 0, &str, 6); + std.log.info("Hello, {s}!", .{str[0..6]}); + } +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.2/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.2/build.zig new file mode 100644 index 0000000..b3cca51 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.2/build.zig @@ -0,0 +1,17 @@ +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "downloader", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("download.c"), .flags = &.{} }); + exe.linkSystemLibrary("curl"); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.2/download.c b/examples/2024-01-15-zig-build-explained/part2/2.2/download.c new file mode 100644 index 0000000..af994d2 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.2/download.c @@ -0,0 +1,30 @@ +#include +#include + +static size_t writeData(void *ptr, size_t size, size_t nmemb, FILE *stream) { + size_t written; + written = fwrite(ptr, size, nmemb, stream); + return written; +} + +int main(int argc, char ** argv) +{ + if(argc != 2) + return 1; + + char const * url = argv[1]; + CURL * curl = curl_easy_init(); + if (curl == NULL) + return 1; + + curl_easy_setopt(curl, CURLOPT_URL, url); + curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, writeData); + curl_easy_setopt(curl, CURLOPT_WRITEDATA, stdout); + CURLcode res = curl_easy_perform(curl); + curl_easy_cleanup(curl); + + if(res != CURLE_OK) + return 1; + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.3/bass-player.c b/examples/2024-01-15-zig-build-explained/part2/2.3/bass-player.c new file mode 100644 index 0000000..5957fcb --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.3/bass-player.c @@ -0,0 +1,26 @@ +#include +#include +#include +#include + +int main() +{ + if (BASS_Init(-1, 44100, 0, NULL, NULL) == 0) { + return 1; + } + + // Track by Incompetech: + // "Island Meet and Greet" Kevin MacLeod (incompetech.com) + // Licensed under Creative Commons: By Attribution 4.0 License + // http://creativecommons.org/licenses/by/4.0/ + int chan = BASS_StreamCreateURL("https://mq32.de/public/island-meet-and-greet.mp3", 0, BASS_STREAM_BLOCK | BASS_STREAM_AUTOFREE, NULL, NULL); + + BASS_ChannelPlay(chan, FALSE); + + printf("Press ENTER to stop!\n"); + getchar(); + + BASS_Free(); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/bass.h b/examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/bass.h new file mode 100644 index 0000000..1e3a86f --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/bass.h @@ -0,0 +1,1149 @@ +/* + BASS 2.4 C/C++ header file + Copyright (c) 1999-2022 Un4seen Developments Ltd. + + See the BASS.CHM file for more detailed documentation +*/ + +#ifndef BASS_H +#define BASS_H + +#ifdef _WIN32 +#ifdef WINAPI_FAMILY +#include +#endif +#include +typedef unsigned __int64 QWORD; +#else +#include +#define WINAPI +#define CALLBACK +typedef uint8_t BYTE; +typedef uint16_t WORD; +typedef uint32_t DWORD; +typedef uint64_t QWORD; +#ifdef __OBJC__ +typedef int BOOL32; +#define BOOL BOOL32 // override objc's BOOL +#else +typedef int BOOL; +#endif +#ifndef TRUE +#define TRUE 1 +#define FALSE 0 +#endif +#define LOBYTE(a) (BYTE)(a) +#define HIBYTE(a) (BYTE)((a)>>8) +#define LOWORD(a) (WORD)(a) +#define HIWORD(a) (WORD)((a)>>16) +#define MAKEWORD(a,b) (WORD)(((a)&0xff)|((b)<<8)) +#define MAKELONG(a,b) (DWORD)(((a)&0xffff)|((b)<<16)) +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +#define BASSVERSION 0x204 // API version +#define BASSVERSIONTEXT "2.4" + +#ifndef BASSDEF +#define BASSDEF(f) WINAPI f +#else +#define NOBASSOVERLOADS +#endif + +typedef DWORD HMUSIC; // MOD music handle +typedef DWORD HSAMPLE; // sample handle +typedef DWORD HCHANNEL; // sample playback handle +typedef DWORD HSTREAM; // sample stream handle +typedef DWORD HRECORD; // recording handle +typedef DWORD HSYNC; // synchronizer handle +typedef DWORD HDSP; // DSP handle +typedef DWORD HFX; // effect handle +typedef DWORD HPLUGIN; // plugin handle + +// Error codes returned by BASS_ErrorGetCode +#define BASS_OK 0 // all is OK +#define BASS_ERROR_MEM 1 // memory error +#define BASS_ERROR_FILEOPEN 2 // can't open the file +#define BASS_ERROR_DRIVER 3 // can't find a free/valid driver +#define BASS_ERROR_BUFLOST 4 // the sample buffer was lost +#define BASS_ERROR_HANDLE 5 // invalid handle +#define BASS_ERROR_FORMAT 6 // unsupported sample format +#define BASS_ERROR_POSITION 7 // invalid position +#define BASS_ERROR_INIT 8 // BASS_Init has not been successfully called +#define BASS_ERROR_START 9 // BASS_Start has not been successfully called +#define BASS_ERROR_SSL 10 // SSL/HTTPS support isn't available +#define BASS_ERROR_REINIT 11 // device needs to be reinitialized +#define BASS_ERROR_ALREADY 14 // already initialized/paused/whatever +#define BASS_ERROR_NOTAUDIO 17 // file does not contain audio +#define BASS_ERROR_NOCHAN 18 // can't get a free channel +#define BASS_ERROR_ILLTYPE 19 // an illegal type was specified +#define BASS_ERROR_ILLPARAM 20 // an illegal parameter was specified +#define BASS_ERROR_NO3D 21 // no 3D support +#define BASS_ERROR_NOEAX 22 // no EAX support +#define BASS_ERROR_DEVICE 23 // illegal device number +#define BASS_ERROR_NOPLAY 24 // not playing +#define BASS_ERROR_FREQ 25 // illegal sample rate +#define BASS_ERROR_NOTFILE 27 // the stream is not a file stream +#define BASS_ERROR_NOHW 29 // no hardware voices available +#define BASS_ERROR_EMPTY 31 // the file has no sample data +#define BASS_ERROR_NONET 32 // no internet connection could be opened +#define BASS_ERROR_CREATE 33 // couldn't create the file +#define BASS_ERROR_NOFX 34 // effects are not available +#define BASS_ERROR_NOTAVAIL 37 // requested data/action is not available +#define BASS_ERROR_DECODE 38 // the channel is/isn't a "decoding channel" +#define BASS_ERROR_DX 39 // a sufficient DirectX version is not installed +#define BASS_ERROR_TIMEOUT 40 // connection timedout +#define BASS_ERROR_FILEFORM 41 // unsupported file format +#define BASS_ERROR_SPEAKER 42 // unavailable speaker +#define BASS_ERROR_VERSION 43 // invalid BASS version (used by add-ons) +#define BASS_ERROR_CODEC 44 // codec is not available/supported +#define BASS_ERROR_ENDED 45 // the channel/file has ended +#define BASS_ERROR_BUSY 46 // the device is busy +#define BASS_ERROR_UNSTREAMABLE 47 // unstreamable file +#define BASS_ERROR_PROTOCOL 48 // unsupported protocol +#define BASS_ERROR_DENIED 49 // access denied +#define BASS_ERROR_UNKNOWN -1 // some other mystery problem + +// BASS_SetConfig options +#define BASS_CONFIG_BUFFER 0 +#define BASS_CONFIG_UPDATEPERIOD 1 +#define BASS_CONFIG_GVOL_SAMPLE 4 +#define BASS_CONFIG_GVOL_STREAM 5 +#define BASS_CONFIG_GVOL_MUSIC 6 +#define BASS_CONFIG_CURVE_VOL 7 +#define BASS_CONFIG_CURVE_PAN 8 +#define BASS_CONFIG_FLOATDSP 9 +#define BASS_CONFIG_3DALGORITHM 10 +#define BASS_CONFIG_NET_TIMEOUT 11 +#define BASS_CONFIG_NET_BUFFER 12 +#define BASS_CONFIG_PAUSE_NOPLAY 13 +#define BASS_CONFIG_NET_PREBUF 15 +#define BASS_CONFIG_NET_PASSIVE 18 +#define BASS_CONFIG_REC_BUFFER 19 +#define BASS_CONFIG_NET_PLAYLIST 21 +#define BASS_CONFIG_MUSIC_VIRTUAL 22 +#define BASS_CONFIG_VERIFY 23 +#define BASS_CONFIG_UPDATETHREADS 24 +#define BASS_CONFIG_DEV_BUFFER 27 +#define BASS_CONFIG_REC_LOOPBACK 28 +#define BASS_CONFIG_VISTA_TRUEPOS 30 +#define BASS_CONFIG_IOS_SESSION 34 +#define BASS_CONFIG_IOS_MIXAUDIO 34 +#define BASS_CONFIG_DEV_DEFAULT 36 +#define BASS_CONFIG_NET_READTIMEOUT 37 +#define BASS_CONFIG_VISTA_SPEAKERS 38 +#define BASS_CONFIG_IOS_SPEAKER 39 +#define BASS_CONFIG_MF_DISABLE 40 +#define BASS_CONFIG_HANDLES 41 +#define BASS_CONFIG_UNICODE 42 +#define BASS_CONFIG_SRC 43 +#define BASS_CONFIG_SRC_SAMPLE 44 +#define BASS_CONFIG_ASYNCFILE_BUFFER 45 +#define BASS_CONFIG_OGG_PRESCAN 47 +#define BASS_CONFIG_MF_VIDEO 48 +#define BASS_CONFIG_AIRPLAY 49 +#define BASS_CONFIG_DEV_NONSTOP 50 +#define BASS_CONFIG_IOS_NOCATEGORY 51 +#define BASS_CONFIG_VERIFY_NET 52 +#define BASS_CONFIG_DEV_PERIOD 53 +#define BASS_CONFIG_FLOAT 54 +#define BASS_CONFIG_NET_SEEK 56 +#define BASS_CONFIG_AM_DISABLE 58 +#define BASS_CONFIG_NET_PLAYLIST_DEPTH 59 +#define BASS_CONFIG_NET_PREBUF_WAIT 60 +#define BASS_CONFIG_ANDROID_SESSIONID 62 +#define BASS_CONFIG_WASAPI_PERSIST 65 +#define BASS_CONFIG_REC_WASAPI 66 +#define BASS_CONFIG_ANDROID_AAUDIO 67 +#define BASS_CONFIG_SAMPLE_ONEHANDLE 69 +#define BASS_CONFIG_NET_META 71 +#define BASS_CONFIG_NET_RESTRATE 72 +#define BASS_CONFIG_REC_DEFAULT 73 +#define BASS_CONFIG_NORAMP 74 + +// BASS_SetConfigPtr options +#define BASS_CONFIG_NET_AGENT 16 +#define BASS_CONFIG_NET_PROXY 17 +#define BASS_CONFIG_IOS_NOTIFY 46 +#define BASS_CONFIG_ANDROID_JAVAVM 63 +#define BASS_CONFIG_LIBSSL 64 +#define BASS_CONFIG_FILENAME 75 + +#define BASS_CONFIG_THREAD 0x40000000 // flag: thread-specific setting + +// BASS_CONFIG_IOS_SESSION flags +#define BASS_IOS_SESSION_MIX 1 +#define BASS_IOS_SESSION_DUCK 2 +#define BASS_IOS_SESSION_AMBIENT 4 +#define BASS_IOS_SESSION_SPEAKER 8 +#define BASS_IOS_SESSION_DISABLE 16 +#define BASS_IOS_SESSION_DEACTIVATE 32 +#define BASS_IOS_SESSION_AIRPLAY 64 +#define BASS_IOS_SESSION_BTHFP 128 +#define BASS_IOS_SESSION_BTA2DP 0x100 + +// BASS_Init flags +#define BASS_DEVICE_8BITS 1 // unused +#define BASS_DEVICE_MONO 2 // mono +#define BASS_DEVICE_3D 4 // unused +#define BASS_DEVICE_16BITS 8 // limit output to 16-bit +#define BASS_DEVICE_REINIT 128 // reinitialize +#define BASS_DEVICE_LATENCY 0x100 // unused +#define BASS_DEVICE_CPSPEAKERS 0x400 // unused +#define BASS_DEVICE_SPEAKERS 0x800 // force enabling of speaker assignment +#define BASS_DEVICE_NOSPEAKER 0x1000 // ignore speaker arrangement +#define BASS_DEVICE_DMIX 0x2000 // use ALSA "dmix" plugin +#define BASS_DEVICE_FREQ 0x4000 // set device sample rate +#define BASS_DEVICE_STEREO 0x8000 // limit output to stereo +#define BASS_DEVICE_HOG 0x10000 // hog/exclusive mode +#define BASS_DEVICE_AUDIOTRACK 0x20000 // use AudioTrack output +#define BASS_DEVICE_DSOUND 0x40000 // use DirectSound output +#define BASS_DEVICE_SOFTWARE 0x80000 // disable hardware/fastpath output + +// DirectSound interfaces (for use with BASS_GetDSoundObject) +#define BASS_OBJECT_DS 1 // IDirectSound +#define BASS_OBJECT_DS3DL 2 // IDirectSound3DListener + +// Device info structure +typedef struct { +#if defined(_WIN32_WCE) || (defined(WINAPI_FAMILY) && WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP) + const wchar_t *name; // description + const wchar_t *driver; // driver +#else + const char *name; // description + const char *driver; // driver +#endif + DWORD flags; +} BASS_DEVICEINFO; + +// BASS_DEVICEINFO flags +#define BASS_DEVICE_ENABLED 1 +#define BASS_DEVICE_DEFAULT 2 +#define BASS_DEVICE_INIT 4 +#define BASS_DEVICE_LOOPBACK 8 +#define BASS_DEVICE_DEFAULTCOM 128 + +#define BASS_DEVICE_TYPE_MASK 0xff000000 +#define BASS_DEVICE_TYPE_NETWORK 0x01000000 +#define BASS_DEVICE_TYPE_SPEAKERS 0x02000000 +#define BASS_DEVICE_TYPE_LINE 0x03000000 +#define BASS_DEVICE_TYPE_HEADPHONES 0x04000000 +#define BASS_DEVICE_TYPE_MICROPHONE 0x05000000 +#define BASS_DEVICE_TYPE_HEADSET 0x06000000 +#define BASS_DEVICE_TYPE_HANDSET 0x07000000 +#define BASS_DEVICE_TYPE_DIGITAL 0x08000000 +#define BASS_DEVICE_TYPE_SPDIF 0x09000000 +#define BASS_DEVICE_TYPE_HDMI 0x0a000000 +#define BASS_DEVICE_TYPE_DISPLAYPORT 0x40000000 + +// BASS_GetDeviceInfo flags +#define BASS_DEVICES_AIRPLAY 0x1000000 + +typedef struct { + DWORD flags; // device capabilities (DSCAPS_xxx flags) + DWORD hwsize; // unused + DWORD hwfree; // unused + DWORD freesam; // unused + DWORD free3d; // unused + DWORD minrate; // unused + DWORD maxrate; // unused + BOOL eax; // unused + DWORD minbuf; // recommended minimum buffer length in ms + DWORD dsver; // DirectSound version + DWORD latency; // average delay (in ms) before start of playback + DWORD initflags; // BASS_Init "flags" parameter + DWORD speakers; // number of speakers available + DWORD freq; // current output rate +} BASS_INFO; + +// BASS_INFO flags (from DSOUND.H) +#define DSCAPS_EMULDRIVER 0x00000020 // device does not have hardware DirectSound support +#define DSCAPS_CERTIFIED 0x00000040 // device driver has been certified by Microsoft + +#define DSCAPS_HARDWARE 0x80000000 // hardware mixed + +// Recording device info structure +typedef struct { + DWORD flags; // device capabilities (DSCCAPS_xxx flags) + DWORD formats; // supported standard formats (WAVE_FORMAT_xxx flags) + DWORD inputs; // number of inputs + BOOL singlein; // TRUE = only 1 input can be set at a time + DWORD freq; // current input rate +} BASS_RECORDINFO; + +// BASS_RECORDINFO flags (from DSOUND.H) +#define DSCCAPS_EMULDRIVER DSCAPS_EMULDRIVER // device does not have hardware DirectSound recording support +#define DSCCAPS_CERTIFIED DSCAPS_CERTIFIED // device driver has been certified by Microsoft + +// defines for formats field of BASS_RECORDINFO (from MMSYSTEM.H) +#ifndef WAVE_FORMAT_1M08 +#define WAVE_FORMAT_1M08 0x00000001 /* 11.025 kHz, Mono, 8-bit */ +#define WAVE_FORMAT_1S08 0x00000002 /* 11.025 kHz, Stereo, 8-bit */ +#define WAVE_FORMAT_1M16 0x00000004 /* 11.025 kHz, Mono, 16-bit */ +#define WAVE_FORMAT_1S16 0x00000008 /* 11.025 kHz, Stereo, 16-bit */ +#define WAVE_FORMAT_2M08 0x00000010 /* 22.05 kHz, Mono, 8-bit */ +#define WAVE_FORMAT_2S08 0x00000020 /* 22.05 kHz, Stereo, 8-bit */ +#define WAVE_FORMAT_2M16 0x00000040 /* 22.05 kHz, Mono, 16-bit */ +#define WAVE_FORMAT_2S16 0x00000080 /* 22.05 kHz, Stereo, 16-bit */ +#define WAVE_FORMAT_4M08 0x00000100 /* 44.1 kHz, Mono, 8-bit */ +#define WAVE_FORMAT_4S08 0x00000200 /* 44.1 kHz, Stereo, 8-bit */ +#define WAVE_FORMAT_4M16 0x00000400 /* 44.1 kHz, Mono, 16-bit */ +#define WAVE_FORMAT_4S16 0x00000800 /* 44.1 kHz, Stereo, 16-bit */ +#endif + +// Sample info structure +typedef struct { + DWORD freq; // default playback rate + float volume; // default volume (0-1) + float pan; // default pan (-1=left, 0=middle, 1=right) + DWORD flags; // BASS_SAMPLE_xxx flags + DWORD length; // length (in bytes) + DWORD max; // maximum simultaneous playbacks + DWORD origres; // original resolution + DWORD chans; // number of channels + DWORD mingap; // minimum gap (ms) between creating channels + DWORD mode3d; // BASS_3DMODE_xxx mode + float mindist; // minimum distance + float maxdist; // maximum distance + DWORD iangle; // angle of inside projection cone + DWORD oangle; // angle of outside projection cone + float outvol; // delta-volume outside the projection cone + DWORD vam; // unused + DWORD priority; // unused +} BASS_SAMPLE; + +#define BASS_SAMPLE_8BITS 1 // 8 bit +#define BASS_SAMPLE_FLOAT 256 // 32 bit floating-point +#define BASS_SAMPLE_MONO 2 // mono +#define BASS_SAMPLE_LOOP 4 // looped +#define BASS_SAMPLE_3D 8 // 3D functionality +#define BASS_SAMPLE_SOFTWARE 16 // unused +#define BASS_SAMPLE_MUTEMAX 32 // mute at max distance (3D only) +#define BASS_SAMPLE_VAM 64 // unused +#define BASS_SAMPLE_FX 128 // unused +#define BASS_SAMPLE_OVER_VOL 0x10000 // override lowest volume +#define BASS_SAMPLE_OVER_POS 0x20000 // override longest playing +#define BASS_SAMPLE_OVER_DIST 0x30000 // override furthest from listener (3D only) + +#define BASS_STREAM_PRESCAN 0x20000 // scan file for accurate seeking and length +#define BASS_STREAM_AUTOFREE 0x40000 // automatically free the stream when it stops/ends +#define BASS_STREAM_RESTRATE 0x80000 // restrict the download rate of internet file stream +#define BASS_STREAM_BLOCK 0x100000 // download internet file stream in small blocks +#define BASS_STREAM_DECODE 0x200000 // don't play the stream, only decode +#define BASS_STREAM_STATUS 0x800000 // give server status info (HTTP/ICY tags) in DOWNLOADPROC + +#define BASS_MP3_IGNOREDELAY 0x200 // ignore LAME/Xing/VBRI/iTunes delay & padding info +#define BASS_MP3_SETPOS BASS_STREAM_PRESCAN + +#define BASS_MUSIC_FLOAT BASS_SAMPLE_FLOAT +#define BASS_MUSIC_MONO BASS_SAMPLE_MONO +#define BASS_MUSIC_LOOP BASS_SAMPLE_LOOP +#define BASS_MUSIC_3D BASS_SAMPLE_3D +#define BASS_MUSIC_FX BASS_SAMPLE_FX +#define BASS_MUSIC_AUTOFREE BASS_STREAM_AUTOFREE +#define BASS_MUSIC_DECODE BASS_STREAM_DECODE +#define BASS_MUSIC_PRESCAN BASS_STREAM_PRESCAN // calculate playback length +#define BASS_MUSIC_CALCLEN BASS_MUSIC_PRESCAN +#define BASS_MUSIC_RAMP 0x200 // normal ramping +#define BASS_MUSIC_RAMPS 0x400 // sensitive ramping +#define BASS_MUSIC_SURROUND 0x800 // surround sound +#define BASS_MUSIC_SURROUND2 0x1000 // surround sound (mode 2) +#define BASS_MUSIC_FT2PAN 0x2000 // apply FastTracker 2 panning to XM files +#define BASS_MUSIC_FT2MOD 0x2000 // play .MOD as FastTracker 2 does +#define BASS_MUSIC_PT1MOD 0x4000 // play .MOD as ProTracker 1 does +#define BASS_MUSIC_NONINTER 0x10000 // non-interpolated sample mixing +#define BASS_MUSIC_SINCINTER 0x800000 // sinc interpolated sample mixing +#define BASS_MUSIC_POSRESET 0x8000 // stop all notes when moving position +#define BASS_MUSIC_POSRESETEX 0x400000 // stop all notes and reset bmp/etc when moving position +#define BASS_MUSIC_STOPBACK 0x80000 // stop the music on a backwards jump effect +#define BASS_MUSIC_NOSAMPLE 0x100000 // don't load the samples + +// Speaker assignment flags +#define BASS_SPEAKER_FRONT 0x1000000 // front speakers +#define BASS_SPEAKER_REAR 0x2000000 // rear speakers +#define BASS_SPEAKER_CENLFE 0x3000000 // center & LFE speakers (5.1) +#define BASS_SPEAKER_SIDE 0x4000000 // side speakers (7.1) +#define BASS_SPEAKER_N(n) ((n)<<24) // n'th pair of speakers (max 15) +#define BASS_SPEAKER_LEFT 0x10000000 // modifier: left +#define BASS_SPEAKER_RIGHT 0x20000000 // modifier: right +#define BASS_SPEAKER_FRONTLEFT BASS_SPEAKER_FRONT | BASS_SPEAKER_LEFT +#define BASS_SPEAKER_FRONTRIGHT BASS_SPEAKER_FRONT | BASS_SPEAKER_RIGHT +#define BASS_SPEAKER_REARLEFT BASS_SPEAKER_REAR | BASS_SPEAKER_LEFT +#define BASS_SPEAKER_REARRIGHT BASS_SPEAKER_REAR | BASS_SPEAKER_RIGHT +#define BASS_SPEAKER_CENTER BASS_SPEAKER_CENLFE | BASS_SPEAKER_LEFT +#define BASS_SPEAKER_LFE BASS_SPEAKER_CENLFE | BASS_SPEAKER_RIGHT +#define BASS_SPEAKER_SIDELEFT BASS_SPEAKER_SIDE | BASS_SPEAKER_LEFT +#define BASS_SPEAKER_SIDERIGHT BASS_SPEAKER_SIDE | BASS_SPEAKER_RIGHT +#define BASS_SPEAKER_REAR2 BASS_SPEAKER_SIDE +#define BASS_SPEAKER_REAR2LEFT BASS_SPEAKER_SIDELEFT +#define BASS_SPEAKER_REAR2RIGHT BASS_SPEAKER_SIDERIGHT + +#define BASS_ASYNCFILE 0x40000000 // read file asynchronously +#define BASS_UNICODE 0x80000000 // UTF-16 + +#define BASS_RECORD_ECHOCANCEL 0x2000 +#define BASS_RECORD_AGC 0x4000 +#define BASS_RECORD_PAUSE 0x8000 // start recording paused + +// DX7 voice allocation & management flags +#define BASS_VAM_HARDWARE 1 +#define BASS_VAM_SOFTWARE 2 +#define BASS_VAM_TERM_TIME 4 +#define BASS_VAM_TERM_DIST 8 +#define BASS_VAM_TERM_PRIO 16 + +// Channel info structure +typedef struct { + DWORD freq; // default playback rate + DWORD chans; // channels + DWORD flags; + DWORD ctype; // type of channel + DWORD origres; // original resolution + HPLUGIN plugin; + HSAMPLE sample; + const char *filename; +} BASS_CHANNELINFO; + +#define BASS_ORIGRES_FLOAT 0x10000 + +// BASS_CHANNELINFO types +#define BASS_CTYPE_SAMPLE 1 +#define BASS_CTYPE_RECORD 2 +#define BASS_CTYPE_STREAM 0x10000 +#define BASS_CTYPE_STREAM_VORBIS 0x10002 +#define BASS_CTYPE_STREAM_OGG 0x10002 +#define BASS_CTYPE_STREAM_MP1 0x10003 +#define BASS_CTYPE_STREAM_MP2 0x10004 +#define BASS_CTYPE_STREAM_MP3 0x10005 +#define BASS_CTYPE_STREAM_AIFF 0x10006 +#define BASS_CTYPE_STREAM_CA 0x10007 +#define BASS_CTYPE_STREAM_MF 0x10008 +#define BASS_CTYPE_STREAM_AM 0x10009 +#define BASS_CTYPE_STREAM_SAMPLE 0x1000a +#define BASS_CTYPE_STREAM_DUMMY 0x18000 +#define BASS_CTYPE_STREAM_DEVICE 0x18001 +#define BASS_CTYPE_STREAM_WAV 0x40000 // WAVE flag (LOWORD=codec) +#define BASS_CTYPE_STREAM_WAV_PCM 0x50001 +#define BASS_CTYPE_STREAM_WAV_FLOAT 0x50003 +#define BASS_CTYPE_MUSIC_MOD 0x20000 +#define BASS_CTYPE_MUSIC_MTM 0x20001 +#define BASS_CTYPE_MUSIC_S3M 0x20002 +#define BASS_CTYPE_MUSIC_XM 0x20003 +#define BASS_CTYPE_MUSIC_IT 0x20004 +#define BASS_CTYPE_MUSIC_MO3 0x00100 // MO3 flag + +// BASS_PluginLoad flags +#define BASS_PLUGIN_PROC 1 + +typedef struct { + DWORD ctype; // channel type +#if defined(_WIN32_WCE) || (defined(WINAPI_FAMILY) && WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP) + const wchar_t *name; // format description + const wchar_t *exts; // file extension filter (*.ext1;*.ext2;etc...) +#else + const char *name; // format description + const char *exts; // file extension filter (*.ext1;*.ext2;etc...) +#endif +} BASS_PLUGINFORM; + +typedef struct { + DWORD version; // version (same form as BASS_GetVersion) + DWORD formatc; // number of formats + const BASS_PLUGINFORM *formats; // the array of formats +} BASS_PLUGININFO; + +// 3D vector (for 3D positions/velocities/orientations) +typedef struct BASS_3DVECTOR { +#ifdef __cplusplus + BASS_3DVECTOR() {} + BASS_3DVECTOR(float _x, float _y, float _z) : x(_x), y(_y), z(_z) {} +#endif + float x; // +=right, -=left + float y; // +=up, -=down + float z; // +=front, -=behind +} BASS_3DVECTOR; + +// 3D channel modes +#define BASS_3DMODE_NORMAL 0 // normal 3D processing +#define BASS_3DMODE_RELATIVE 1 // position is relative to the listener +#define BASS_3DMODE_OFF 2 // no 3D processing + +// software 3D mixing algorithms (used with BASS_CONFIG_3DALGORITHM) +#define BASS_3DALG_DEFAULT 0 +#define BASS_3DALG_OFF 1 +#define BASS_3DALG_FULL 2 +#define BASS_3DALG_LIGHT 3 + +// BASS_SampleGetChannel flags +#define BASS_SAMCHAN_NEW 1 // get a new playback channel +#define BASS_SAMCHAN_STREAM 2 // create a stream + +typedef DWORD (CALLBACK STREAMPROC)(HSTREAM handle, void *buffer, DWORD length, void *user); +/* User stream callback function. +handle : The stream that needs writing +buffer : Buffer to write the samples in +length : Number of bytes to write +user : The 'user' parameter value given when calling BASS_StreamCreate +RETURN : Number of bytes written. Set the BASS_STREAMPROC_END flag to end the stream. */ + +#define BASS_STREAMPROC_END 0x80000000 // end of user stream flag + +// Special STREAMPROCs +#define STREAMPROC_DUMMY (STREAMPROC*)0 // "dummy" stream +#define STREAMPROC_PUSH (STREAMPROC*)-1 // push stream +#define STREAMPROC_DEVICE (STREAMPROC*)-2 // device mix stream +#define STREAMPROC_DEVICE_3D (STREAMPROC*)-3 // device 3D mix stream + +// BASS_StreamCreateFileUser file systems +#define STREAMFILE_NOBUFFER 0 +#define STREAMFILE_BUFFER 1 +#define STREAMFILE_BUFFERPUSH 2 + +// User file stream callback functions +typedef void (CALLBACK FILECLOSEPROC)(void *user); +typedef QWORD (CALLBACK FILELENPROC)(void *user); +typedef DWORD (CALLBACK FILEREADPROC)(void *buffer, DWORD length, void *user); +typedef BOOL (CALLBACK FILESEEKPROC)(QWORD offset, void *user); + +typedef struct { + FILECLOSEPROC *close; + FILELENPROC *length; + FILEREADPROC *read; + FILESEEKPROC *seek; +} BASS_FILEPROCS; + +// BASS_StreamPutFileData options +#define BASS_FILEDATA_END 0 // end & close the file + +// BASS_StreamGetFilePosition modes +#define BASS_FILEPOS_CURRENT 0 +#define BASS_FILEPOS_DECODE BASS_FILEPOS_CURRENT +#define BASS_FILEPOS_DOWNLOAD 1 +#define BASS_FILEPOS_END 2 +#define BASS_FILEPOS_START 3 +#define BASS_FILEPOS_CONNECTED 4 +#define BASS_FILEPOS_BUFFER 5 +#define BASS_FILEPOS_SOCKET 6 +#define BASS_FILEPOS_ASYNCBUF 7 +#define BASS_FILEPOS_SIZE 8 +#define BASS_FILEPOS_BUFFERING 9 +#define BASS_FILEPOS_AVAILABLE 10 + +typedef void (CALLBACK DOWNLOADPROC)(const void *buffer, DWORD length, void *user); +/* Internet stream download callback function. +buffer : Buffer containing the downloaded data... NULL=end of download +length : Number of bytes in the buffer +user : The 'user' parameter value given when calling BASS_StreamCreateURL */ + +// BASS_ChannelSetSync types +#define BASS_SYNC_POS 0 +#define BASS_SYNC_END 2 +#define BASS_SYNC_META 4 +#define BASS_SYNC_SLIDE 5 +#define BASS_SYNC_STALL 6 +#define BASS_SYNC_DOWNLOAD 7 +#define BASS_SYNC_FREE 8 +#define BASS_SYNC_SETPOS 11 +#define BASS_SYNC_MUSICPOS 10 +#define BASS_SYNC_MUSICINST 1 +#define BASS_SYNC_MUSICFX 3 +#define BASS_SYNC_OGG_CHANGE 12 +#define BASS_SYNC_DEV_FAIL 14 +#define BASS_SYNC_DEV_FORMAT 15 +#define BASS_SYNC_THREAD 0x20000000 // flag: call sync in other thread +#define BASS_SYNC_MIXTIME 0x40000000 // flag: sync at mixtime, else at playtime +#define BASS_SYNC_ONETIME 0x80000000 // flag: sync only once, else continuously + +typedef void (CALLBACK SYNCPROC)(HSYNC handle, DWORD channel, DWORD data, void *user); +/* Sync callback function. +handle : The sync that has occured +channel: Channel that the sync occured in +data : Additional data associated with the sync's occurance +user : The 'user' parameter given when calling BASS_ChannelSetSync */ + +typedef void (CALLBACK DSPPROC)(HDSP handle, DWORD channel, void *buffer, DWORD length, void *user); +/* DSP callback function. +handle : The DSP handle +channel: Channel that the DSP is being applied to +buffer : Buffer to apply the DSP to +length : Number of bytes in the buffer +user : The 'user' parameter given when calling BASS_ChannelSetDSP */ + +typedef BOOL (CALLBACK RECORDPROC)(HRECORD handle, const void *buffer, DWORD length, void *user); +/* Recording callback function. +handle : The recording handle +buffer : Buffer containing the recorded sample data +length : Number of bytes +user : The 'user' parameter value given when calling BASS_RecordStart +RETURN : TRUE = continue recording, FALSE = stop */ + +// BASS_ChannelIsActive return values +#define BASS_ACTIVE_STOPPED 0 +#define BASS_ACTIVE_PLAYING 1 +#define BASS_ACTIVE_STALLED 2 +#define BASS_ACTIVE_PAUSED 3 +#define BASS_ACTIVE_PAUSED_DEVICE 4 + +// Channel attributes +#define BASS_ATTRIB_FREQ 1 +#define BASS_ATTRIB_VOL 2 +#define BASS_ATTRIB_PAN 3 +#define BASS_ATTRIB_EAXMIX 4 +#define BASS_ATTRIB_NOBUFFER 5 +#define BASS_ATTRIB_VBR 6 +#define BASS_ATTRIB_CPU 7 +#define BASS_ATTRIB_SRC 8 +#define BASS_ATTRIB_NET_RESUME 9 +#define BASS_ATTRIB_SCANINFO 10 +#define BASS_ATTRIB_NORAMP 11 +#define BASS_ATTRIB_BITRATE 12 +#define BASS_ATTRIB_BUFFER 13 +#define BASS_ATTRIB_GRANULE 14 +#define BASS_ATTRIB_USER 15 +#define BASS_ATTRIB_TAIL 16 +#define BASS_ATTRIB_PUSH_LIMIT 17 +#define BASS_ATTRIB_DOWNLOADPROC 18 +#define BASS_ATTRIB_VOLDSP 19 +#define BASS_ATTRIB_VOLDSP_PRIORITY 20 +#define BASS_ATTRIB_MUSIC_AMPLIFY 0x100 +#define BASS_ATTRIB_MUSIC_PANSEP 0x101 +#define BASS_ATTRIB_MUSIC_PSCALER 0x102 +#define BASS_ATTRIB_MUSIC_BPM 0x103 +#define BASS_ATTRIB_MUSIC_SPEED 0x104 +#define BASS_ATTRIB_MUSIC_VOL_GLOBAL 0x105 +#define BASS_ATTRIB_MUSIC_ACTIVE 0x106 +#define BASS_ATTRIB_MUSIC_VOL_CHAN 0x200 // + channel # +#define BASS_ATTRIB_MUSIC_VOL_INST 0x300 // + instrument # + +// BASS_ChannelSlideAttribute flags +#define BASS_SLIDE_LOG 0x1000000 + +// BASS_ChannelGetData flags +#define BASS_DATA_AVAILABLE 0 // query how much data is buffered +#define BASS_DATA_NOREMOVE 0x10000000 // flag: don't remove data from recording buffer +#define BASS_DATA_FIXED 0x20000000 // unused +#define BASS_DATA_FLOAT 0x40000000 // flag: return floating-point sample data +#define BASS_DATA_FFT256 0x80000000 // 256 sample FFT +#define BASS_DATA_FFT512 0x80000001 // 512 FFT +#define BASS_DATA_FFT1024 0x80000002 // 1024 FFT +#define BASS_DATA_FFT2048 0x80000003 // 2048 FFT +#define BASS_DATA_FFT4096 0x80000004 // 4096 FFT +#define BASS_DATA_FFT8192 0x80000005 // 8192 FFT +#define BASS_DATA_FFT16384 0x80000006 // 16384 FFT +#define BASS_DATA_FFT32768 0x80000007 // 32768 FFT +#define BASS_DATA_FFT_INDIVIDUAL 0x10 // FFT flag: FFT for each channel, else all combined +#define BASS_DATA_FFT_NOWINDOW 0x20 // FFT flag: no Hanning window +#define BASS_DATA_FFT_REMOVEDC 0x40 // FFT flag: pre-remove DC bias +#define BASS_DATA_FFT_COMPLEX 0x80 // FFT flag: return complex data +#define BASS_DATA_FFT_NYQUIST 0x100 // FFT flag: return extra Nyquist value + +// BASS_ChannelGetLevelEx flags +#define BASS_LEVEL_MONO 1 // get mono level +#define BASS_LEVEL_STEREO 2 // get stereo level +#define BASS_LEVEL_RMS 4 // get RMS levels +#define BASS_LEVEL_VOLPAN 8 // apply VOL/PAN attributes to the levels +#define BASS_LEVEL_NOREMOVE 16 // don't remove data from recording buffer + +// BASS_ChannelGetTags types : what's returned +#define BASS_TAG_ID3 0 // ID3v1 tags : TAG_ID3 structure +#define BASS_TAG_ID3V2 1 // ID3v2 tags : variable length block +#define BASS_TAG_OGG 2 // OGG comments : series of null-terminated UTF-8 strings +#define BASS_TAG_HTTP 3 // HTTP headers : series of null-terminated ASCII strings +#define BASS_TAG_ICY 4 // ICY headers : series of null-terminated ANSI strings +#define BASS_TAG_META 5 // ICY metadata : ANSI string +#define BASS_TAG_APE 6 // APE tags : series of null-terminated UTF-8 strings +#define BASS_TAG_MP4 7 // MP4/iTunes metadata : series of null-terminated UTF-8 strings +#define BASS_TAG_WMA 8 // WMA tags : series of null-terminated UTF-8 strings +#define BASS_TAG_VENDOR 9 // OGG encoder : UTF-8 string +#define BASS_TAG_LYRICS3 10 // Lyric3v2 tag : ASCII string +#define BASS_TAG_CA_CODEC 11 // CoreAudio codec info : TAG_CA_CODEC structure +#define BASS_TAG_MF 13 // Media Foundation tags : series of null-terminated UTF-8 strings +#define BASS_TAG_WAVEFORMAT 14 // WAVE format : WAVEFORMATEEX structure +#define BASS_TAG_AM_NAME 16 // Android Media codec name : ASCII string +#define BASS_TAG_ID3V2_2 17 // ID3v2 tags (2nd block) : variable length block +#define BASS_TAG_AM_MIME 18 // Android Media MIME type : ASCII string +#define BASS_TAG_LOCATION 19 // redirected URL : ASCII string +#define BASS_TAG_RIFF_INFO 0x100 // RIFF "INFO" tags : series of null-terminated ANSI strings +#define BASS_TAG_RIFF_BEXT 0x101 // RIFF/BWF "bext" tags : TAG_BEXT structure +#define BASS_TAG_RIFF_CART 0x102 // RIFF/BWF "cart" tags : TAG_CART structure +#define BASS_TAG_RIFF_DISP 0x103 // RIFF "DISP" text tag : ANSI string +#define BASS_TAG_RIFF_CUE 0x104 // RIFF "cue " chunk : TAG_CUE structure +#define BASS_TAG_RIFF_SMPL 0x105 // RIFF "smpl" chunk : TAG_SMPL structure +#define BASS_TAG_APE_BINARY 0x1000 // + index #, binary APE tag : TAG_APE_BINARY structure +#define BASS_TAG_MUSIC_NAME 0x10000 // MOD music name : ANSI string +#define BASS_TAG_MUSIC_MESSAGE 0x10001 // MOD message : ANSI string +#define BASS_TAG_MUSIC_ORDERS 0x10002 // MOD order list : BYTE array of pattern numbers +#define BASS_TAG_MUSIC_AUTH 0x10003 // MOD author : UTF-8 string +#define BASS_TAG_MUSIC_INST 0x10100 // + instrument #, MOD instrument name : ANSI string +#define BASS_TAG_MUSIC_CHAN 0x10200 // + channel #, MOD channel name : ANSI string +#define BASS_TAG_MUSIC_SAMPLE 0x10300 // + sample #, MOD sample name : ANSI string + +// ID3v1 tag structure +typedef struct { + char id[3]; + char title[30]; + char artist[30]; + char album[30]; + char year[4]; + char comment[30]; + BYTE genre; +} TAG_ID3; + +// Binary APE tag structure +typedef struct { + const char *key; + const void *data; + DWORD length; +} TAG_APE_BINARY; + +// BWF "bext" tag structure +#ifdef _MSC_VER +#pragma warning(push) +#pragma warning(disable:4200) +#endif +#pragma pack(push,1) +typedef struct { + char Description[256]; // description + char Originator[32]; // name of the originator + char OriginatorReference[32]; // reference of the originator + char OriginationDate[10]; // date of creation (yyyy-mm-dd) + char OriginationTime[8]; // time of creation (hh-mm-ss) + QWORD TimeReference; // first sample count since midnight (little-endian) + WORD Version; // BWF version (little-endian) + BYTE UMID[64]; // SMPTE UMID + BYTE Reserved[190]; +#if defined(__GNUC__) && __GNUC__<3 + char CodingHistory[0]; // history +#elif 1 // change to 0 if compiler fails the following line + char CodingHistory[]; // history +#else + char CodingHistory[1]; // history +#endif +} TAG_BEXT; +#pragma pack(pop) + +// BWF "cart" tag structures +typedef struct +{ + DWORD dwUsage; // FOURCC timer usage ID + DWORD dwValue; // timer value in samples from head +} TAG_CART_TIMER; + +typedef struct +{ + char Version[4]; // version of the data structure + char Title[64]; // title of cart audio sequence + char Artist[64]; // artist or creator name + char CutID[64]; // cut number identification + char ClientID[64]; // client identification + char Category[64]; // category ID, PSA, NEWS, etc + char Classification[64]; // classification or auxiliary key + char OutCue[64]; // out cue text + char StartDate[10]; // yyyy-mm-dd + char StartTime[8]; // hh:mm:ss + char EndDate[10]; // yyyy-mm-dd + char EndTime[8]; // hh:mm:ss + char ProducerAppID[64]; // name of vendor or application + char ProducerAppVersion[64]; // version of producer application + char UserDef[64]; // user defined text + DWORD dwLevelReference; // sample value for 0 dB reference + TAG_CART_TIMER PostTimer[8]; // 8 time markers after head + char Reserved[276]; + char URL[1024]; // uniform resource locator +#if defined(__GNUC__) && __GNUC__<3 + char TagText[0]; // free form text for scripts or tags +#elif 1 // change to 0 if compiler fails the following line + char TagText[]; // free form text for scripts or tags +#else + char TagText[1]; // free form text for scripts or tags +#endif +} TAG_CART; + +// RIFF "cue " tag structures +typedef struct +{ + DWORD dwName; + DWORD dwPosition; + DWORD fccChunk; + DWORD dwChunkStart; + DWORD dwBlockStart; + DWORD dwSampleOffset; +} TAG_CUE_POINT; + +typedef struct +{ + DWORD dwCuePoints; +#if defined(__GNUC__) && __GNUC__<3 + TAG_CUE_POINT CuePoints[0]; +#elif 1 // change to 0 if compiler fails the following line + TAG_CUE_POINT CuePoints[]; +#else + TAG_CUE_POINT CuePoints[1]; +#endif +} TAG_CUE; + +// RIFF "smpl" tag structures +typedef struct +{ + DWORD dwIdentifier; + DWORD dwType; + DWORD dwStart; + DWORD dwEnd; + DWORD dwFraction; + DWORD dwPlayCount; +} TAG_SMPL_LOOP; + +typedef struct +{ + DWORD dwManufacturer; + DWORD dwProduct; + DWORD dwSamplePeriod; + DWORD dwMIDIUnityNote; + DWORD dwMIDIPitchFraction; + DWORD dwSMPTEFormat; + DWORD dwSMPTEOffset; + DWORD cSampleLoops; + DWORD cbSamplerData; +#if defined(__GNUC__) && __GNUC__<3 + TAG_SMPL_LOOP SampleLoops[0]; +#elif 1 // change to 0 if compiler fails the following line + TAG_SMPL_LOOP SampleLoops[]; +#else + TAG_SMPL_LOOP SampleLoops[1]; +#endif +} TAG_SMPL; +#ifdef _MSC_VER +#pragma warning(pop) +#endif + +// CoreAudio codec info structure +typedef struct { + DWORD ftype; // file format + DWORD atype; // audio format + const char *name; // description +} TAG_CA_CODEC; + +#ifndef _WAVEFORMATEX_ +#define _WAVEFORMATEX_ +#pragma pack(push,1) +typedef struct tWAVEFORMATEX +{ + WORD wFormatTag; + WORD nChannels; + DWORD nSamplesPerSec; + DWORD nAvgBytesPerSec; + WORD nBlockAlign; + WORD wBitsPerSample; + WORD cbSize; +} WAVEFORMATEX, *PWAVEFORMATEX, *LPWAVEFORMATEX; +typedef const WAVEFORMATEX *LPCWAVEFORMATEX; +#pragma pack(pop) +#endif + +// BASS_ChannelGetLength/GetPosition/SetPosition modes +#define BASS_POS_BYTE 0 // byte position +#define BASS_POS_MUSIC_ORDER 1 // order.row position, MAKELONG(order,row) +#define BASS_POS_OGG 3 // OGG bitstream number +#define BASS_POS_END 0x10 // trimmed end position +#define BASS_POS_LOOP 0x11 // loop start positiom +#define BASS_POS_FLUSH 0x1000000 // flag: flush decoder/FX buffers +#define BASS_POS_RESET 0x2000000 // flag: reset user file buffers +#define BASS_POS_RELATIVE 0x4000000 // flag: seek relative to the current position +#define BASS_POS_INEXACT 0x8000000 // flag: allow seeking to inexact position +#define BASS_POS_DECODE 0x10000000 // flag: get the decoding (not playing) position +#define BASS_POS_DECODETO 0x20000000 // flag: decode to the position instead of seeking +#define BASS_POS_SCAN 0x40000000 // flag: scan to the position + +// BASS_ChannelSetDevice/GetDevice option +#define BASS_NODEVICE 0x20000 + +// BASS_RecordSetInput flags +#define BASS_INPUT_OFF 0x10000 +#define BASS_INPUT_ON 0x20000 + +#define BASS_INPUT_TYPE_MASK 0xff000000 +#define BASS_INPUT_TYPE_UNDEF 0x00000000 +#define BASS_INPUT_TYPE_DIGITAL 0x01000000 +#define BASS_INPUT_TYPE_LINE 0x02000000 +#define BASS_INPUT_TYPE_MIC 0x03000000 +#define BASS_INPUT_TYPE_SYNTH 0x04000000 +#define BASS_INPUT_TYPE_CD 0x05000000 +#define BASS_INPUT_TYPE_PHONE 0x06000000 +#define BASS_INPUT_TYPE_SPEAKER 0x07000000 +#define BASS_INPUT_TYPE_WAVE 0x08000000 +#define BASS_INPUT_TYPE_AUX 0x09000000 +#define BASS_INPUT_TYPE_ANALOG 0x0a000000 + +// BASS_ChannelSetFX effect types +#define BASS_FX_DX8_CHORUS 0 +#define BASS_FX_DX8_COMPRESSOR 1 +#define BASS_FX_DX8_DISTORTION 2 +#define BASS_FX_DX8_ECHO 3 +#define BASS_FX_DX8_FLANGER 4 +#define BASS_FX_DX8_GARGLE 5 +#define BASS_FX_DX8_I3DL2REVERB 6 +#define BASS_FX_DX8_PARAMEQ 7 +#define BASS_FX_DX8_REVERB 8 +#define BASS_FX_VOLUME 9 + +typedef struct { + float fWetDryMix; + float fDepth; + float fFeedback; + float fFrequency; + DWORD lWaveform; // 0=triangle, 1=sine + float fDelay; + DWORD lPhase; // BASS_DX8_PHASE_xxx +} BASS_DX8_CHORUS; + +typedef struct { + float fGain; + float fAttack; + float fRelease; + float fThreshold; + float fRatio; + float fPredelay; +} BASS_DX8_COMPRESSOR; + +typedef struct { + float fGain; + float fEdge; + float fPostEQCenterFrequency; + float fPostEQBandwidth; + float fPreLowpassCutoff; +} BASS_DX8_DISTORTION; + +typedef struct { + float fWetDryMix; + float fFeedback; + float fLeftDelay; + float fRightDelay; + BOOL lPanDelay; +} BASS_DX8_ECHO; + +typedef struct { + float fWetDryMix; + float fDepth; + float fFeedback; + float fFrequency; + DWORD lWaveform; // 0=triangle, 1=sine + float fDelay; + DWORD lPhase; // BASS_DX8_PHASE_xxx +} BASS_DX8_FLANGER; + +typedef struct { + DWORD dwRateHz; // Rate of modulation in hz + DWORD dwWaveShape; // 0=triangle, 1=square +} BASS_DX8_GARGLE; + +typedef struct { + int lRoom; // [-10000, 0] default: -1000 mB + int lRoomHF; // [-10000, 0] default: 0 mB + float flRoomRolloffFactor; // [0.0, 10.0] default: 0.0 + float flDecayTime; // [0.1, 20.0] default: 1.49s + float flDecayHFRatio; // [0.1, 2.0] default: 0.83 + int lReflections; // [-10000, 1000] default: -2602 mB + float flReflectionsDelay; // [0.0, 0.3] default: 0.007 s + int lReverb; // [-10000, 2000] default: 200 mB + float flReverbDelay; // [0.0, 0.1] default: 0.011 s + float flDiffusion; // [0.0, 100.0] default: 100.0 % + float flDensity; // [0.0, 100.0] default: 100.0 % + float flHFReference; // [20.0, 20000.0] default: 5000.0 Hz +} BASS_DX8_I3DL2REVERB; + +typedef struct { + float fCenter; + float fBandwidth; + float fGain; +} BASS_DX8_PARAMEQ; + +typedef struct { + float fInGain; // [-96.0,0.0] default: 0.0 dB + float fReverbMix; // [-96.0,0.0] default: 0.0 db + float fReverbTime; // [0.001,3000.0] default: 1000.0 ms + float fHighFreqRTRatio; // [0.001,0.999] default: 0.001 +} BASS_DX8_REVERB; + +#define BASS_DX8_PHASE_NEG_180 0 +#define BASS_DX8_PHASE_NEG_90 1 +#define BASS_DX8_PHASE_ZERO 2 +#define BASS_DX8_PHASE_90 3 +#define BASS_DX8_PHASE_180 4 + +typedef struct { + float fTarget; + float fCurrent; + float fTime; + DWORD lCurve; +} BASS_FX_VOLUME_PARAM; + +typedef void (CALLBACK IOSNOTIFYPROC)(DWORD status); +/* iOS notification callback function. +status : The notification (BASS_IOSNOTIFY_xxx) */ + +#define BASS_IOSNOTIFY_INTERRUPT 1 // interruption started +#define BASS_IOSNOTIFY_INTERRUPT_END 2 // interruption ended + +BOOL BASSDEF(BASS_SetConfig)(DWORD option, DWORD value); +DWORD BASSDEF(BASS_GetConfig)(DWORD option); +BOOL BASSDEF(BASS_SetConfigPtr)(DWORD option, const void *value); +const void *BASSDEF(BASS_GetConfigPtr)(DWORD option); +DWORD BASSDEF(BASS_GetVersion)(void); +int BASSDEF(BASS_ErrorGetCode)(void); + +BOOL BASSDEF(BASS_GetDeviceInfo)(DWORD device, BASS_DEVICEINFO *info); +#if defined(_WIN32) && !defined(_WIN32_WCE) && !(defined(WINAPI_FAMILY) && WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP) +BOOL BASSDEF(BASS_Init)(int device, DWORD freq, DWORD flags, HWND win, const void *dsguid); +#else +BOOL BASSDEF(BASS_Init)(int device, DWORD freq, DWORD flags, void *win, const void *dsguid); +#endif +BOOL BASSDEF(BASS_Free)(void); +BOOL BASSDEF(BASS_SetDevice)(DWORD device); +DWORD BASSDEF(BASS_GetDevice)(void); +BOOL BASSDEF(BASS_GetInfo)(BASS_INFO *info); +BOOL BASSDEF(BASS_Start)(void); +BOOL BASSDEF(BASS_Stop)(void); +BOOL BASSDEF(BASS_Pause)(void); +DWORD BASSDEF(BASS_IsStarted)(void); +BOOL BASSDEF(BASS_Update)(DWORD length); +float BASSDEF(BASS_GetCPU)(void); +BOOL BASSDEF(BASS_SetVolume)(float volume); +float BASSDEF(BASS_GetVolume)(void); +#if defined(_WIN32) && !defined(_WIN32_WCE) && !(defined(WINAPI_FAMILY) && WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP) +void *BASSDEF(BASS_GetDSoundObject)(DWORD object); +#endif + +BOOL BASSDEF(BASS_Set3DFactors)(float distf, float rollf, float doppf); +BOOL BASSDEF(BASS_Get3DFactors)(float *distf, float *rollf, float *doppf); +BOOL BASSDEF(BASS_Set3DPosition)(const BASS_3DVECTOR *pos, const BASS_3DVECTOR *vel, const BASS_3DVECTOR *front, const BASS_3DVECTOR *top); +BOOL BASSDEF(BASS_Get3DPosition)(BASS_3DVECTOR *pos, BASS_3DVECTOR *vel, BASS_3DVECTOR *front, BASS_3DVECTOR *top); +void BASSDEF(BASS_Apply3D)(void); + +HPLUGIN BASSDEF(BASS_PluginLoad)(const char *file, DWORD flags); +BOOL BASSDEF(BASS_PluginFree)(HPLUGIN handle); +BOOL BASSDEF(BASS_PluginEnable)(HPLUGIN handle, BOOL enable); +const BASS_PLUGININFO *BASSDEF(BASS_PluginGetInfo)(HPLUGIN handle); + +HSAMPLE BASSDEF(BASS_SampleLoad)(BOOL mem, const void *file, QWORD offset, DWORD length, DWORD max, DWORD flags); +HSAMPLE BASSDEF(BASS_SampleCreate)(DWORD length, DWORD freq, DWORD chans, DWORD max, DWORD flags); +BOOL BASSDEF(BASS_SampleFree)(HSAMPLE handle); +BOOL BASSDEF(BASS_SampleSetData)(HSAMPLE handle, const void *buffer); +BOOL BASSDEF(BASS_SampleGetData)(HSAMPLE handle, void *buffer); +BOOL BASSDEF(BASS_SampleGetInfo)(HSAMPLE handle, BASS_SAMPLE *info); +BOOL BASSDEF(BASS_SampleSetInfo)(HSAMPLE handle, const BASS_SAMPLE *info); +DWORD BASSDEF(BASS_SampleGetChannel)(HSAMPLE handle, DWORD flags); +DWORD BASSDEF(BASS_SampleGetChannels)(HSAMPLE handle, HCHANNEL *channels); +BOOL BASSDEF(BASS_SampleStop)(HSAMPLE handle); + +HSTREAM BASSDEF(BASS_StreamCreate)(DWORD freq, DWORD chans, DWORD flags, STREAMPROC *proc, void *user); +HSTREAM BASSDEF(BASS_StreamCreateFile)(BOOL mem, const void *file, QWORD offset, QWORD length, DWORD flags); +HSTREAM BASSDEF(BASS_StreamCreateURL)(const char *url, DWORD offset, DWORD flags, DOWNLOADPROC *proc, void *user); +HSTREAM BASSDEF(BASS_StreamCreateFileUser)(DWORD system, DWORD flags, const BASS_FILEPROCS *proc, void *user); +BOOL BASSDEF(BASS_StreamFree)(HSTREAM handle); +QWORD BASSDEF(BASS_StreamGetFilePosition)(HSTREAM handle, DWORD mode); +DWORD BASSDEF(BASS_StreamPutData)(HSTREAM handle, const void *buffer, DWORD length); +DWORD BASSDEF(BASS_StreamPutFileData)(HSTREAM handle, const void *buffer, DWORD length); + +HMUSIC BASSDEF(BASS_MusicLoad)(BOOL mem, const void *file, QWORD offset, DWORD length, DWORD flags, DWORD freq); +BOOL BASSDEF(BASS_MusicFree)(HMUSIC handle); + +BOOL BASSDEF(BASS_RecordGetDeviceInfo)(DWORD device, BASS_DEVICEINFO *info); +BOOL BASSDEF(BASS_RecordInit)(int device); +BOOL BASSDEF(BASS_RecordFree)(void); +BOOL BASSDEF(BASS_RecordSetDevice)(DWORD device); +DWORD BASSDEF(BASS_RecordGetDevice)(void); +BOOL BASSDEF(BASS_RecordGetInfo)(BASS_RECORDINFO *info); +const char *BASSDEF(BASS_RecordGetInputName)(int input); +BOOL BASSDEF(BASS_RecordSetInput)(int input, DWORD flags, float volume); +DWORD BASSDEF(BASS_RecordGetInput)(int input, float *volume); +HRECORD BASSDEF(BASS_RecordStart)(DWORD freq, DWORD chans, DWORD flags, RECORDPROC *proc, void *user); + +double BASSDEF(BASS_ChannelBytes2Seconds)(DWORD handle, QWORD pos); +QWORD BASSDEF(BASS_ChannelSeconds2Bytes)(DWORD handle, double pos); +DWORD BASSDEF(BASS_ChannelGetDevice)(DWORD handle); +BOOL BASSDEF(BASS_ChannelSetDevice)(DWORD handle, DWORD device); +DWORD BASSDEF(BASS_ChannelIsActive)(DWORD handle); +BOOL BASSDEF(BASS_ChannelGetInfo)(DWORD handle, BASS_CHANNELINFO *info); +const char *BASSDEF(BASS_ChannelGetTags)(DWORD handle, DWORD tags); +DWORD BASSDEF(BASS_ChannelFlags)(DWORD handle, DWORD flags, DWORD mask); +BOOL BASSDEF(BASS_ChannelLock)(DWORD handle, BOOL lock); +BOOL BASSDEF(BASS_ChannelFree)(DWORD handle); +BOOL BASSDEF(BASS_ChannelPlay)(DWORD handle, BOOL restart); +BOOL BASSDEF(BASS_ChannelStart)(DWORD handle); +BOOL BASSDEF(BASS_ChannelStop)(DWORD handle); +BOOL BASSDEF(BASS_ChannelPause)(DWORD handle); +BOOL BASSDEF(BASS_ChannelUpdate)(DWORD handle, DWORD length); +BOOL BASSDEF(BASS_ChannelSetAttribute)(DWORD handle, DWORD attrib, float value); +BOOL BASSDEF(BASS_ChannelGetAttribute)(DWORD handle, DWORD attrib, float *value); +BOOL BASSDEF(BASS_ChannelSlideAttribute)(DWORD handle, DWORD attrib, float value, DWORD time); +BOOL BASSDEF(BASS_ChannelIsSliding)(DWORD handle, DWORD attrib); +BOOL BASSDEF(BASS_ChannelSetAttributeEx)(DWORD handle, DWORD attrib, void *value, DWORD size); +DWORD BASSDEF(BASS_ChannelGetAttributeEx)(DWORD handle, DWORD attrib, void *value, DWORD size); +BOOL BASSDEF(BASS_ChannelSet3DAttributes)(DWORD handle, int mode, float min, float max, int iangle, int oangle, float outvol); +BOOL BASSDEF(BASS_ChannelGet3DAttributes)(DWORD handle, DWORD *mode, float *min, float *max, DWORD *iangle, DWORD *oangle, float *outvol); +BOOL BASSDEF(BASS_ChannelSet3DPosition)(DWORD handle, const BASS_3DVECTOR *pos, const BASS_3DVECTOR *orient, const BASS_3DVECTOR *vel); +BOOL BASSDEF(BASS_ChannelGet3DPosition)(DWORD handle, BASS_3DVECTOR *pos, BASS_3DVECTOR *orient, BASS_3DVECTOR *vel); +QWORD BASSDEF(BASS_ChannelGetLength)(DWORD handle, DWORD mode); +BOOL BASSDEF(BASS_ChannelSetPosition)(DWORD handle, QWORD pos, DWORD mode); +QWORD BASSDEF(BASS_ChannelGetPosition)(DWORD handle, DWORD mode); +DWORD BASSDEF(BASS_ChannelGetLevel)(DWORD handle); +BOOL BASSDEF(BASS_ChannelGetLevelEx)(DWORD handle, float *levels, float length, DWORD flags); +DWORD BASSDEF(BASS_ChannelGetData)(DWORD handle, void *buffer, DWORD length); +HSYNC BASSDEF(BASS_ChannelSetSync)(DWORD handle, DWORD type, QWORD param, SYNCPROC *proc, void *user); +BOOL BASSDEF(BASS_ChannelRemoveSync)(DWORD handle, HSYNC sync); +BOOL BASSDEF(BASS_ChannelSetLink)(DWORD handle, DWORD chan); +BOOL BASSDEF(BASS_ChannelRemoveLink)(DWORD handle, DWORD chan); +HDSP BASSDEF(BASS_ChannelSetDSP)(DWORD handle, DSPPROC *proc, void *user, int priority); +BOOL BASSDEF(BASS_ChannelRemoveDSP)(DWORD handle, HDSP dsp); +HFX BASSDEF(BASS_ChannelSetFX)(DWORD handle, DWORD type, int priority); +BOOL BASSDEF(BASS_ChannelRemoveFX)(DWORD handle, HFX fx); + +BOOL BASSDEF(BASS_FXSetParameters)(HFX handle, const void *params); +BOOL BASSDEF(BASS_FXGetParameters)(HFX handle, void *params); +BOOL BASSDEF(BASS_FXSetPriority)(HFX handle, int priority); +BOOL BASSDEF(BASS_FXReset)(DWORD handle); + +#ifdef __cplusplus +} + +#if defined(_WIN32) && !defined(NOBASSOVERLOADS) +static inline HPLUGIN BASS_PluginLoad(const WCHAR *file, DWORD flags) +{ + return BASS_PluginLoad((const char*)file, flags | BASS_UNICODE); +} + +static inline HMUSIC BASS_MusicLoad(BOOL mem, const WCHAR *file, QWORD offset, DWORD length, DWORD flags, DWORD freq) +{ + return BASS_MusicLoad(mem, (const void*)file, offset, length, flags | BASS_UNICODE, freq); +} + +static inline HSAMPLE BASS_SampleLoad(BOOL mem, const WCHAR *file, QWORD offset, DWORD length, DWORD max, DWORD flags) +{ + return BASS_SampleLoad(mem, (const void*)file, offset, length, max, flags | BASS_UNICODE); +} + +static inline HSTREAM BASS_StreamCreateFile(BOOL mem, const WCHAR *file, QWORD offset, QWORD length, DWORD flags) +{ + return BASS_StreamCreateFile(mem, (const void*)file, offset, length, flags | BASS_UNICODE); +} + +static inline HSTREAM BASS_StreamCreateURL(const WCHAR *url, DWORD offset, DWORD flags, DOWNLOADPROC *proc, void *user) +{ + return BASS_StreamCreateURL((const char*)url, offset, flags | BASS_UNICODE, proc, user); +} + +static inline BOOL BASS_SetConfigPtr(DWORD option, const WCHAR *value) +{ + return BASS_SetConfigPtr(option | BASS_UNICODE, (const void*)value); +} +#endif +#endif + +#ifdef __OBJC__ +#undef BOOL +#endif + +#endif diff --git a/examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/x64/libbass.dylib b/examples/2024-01-15-zig-build-explained/part2/2.3/bass/linux/x64/libbass.dylib new file mode 100644 index 0000000000000000000000000000000000000000..5a76f93bbb98d64ab69f6e8c221878fc5b100ffc GIT binary patch literal 873584 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

(i2t&pSwbh%Hwx01O9!8aZ3uAOZXcgOU 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μxALLXb99i3Bj#S5AOca{`MHiBe;TLuB*` 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
bASp1IFP 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

wblmK5;csHrM>RN0cfFF^@KzeV)jb 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 CslR&w literal 0 HcmV?d00001 diff --git a/examples/2024-01-15-zig-build-explained/part2/2.3/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.3/build.zig new file mode 100644 index 0000000..b33be1a --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.3/build.zig @@ -0,0 +1,22 @@ +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("bass-player.c"), .flags = &.{} }); + exe.addIncludePath(std.build.LazyPath.relative("bass/linux")); + exe.addLibraryPath(std.build.LazyPath.relative("bass/linux/x64")); + exe.linkSystemLibraryName("bass"); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.4/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.4/build.zig new file mode 100644 index 0000000..79785c2 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.4/build.zig @@ -0,0 +1,21 @@ +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("multi-main.c"), .flags = &.{} }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("multi.c"), .flags = &.{ "-I", "inc1" } }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("multi.c"), .flags = &.{ "-I", "inc2" } }); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.4/inc1/api.h b/examples/2024-01-15-zig-build-explained/part2/2.4/inc1/api.h new file mode 100644 index 0000000..c40d6a9 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.4/inc1/api.h @@ -0,0 +1 @@ +#define API_NAME foo diff --git a/examples/2024-01-15-zig-build-explained/part2/2.4/inc2/api.h b/examples/2024-01-15-zig-build-explained/part2/2.4/inc2/api.h new file mode 100644 index 0000000..711a4e9 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.4/inc2/api.h @@ -0,0 +1 @@ +#define API_NAME bar diff --git a/examples/2024-01-15-zig-build-explained/part2/2.4/multi-main.c b/examples/2024-01-15-zig-build-explained/part2/2.4/multi-main.c new file mode 100644 index 0000000..ee0fe12 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.4/multi-main.c @@ -0,0 +1,10 @@ +#include +void foo(); +void bar(); + +int main() +{ + foo(); + bar(); + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.4/multi.c b/examples/2024-01-15-zig-build-explained/part2/2.4/multi.c new file mode 100644 index 0000000..a7b8bbb --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.4/multi.c @@ -0,0 +1,10 @@ +#include +#include + +#define S(X) #X +#define SS(X) S(X) + +void API_NAME() +{ + printf(SS(API_NAME) "\n"); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.5/buffer.cc b/examples/2024-01-15-zig-build-explained/part2/2.5/buffer.cc new file mode 100644 index 0000000..a722a37 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.5/buffer.cc @@ -0,0 +1,29 @@ +#include +#include +#include + +extern "C" void * buffer_create(size_t len) +{ + return new char[len]; +} + +extern "C" void buffer_destroy(void * ptr) +{ + delete[] (char*)ptr; +} + +extern "C" void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(data), + static_cast(data) + len, + static_cast(buf) + offset); +} + +extern "C" void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(buf) + offset, + static_cast(buf) + offset + len, + static_cast(data)); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.5/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.5/build.zig new file mode 100644 index 0000000..4aff5bb --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.5/build.zig @@ -0,0 +1,23 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("main.c"), .flags = &.{} }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("buffer.cc"), .flags = &.{} }); + exe.linkLibC(); + exe.linkLibCpp(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.5/main.c b/examples/2024-01-15-zig-build-explained/part2/2.5/main.c new file mode 100644 index 0000000..59828bc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.5/main.c @@ -0,0 +1,22 @@ +#include + +void * buffer_create(size_t len); +void buffer_destroy(void * ptr); +void buffer_write(void * buf, size_t offset, void * data, size_t len); +void buffer_read(void * buf, size_t offset, void * data, size_t len); + +int main() +{ + void * buf = buffer_create(8); + buffer_write(buf, 0, "World", 6); + + { + char str[8]; + buffer_read(buf, 0, str, 6); + printf("Hello, %s!\n", str); + } + + buffer_destroy(buf); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.6/buffer.cc b/examples/2024-01-15-zig-build-explained/part2/2.6/buffer.cc new file mode 100644 index 0000000..a722a37 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.6/buffer.cc @@ -0,0 +1,29 @@ +#include +#include +#include + +extern "C" void * buffer_create(size_t len) +{ + return new char[len]; +} + +extern "C" void buffer_destroy(void * ptr) +{ + delete[] (char*)ptr; +} + +extern "C" void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(data), + static_cast(data) + len, + static_cast(buf) + offset); +} + +extern "C" void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(buf) + offset, + static_cast(buf) + offset + len, + static_cast(data)); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.6/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.6/build.zig new file mode 100644 index 0000000..afd4ab6 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.6/build.zig @@ -0,0 +1,23 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("main.c"), .flags = &.{"-std=c90"} }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("buffer.cc"), .flags = &.{"-std=c++17"} }); + exe.linkLibC(); + exe.linkLibCpp(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.6/main.c b/examples/2024-01-15-zig-build-explained/part2/2.6/main.c new file mode 100644 index 0000000..59828bc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.6/main.c @@ -0,0 +1,22 @@ +#include + +void * buffer_create(size_t len); +void buffer_destroy(void * ptr); +void buffer_write(void * buf, size_t offset, void * data, size_t len); +void buffer_read(void * buf, size_t offset, void * data, size_t len); + +int main() +{ + void * buf = buffer_create(8); + buffer_write(buf, 0, "World", 6); + + { + char str[8]; + buffer_read(buf, 0, str, 6); + printf("Hello, %s!\n", str); + } + + buffer_destroy(buf); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.7/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.7/build.zig new file mode 100644 index 0000000..be8469e --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.7/build.zig @@ -0,0 +1,30 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const use_platform_io = b.option(bool, "platform-io", "Uses the native api instead of the C wrapper") orelse true; + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("print-main.c"), .flags = &.{} }); + if (use_platform_io) { + exe.defineCMacro("USE_PLATFORM_IO", null); + if (exe.target.isWindows()) { + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("print-windows.c"), .flags = &.{} }); + } else { + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("print-unix.c"), .flags = &.{} }); + } + } + exe.linkLibC(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.7/print-main.c b/examples/2024-01-15-zig-build-explained/part2/2.7/print-main.c new file mode 100644 index 0000000..52bd504 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.7/print-main.c @@ -0,0 +1,16 @@ +#include + +#ifdef USE_PLATFORM_IO +extern void printText(char const * str); +#else +void printText(char const * str) +{ + fputs(str, stdout); +} +#endif + +int main() +{ + printText("Hello, cross platform code!\n"); + return 0; +} \ No newline at end of file diff --git a/examples/2024-01-15-zig-build-explained/part2/2.7/print-unix.c b/examples/2024-01-15-zig-build-explained/part2/2.7/print-unix.c new file mode 100644 index 0000000..05a65fc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.7/print-unix.c @@ -0,0 +1,7 @@ +#include +#include + +void printText(char const * str) +{ + write(STDOUT_FILENO, str, strlen(str)); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.7/print-windows.c b/examples/2024-01-15-zig-build-explained/part2/2.7/print-windows.c new file mode 100644 index 0000000..3049ca7 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.7/print-windows.c @@ -0,0 +1,10 @@ +#include +#include + +void printText(char const * str) +{ + HANDLE h = GetStdHandle(STD_OUTPUT_HANDLE); + + DWORD bytes_written; + WriteFile(h, str, strlen(str), &bytes_written, NULL); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.8/buffer.cc b/examples/2024-01-15-zig-build-explained/part2/2.8/buffer.cc new file mode 100644 index 0000000..a722a37 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.8/buffer.cc @@ -0,0 +1,29 @@ +#include +#include +#include + +extern "C" void * buffer_create(size_t len) +{ + return new char[len]; +} + +extern "C" void buffer_destroy(void * ptr) +{ + delete[] (char*)ptr; +} + +extern "C" void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(data), + static_cast(data) + len, + static_cast(buf) + offset); +} + +extern "C" void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(buf) + offset, + static_cast(buf) + offset + len, + static_cast(data)); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.8/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.8/build.zig new file mode 100644 index 0000000..6d7096b --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.8/build.zig @@ -0,0 +1,40 @@ +//demo2.8 +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + const flags = .{ + "-Wall", + "-Wextra", + "-Werror=return-type", + }; + const cflags = flags ++ .{"-std=c99"}; + const cppflags = cflags ++ .{ + "-std=c++17", + "-stdlib=libc++", + "-fno-exceptions", + }; + exe.addCSourceFile(.{ + .file = std.build.LazyPath.relative("main.c"), + .flags = &cflags, + }); + exe.addCSourceFile(.{ + .file = std.build.LazyPath.relative("buffer.cc"), + .flags = &cppflags, + }); + exe.linkLibC(); + exe.linkLibCpp(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.8/main.c b/examples/2024-01-15-zig-build-explained/part2/2.8/main.c new file mode 100644 index 0000000..59828bc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.8/main.c @@ -0,0 +1,22 @@ +#include + +void * buffer_create(size_t len); +void buffer_destroy(void * ptr); +void buffer_write(void * buf, size_t offset, void * data, size_t len); +void buffer_read(void * buf, size_t offset, void * data, size_t len); + +int main() +{ + void * buf = buffer_create(8); + buffer_write(buf, 0, "World", 6); + + { + char str[8]; + buffer_read(buf, 0, str, 6); + printf("Hello, %s!\n", str); + } + + buffer_destroy(buf); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.9/buffer.cc b/examples/2024-01-15-zig-build-explained/part2/2.9/buffer.cc new file mode 100644 index 0000000..a722a37 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.9/buffer.cc @@ -0,0 +1,29 @@ +#include +#include +#include + +extern "C" void * buffer_create(size_t len) +{ + return new char[len]; +} + +extern "C" void buffer_destroy(void * ptr) +{ + delete[] (char*)ptr; +} + +extern "C" void buffer_write(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(data), + static_cast(data) + len, + static_cast(buf) + offset); +} + +extern "C" void buffer_read(void * buf, size_t offset, void * data, size_t len) +{ + std::copy( + static_cast(buf) + offset, + static_cast(buf) + offset + len, + static_cast(data)); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.9/build.zig b/examples/2024-01-15-zig-build-explained/part2/2.9/build.zig new file mode 100644 index 0000000..f60ae42 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.9/build.zig @@ -0,0 +1,43 @@ +//demo2.9 +const std = @import("std"); +pub fn build(b: *std.build.Builder) !void { + var sources = std.ArrayList([]const u8).init(b.allocator); + // Search for all C/C++ files in `src` and add them + { + var dir = try std.fs.cwd().openIterableDir(".", .{ .access_sub_paths = true }); + + var walker = try dir.walk(b.allocator); + defer walker.deinit(); + + const allowed_exts = [_][]const u8{ ".c", ".cpp", ".cxx", ".c++", ".cc" }; + while (try walker.next()) |entry| { + const ext = std.fs.path.extension(entry.basename); + const include_file = for (allowed_exts) |e| { + if (std.mem.eql(u8, ext, e)) + break true; + } else false; + if (include_file) { + // we have to clone the path as walker.next() or walker.deinit() will override/kill it + try sources.append(b.dupe(entry.path)); + } + } + } + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .target = target, + .optimize = optimize, + }); + exe.addCSourceFiles(sources.items, &.{}); + exe.linkLibC(); + exe.linkLibCpp(); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part2/2.9/main.c b/examples/2024-01-15-zig-build-explained/part2/2.9/main.c new file mode 100644 index 0000000..59828bc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/2.9/main.c @@ -0,0 +1,22 @@ +#include + +void * buffer_create(size_t len); +void buffer_destroy(void * ptr); +void buffer_write(void * buf, size_t offset, void * data, size_t len); +void buffer_read(void * buf, size_t offset, void * data, size_t len); + +int main() +{ + void * buf = buffer_create(8); + buffer_write(buf, 0, "World", 6); + + { + char str[8]; + buffer_read(buf, 0, str, 6); + printf("Hello, %s!\n", str); + } + + buffer_destroy(buf); + + return 0; +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.1/foo.ihex b/examples/2024-01-15-zig-build-explained/part3/3.1/foo.ihex new file mode 100644 index 0000000..e69de29 diff --git a/examples/2024-01-15-zig-build-explained/part3/3.1/ihex.zig b/examples/2024-01-15-zig-build-explained/part3/3.1/ihex.zig new file mode 100644 index 0000000..ffabca0 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.1/ihex.zig @@ -0,0 +1,3 @@ +pub fn loadFile(str: []const u8) ![]const u8 { + return str; +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.1/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.1/main.zig new file mode 100644 index 0000000..ff0f841 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.1/main.zig @@ -0,0 +1,9 @@ +const std = @import("std"); // imports the "std" package +const ihex = @import("ihex"); // imports the "ihex" package +const tools = @import("tools.zig"); // imports the file "tools.zig" + +pub fn main() !void { + const data = try tools.loadFile("foo.ihex"); + const hex_file = try ihex.parse(data); + std.debug.print("foo.ihex = {}\n", .{hex_file}); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.1/tools.zig b/examples/2024-01-15-zig-build-explained/part3/3.1/tools.zig new file mode 100644 index 0000000..ffabca0 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.1/tools.zig @@ -0,0 +1,3 @@ +pub fn loadFile(str: []const u8) ![]const u8 { + return str; +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.2/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.2/build.zig new file mode 100644 index 0000000..7e05107 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.2/build.zig @@ -0,0 +1,22 @@ +const std = @import("std"); + +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "example", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + exe.linkLibC(); + exe.linkSystemLibrary("curl"); + b.installArtifact(exe); + const run_cmd = b.addRunArtifact(exe); + run_cmd.step.dependOn(b.getInstallStep()); + if (b.args) |args| { + run_cmd.addArgs(args); + } + const run_step = b.step("run", "Run the app"); + run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.2/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.2/main.zig new file mode 100644 index 0000000..f331310 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.2/main.zig @@ -0,0 +1,5 @@ +const std = @import("std"); // imports the "std" package + +pub fn main() !void { + std.debug.print("hi\n", .{}); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.3/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.3/build.zig new file mode 100644 index 0000000..fd8c2a3 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.3/build.zig @@ -0,0 +1,16 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + b.installArtifact(exe); + exe.linkLibC(); + exe.addIncludePath(.{ .path = "vendor/libcurl/include" }); + exe.addLibraryPath(.{ .path = "vendor/libcurl/lib" }); + exe.linkSystemLibraryName("curl"); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.3/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.3/main.zig new file mode 100644 index 0000000..f331310 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.3/main.zig @@ -0,0 +1,5 @@ +const std = @import("std"); // imports the "std" package + +pub fn main() !void { + std.debug.print("hi\n", .{}); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.4/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.4/build.zig new file mode 100644 index 0000000..64cd758 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.4/build.zig @@ -0,0 +1,16 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + b.installArtifact(exe); + exe.linkLibC(); + exe.addIncludePath(.{ .path = "/usr/local/Cellar/curl/8.5.0/include" }); + exe.addLibraryPath(.{ .path = "/usr/local/Cellar/curl/8.5.0/lib" }); + exe.addObjectFile(.{ .path = "/usr/local/Cellar/curl/8.5.0/lib/libcurl.a" }); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.4/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.4/main.zig new file mode 100644 index 0000000..f331310 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.4/main.zig @@ -0,0 +1,5 @@ +const std = @import("std"); // imports the "std" package + +pub fn main() !void { + std.debug.print("hi\n", .{}); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig new file mode 100644 index 0000000..a8af657 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig @@ -0,0 +1,18 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = optimize, + }); + const cmd = b.addSystemCommand(&.{ + "flex", + "-outfile=lines.c", + "lines.l", + }); + b.installArtifact(exe); + exe.step.dependOn(&cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.6/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.6/build.zig new file mode 100644 index 0000000..02ce654 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.6/build.zig @@ -0,0 +1,15 @@ +const std = @import("std"); +pub fn build(b: *std.build.Builder) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + b.installArtifact(exe); + const cmd = b.addSystemCommand(&.{"size"}); + cmd.addArtifactArg(exe); + b.getInstallStep().dependOn(&cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.6/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.6/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.6/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig new file mode 100644 index 0000000..758c2a3 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig @@ -0,0 +1,87 @@ +const std = @import("std"); + +pub fn build(b: *std.build.Builder) void { + const mode = b.standardOptimizeOption(.{}); + // const mode = b.standardReleaseOptions(); + + const target = b.standardTargetOptions(.{}); + + // Generates the lex-based parser + const parser_gen = b.addSystemCommand(&[_][]const u8{ + "flex", + "--outfile=review-parser.c", + "review-parser.l", + }); + + // Our application + const exe = b.addExecutable(.{ + .name = "upload-review", + .root_source_file = .{ .path = "src/main.zig" }, + .target = target, + .optimize = mode, + }); + + { + exe.step.dependOn(&parser_gen.step); + + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); + + // add zig-args to parse arguments + + const ap = b.createModule(.{ + .source_file = .{ .path = "vendor/zig-args/args.zig" }, + .dependencies = &.{}, + }); + exe.addModule("args-parser", ap); + + // add libcurl for uploading + exe.addIncludePath(std.build.LazyPath.relative("vendor/libcurl/include")); + exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); + + exe.linkLibC(); + b.installArtifact(exe); + // exe.install(); + } + + // Our test suite + const test_step = b.step("test", "Runs the test suite"); + const test_suite = b.addTest(.{ + .root_source_file = .{ .path = "src/tests.zig" }, + }); + + test_suite.step.dependOn(&parser_gen.step); + exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); + + // add libcurl for uploading + exe.addIncludePath(std.build.LazyPath.relative("vendor/libcurl/include")); + exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); + + test_suite.linkLibC(); + + test_step.dependOn(&test_suite.step); + + { + const deploy_step = b.step("deploy", "Creates an application bundle"); + + // compile the app bundler + const deploy_tool = b.addExecutable(.{ + .name = "deploy", + .root_source_file = .{ .path = "tools/deploy.zig" }, + .target = target, + .optimize = mode, + }); + + { + deploy_tool.linkLibC(); + deploy_tool.linkSystemLibrary("libzip"); + } + + const bundle_app = b.addRunArtifact(deploy_tool); + bundle_app.addArg("app-bundle.zip"); + bundle_app.addArtifactArg(exe); + bundle_app.addArg("resources/index.htm"); + bundle_app.addArg("resources/style.css"); + + deploy_step.dependOn(&bundle_app.step); + } +} diff --git a/examples/2024-01-15-zig-build-explained/readme.md b/examples/2024-01-15-zig-build-explained/readme.md new file mode 100644 index 0000000..89608dd --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/readme.md @@ -0,0 +1,7 @@ +# 代码说明 + +1. 本目录内代码为`Zig构建系统解析`系列文章的配套代码,这些配套代码都是可以通过`$zig build`以及`zig build run`来构建和运行的 +2. `Zig构建系统解析`共三个部分,配套代码分别在三个子目录内,分别为`part1`,`part2`,`part3`内 +3. 文章发内的代码段都有编号,编号在代码块的第一行的标注内,此编号对应代码工程文件的目录,比如代码编号为1.1的,对于的代码在`part1/1.1` +4. 每一个代码块的对应工程目录内都有一个`build.zig`文件,当你看到此文件,就意味着可以使用`$zig build run`命令来构建并运行 +5. 此`build.zig`依赖的zig文件,c文件,m文件等都在对应目录之内,可以查看`build.zig`了解工程依赖的文件清单 \ No newline at end of file From dcd63775e5039e2970b7a83ed00a65b9472eb7ec Mon Sep 17 00:00:00 2001 From: 1000copy <1000copy@gmail.com> Date: Mon, 15 Jan 2024 21:50:17 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=B8=BA=E4=BA=86=E9=80=9A=E8=BF=87./all.s?= =?UTF-8?q?h=20,=E5=81=9A=E4=BA=86=E4=B8=80=E7=95=AA=E8=A7=84=E8=8C=83?= =?UTF-8?q?=E5=8C=96=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2024-01-15-zig-build-explained/all.sh | 10 + .../2024-01-15-zig-build-explained/build.zig | 27 + .../2024-01-15-zig-build-explained/main.zig | 5 + .../part1/part.sh | 8 + .../part2/part.sh | 8 + .../part3/3.5/build.zig | 12 +- .../part3/3.5/src/main.zig | 10 + .../part3/3.7/build.zig | 25 +- .../part3/3.7/review-parser.c | 1780 +++++++++++++++++ .../part3/3.7/review-parser.l | 31 + .../part3/3.7/src/main.zig | 10 + .../part3/part.sh | 10 + .../2024-01-15-zig-build-explained/readme.md | 2 +- 13 files changed, 1920 insertions(+), 18 deletions(-) create mode 100755 examples/2024-01-15-zig-build-explained/all.sh create mode 100644 examples/2024-01-15-zig-build-explained/build.zig create mode 100644 examples/2024-01-15-zig-build-explained/main.zig create mode 100755 examples/2024-01-15-zig-build-explained/part1/part.sh create mode 100755 examples/2024-01-15-zig-build-explained/part2/part.sh create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.5/src/main.zig create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.c create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.l create mode 100644 examples/2024-01-15-zig-build-explained/part3/3.7/src/main.zig create mode 100755 examples/2024-01-15-zig-build-explained/part3/part.sh diff --git a/examples/2024-01-15-zig-build-explained/all.sh b/examples/2024-01-15-zig-build-explained/all.sh new file mode 100755 index 0000000..bdc979e --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/all.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +echo "Run Entry..." +DIR="$(dirname "$(realpath "$0")")" +for ex in `ls -d */`;do + echo "Run ${ex}..." + cd ${DIR}/${ex} + if [ -f part.sh ]; then + ./part.sh + fi +done \ No newline at end of file diff --git a/examples/2024-01-15-zig-build-explained/build.zig b/examples/2024-01-15-zig-build-explained/build.zig new file mode 100644 index 0000000..c10063c --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/build.zig @@ -0,0 +1,27 @@ +const std = @import("std"); +pub fn build(b: *std.Build) void { + const target = b.standardTargetOptions(.{}); + const optimize = b.standardOptimizeOption(.{}); + const exe = b.addExecutable(.{ + .name = "test", + .root_source_file = .{ .path = "main.zig" }, + .target = target, + .optimize = optimize, + }); + // b.installArtifact(exe); + const cmd = b.addSystemCommand(&.{ + "./all.sh", + // "-outfile=lines.c", + // "lines.l", + }); + + exe.step.dependOn(&cmd.step); + b.installArtifact(exe); + // const run_cmd = b.addRunArtifact(exe); + // run_cmd.step.dependOn(b.getInstallStep()); + // if (b.args) |args| { + // run_cmd.addArgs(args); + // } + // const run_step = b.step("run", "Run the app"); + // run_step.dependOn(&run_cmd.step); +} diff --git a/examples/2024-01-15-zig-build-explained/main.zig b/examples/2024-01-15-zig-build-explained/main.zig new file mode 100644 index 0000000..c9038b3 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/main.zig @@ -0,0 +1,5 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("{s}\n", .{""}); +} diff --git a/examples/2024-01-15-zig-build-explained/part1/part.sh b/examples/2024-01-15-zig-build-explained/part1/part.sh new file mode 100755 index 0000000..c7df642 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part1/part.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +echo "Run Part..." +DIR="$(dirname "$(realpath "$0")")" +for ex in `ls -d */`;do + echo "Run example ${ex}..." + cd ${DIR}/${ex} + zig build --summary none +done diff --git a/examples/2024-01-15-zig-build-explained/part2/part.sh b/examples/2024-01-15-zig-build-explained/part2/part.sh new file mode 100755 index 0000000..c7df642 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part2/part.sh @@ -0,0 +1,8 @@ +#!/usr/bin/env bash +echo "Run Part..." +DIR="$(dirname "$(realpath "$0")")" +for ex in `ls -d */`;do + echo "Run example ${ex}..." + cd ${DIR}/${ex} + zig build --summary none +done diff --git a/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig index a8af657..90b2976 100644 --- a/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig +++ b/examples/2024-01-15-zig-build-explained/part3/3.5/build.zig @@ -8,11 +8,11 @@ pub fn build(b: *std.build.Builder) void { .target = target, .optimize = optimize, }); - const cmd = b.addSystemCommand(&.{ - "flex", - "-outfile=lines.c", - "lines.l", - }); + // const cmd = b.addSystemCommand(&.{ + // "flex", + // "-outfile=lines.c", + // "lines.l", + // }); b.installArtifact(exe); - exe.step.dependOn(&cmd.step); + // exe.step.dependOn(&cmd.step); } diff --git a/examples/2024-01-15-zig-build-explained/part3/3.5/src/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.5/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.5/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig b/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig index 758c2a3..f1ec6e8 100644 --- a/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig +++ b/examples/2024-01-15-zig-build-explained/part3/3.7/build.zig @@ -23,20 +23,21 @@ pub fn build(b: *std.build.Builder) void { { exe.step.dependOn(&parser_gen.step); - - exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); - + // todo 作为译者我太难了。这个原作者没有提供各种依赖文件,我自己拼太难了,可以build通过但是无法执行通过 + // exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); + // todo 作为译者我太难了。这个原作者没有提供各种依赖文件,我自己拼太难了,可以build通过但是无法执行通过 // add zig-args to parse arguments - const ap = b.createModule(.{ - .source_file = .{ .path = "vendor/zig-args/args.zig" }, - .dependencies = &.{}, - }); - exe.addModule("args-parser", ap); + // const ap = b.createModule(.{ + // .source_file = .{ .path = "vendor/zig-args/args.zig" }, + // .dependencies = &.{}, + // }); + // exe.addModule("args-parser", ap); // add libcurl for uploading exe.addIncludePath(std.build.LazyPath.relative("vendor/libcurl/include")); - exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); + // todo 作为译者我太难了。这个原作者没有提供各种依赖文件,我自己拼太难了,可以build通过但是无法执行通过 + // exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); exe.linkLibC(); b.installArtifact(exe); @@ -50,11 +51,13 @@ pub fn build(b: *std.build.Builder) void { }); test_suite.step.dependOn(&parser_gen.step); - exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); + // todo 作为译者我太难了。这个原作者没有提供各种依赖文件,我自己拼太难了,可以build通过但是无法执行通过 + // exe.addCSourceFile(.{ .file = std.build.LazyPath.relative("review-parser.c"), .flags = &.{} }); // add libcurl for uploading exe.addIncludePath(std.build.LazyPath.relative("vendor/libcurl/include")); - exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); + // todo 作为译者我太难了。这个原作者没有提供各种依赖文件,我自己拼太难了,可以build通过但是无法执行通过 + // exe.addObjectFile(std.build.LazyPath.relative("vendor/libcurl/lib/libcurl.a")); test_suite.linkLibC(); diff --git a/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.c b/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.c new file mode 100644 index 0000000..b8df2cb --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.c @@ -0,0 +1,1780 @@ +#line 1 "review-parser.c" + +#line 3 "review-parser.c" + +#define YY_INT_ALIGNED short int + +/* A lexical scanner generated by flex */ + +#define FLEX_SCANNER +#define YY_FLEX_MAJOR_VERSION 2 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 4 +#if YY_FLEX_SUBMINOR_VERSION > 0 +#define FLEX_BETA +#endif + +/* First, we deal with platform-specific or compiler-specific issues. */ + +/* begin standard C headers. */ +#include +#include +#include +#include + +/* end standard C headers. */ + +/* flex integer type definitions */ + +#ifndef FLEXINT_H +#define FLEXINT_H + +/* C99 systems have . Non-C99 systems may or may not. */ + +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L + +/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, + * if you want the limit (max/min) macros for int types. + */ +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS 1 +#endif + +#include +typedef int8_t flex_int8_t; +typedef uint8_t flex_uint8_t; +typedef int16_t flex_int16_t; +typedef uint16_t flex_uint16_t; +typedef int32_t flex_int32_t; +typedef uint32_t flex_uint32_t; +typedef uint64_t flex_uint64_t; +#else +typedef signed char flex_int8_t; +typedef short int flex_int16_t; +typedef int flex_int32_t; +typedef unsigned char flex_uint8_t; +typedef unsigned short int flex_uint16_t; +typedef unsigned int flex_uint32_t; + +/* Limits of integral types. */ +#ifndef INT8_MIN +#define INT8_MIN (-128) +#endif +#ifndef INT16_MIN +#define INT16_MIN (-32767-1) +#endif +#ifndef INT32_MIN +#define INT32_MIN (-2147483647-1) +#endif +#ifndef INT8_MAX +#define INT8_MAX (127) +#endif +#ifndef INT16_MAX +#define INT16_MAX (32767) +#endif +#ifndef INT32_MAX +#define INT32_MAX (2147483647) +#endif +#ifndef UINT8_MAX +#define UINT8_MAX (255U) +#endif +#ifndef UINT16_MAX +#define UINT16_MAX (65535U) +#endif +#ifndef UINT32_MAX +#define UINT32_MAX (4294967295U) +#endif + +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + +#endif /* ! C99 */ + +#endif /* ! FLEXINT_H */ + +/* begin standard C++ headers. */ + +/* TODO: this is always defined, so inline it */ +#define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) +#else +#define yynoreturn +#endif + +/* Returned upon end-of-file. */ +#define YY_NULL 0 + +/* Promotes a possibly negative, possibly signed char to an + * integer in range [0..255] for use as an array index. + */ +#define YY_SC_TO_UI(c) ((YY_CHAR) (c)) + +/* Enter a start condition. This macro really ought to take a parameter, + * but we do it the disgusting crufty way forced on us by the ()-less + * definition of BEGIN. + */ +#define BEGIN (yy_start) = 1 + 2 * +/* Translate the current start state into a value that can be later handed + * to BEGIN to return to the state. The YYSTATE alias is for lex + * compatibility. + */ +#define YY_START (((yy_start) - 1) / 2) +#define YYSTATE YY_START +/* Action number for EOF rule of a given start state. */ +#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) +/* Special action meaning "start processing a new file". */ +#define YY_NEW_FILE yyrestart( yyin ) +#define YY_END_OF_BUFFER_CHAR 0 + +/* Size of default input buffer. */ +#ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else +#define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ +#endif + +/* The state buf must be large enough to hold one state per character in the main buffer. + */ +#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type)) + +#ifndef YY_TYPEDEF_YY_BUFFER_STATE +#define YY_TYPEDEF_YY_BUFFER_STATE +typedef struct yy_buffer_state *YY_BUFFER_STATE; +#endif + +#ifndef YY_TYPEDEF_YY_SIZE_T +#define YY_TYPEDEF_YY_SIZE_T +typedef size_t yy_size_t; +#endif + +extern yy_size_t yyleng; + +extern FILE *yyin, *yyout; + +#define EOB_ACT_CONTINUE_SCAN 0 +#define EOB_ACT_END_OF_FILE 1 +#define EOB_ACT_LAST_MATCH 2 + + #define YY_LESS_LINENO(n) + #define YY_LINENO_REWIND_TO(ptr) + +/* Return all but the first "n" matched characters back to the input stream. */ +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + int yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + *yy_cp = (yy_hold_char); \ + YY_RESTORE_YY_MORE_OFFSET \ + (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ + YY_DO_BEFORE_ACTION; /* set up yytext again */ \ + } \ + while ( 0 ) +#define unput(c) yyunput( c, (yytext_ptr) ) + +#ifndef YY_STRUCT_YY_BUFFER_STATE +#define YY_STRUCT_YY_BUFFER_STATE +struct yy_buffer_state + { + FILE *yy_input_file; + + char *yy_ch_buf; /* input buffer */ + char *yy_buf_pos; /* current position in input buffer */ + + /* Size of input buffer in bytes, not including room for EOB + * characters. + */ + int yy_buf_size; + + /* Number of characters read into yy_ch_buf, not including EOB + * characters. + */ + yy_size_t yy_n_chars; + + /* Whether we "own" the buffer - i.e., we know we created it, + * and can realloc() it to grow it, and should free() it to + * delete it. + */ + int yy_is_our_buffer; + + /* Whether this is an "interactive" input source; if so, and + * if we're using stdio for input, then we want to use getc() + * instead of fread(), to make sure we stop fetching input after + * each newline. + */ + int yy_is_interactive; + + /* Whether we're considered to be at the beginning of a line. + * If so, '^' rules will be active on the next match, otherwise + * not. + */ + int yy_at_bol; + + int yy_bs_lineno; /**< The line count. */ + int yy_bs_column; /**< The column count. */ + + /* Whether to try to fill the input buffer when we reach the + * end of it. + */ + int yy_fill_buffer; + + int yy_buffer_status; + +#define YY_BUFFER_NEW 0 +#define YY_BUFFER_NORMAL 1 + /* When an EOF's been seen but there's still some text to process + * then we mark the buffer as YY_EOF_PENDING, to indicate that we + * shouldn't try reading from the input source any more. We might + * still have a bunch of tokens to match, though, because of + * possible backing-up. + * + * When we actually see the EOF, we change the status to "new" + * (via yyrestart()), so that the user can continue scanning by + * just pointing yyin at a new input file. + */ +#define YY_BUFFER_EOF_PENDING 2 + + }; +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ + +/* Stack of input buffers. */ +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ +static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */ + +/* We provide macros for accessing buffer states in case in the + * future we want to put the buffer states in a more general + * "scanner state". + * + * Returns the top of the stack, or NULL. + */ +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ + ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ + : NULL) +/* Same as previous macro, but useful when we know that the buffer stack is not + * NULL or when we need an lvalue. For internal use only. + */ +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] + +/* yy_hold_char holds the character lost when yytext is formed. */ +static char yy_hold_char; +static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ +yy_size_t yyleng; + +/* Points to current character in buffer. */ +static char *yy_c_buf_p = NULL; +static int yy_init = 0; /* whether we need to initialize */ +static int yy_start = 0; /* start state number */ + +/* Flag which is used to allow yywrap()'s to do buffer switches + * instead of setting up a fresh yyin. A bit of a hack ... + */ +static int yy_did_buffer_switch_on_eof; + +void yyrestart ( FILE *input_file ); +void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); +void yy_delete_buffer ( YY_BUFFER_STATE b ); +void yy_flush_buffer ( YY_BUFFER_STATE b ); +void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); +void yypop_buffer_state ( void ); + +static void yyensure_buffer_stack ( void ); +static void yy_load_buffer_state ( void ); +static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); +#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) + +YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); +YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); +YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, yy_size_t len ); + +void *yyalloc ( yy_size_t ); +void *yyrealloc ( void *, yy_size_t ); +void yyfree ( void * ); + +#define yy_new_buffer yy_create_buffer +#define yy_set_interactive(is_interactive) \ + { \ + if ( ! YY_CURRENT_BUFFER ){ \ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ + } +#define yy_set_bol(at_bol) \ + { \ + if ( ! YY_CURRENT_BUFFER ){\ + yyensure_buffer_stack (); \ + YY_CURRENT_BUFFER_LVALUE = \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ + } \ + YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ + } +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) + +/* Begin user sect3 */ +typedef flex_uint8_t YY_CHAR; + +FILE *yyin = NULL, *yyout = NULL; + +typedef int yy_state_type; + +extern int yylineno; +int yylineno = 1; + +extern char *yytext; +#ifdef yytext_ptr +#undef yytext_ptr +#endif +#define yytext_ptr yytext + +static yy_state_type yy_get_previous_state ( void ); +static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); +static int yy_get_next_buffer ( void ); +static void yynoreturn yy_fatal_error ( const char* msg ); + +/* Done after the current pattern has been matched and before the + * corresponding action - sets up yytext. + */ +#define YY_DO_BEFORE_ACTION \ + (yytext_ptr) = yy_bp; \ + yyleng = (yy_size_t) (yy_cp - yy_bp); \ + (yy_hold_char) = *yy_cp; \ + *yy_cp = '\0'; \ + (yy_c_buf_p) = yy_cp; +#define YY_NUM_RULES 4 +#define YY_END_OF_BUFFER 5 +/* This struct is not used in this scanner, + but its presence is necessary. */ +struct yy_trans_info + { + flex_int32_t yy_verify; + flex_int32_t yy_nxt; + }; +static const flex_int16_t yy_accept[19] = + { 0, + 0, 0, 5, 3, 4, 3, 3, 3, 3, 0, + 0, 0, 0, 1, 0, 2, 0, 0 + } ; + +static const YY_CHAR yy_ec[256] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 4, 5, 1, + + 6, 1, 1, 7, 8, 1, 1, 1, 1, 1, + 9, 1, 1, 1, 1, 10, 11, 1, 1, 1, + 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1 + } ; + +static const YY_CHAR yy_meta[13] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1 + } ; + +static const flex_int16_t yy_base[19] = + { 0, + 0, 0, 23, 24, 24, 10, 13, 12, 14, 12, + 15, 9, 13, 24, 11, 24, 2, 24 + } ; + +static const flex_int16_t yy_def[19] = + { 0, + 18, 1, 18, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18, 18, 0 + } ; + +static const flex_int16_t yy_nxt[37] = + { 0, + 4, 5, 4, 6, 4, 4, 7, 4, 8, 9, + 4, 4, 13, 17, 16, 15, 14, 13, 12, 11, + 11, 10, 18, 3, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18 + } ; + +static const flex_int16_t yy_chk[37] = + { 0, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 17, 15, 13, 12, 11, 10, 9, 8, + 7, 6, 3, 18, 18, 18, 18, 18, 18, 18, + 18, 18, 18, 18, 18, 18 + } ; + +static yy_state_type yy_last_accepting_state; +static char *yy_last_accepting_cpos; + +extern int yy_flex_debug; +int yy_flex_debug = 0; + +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ +#define REJECT reject_used_but_not_detected +#define yymore() yymore_used_but_not_detected +#define YY_MORE_ADJ 0 +#define YY_RESTORE_YY_MORE_OFFSET +char *yytext; +#line 1 "review-parser.l" +#line 2 "review-parser.l" + + #include + #include "y.tab.h" + +#line 457 "review-parser.c" +#line 458 "review-parser.c" + +#define INITIAL 0 + +#ifndef YY_NO_UNISTD_H +/* Special case for "unistd.h", since it is non-ANSI. We include it way + * down here because we want the user's section 1 to have been scanned first. + * The user has a chance to override it with an option. + */ +#include +#endif + +#ifndef YY_EXTRA_TYPE +#define YY_EXTRA_TYPE void * +#endif + +static int yy_init_globals ( void ); + +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int yylex_destroy ( void ); + +int yyget_debug ( void ); + +void yyset_debug ( int debug_flag ); + +YY_EXTRA_TYPE yyget_extra ( void ); + +void yyset_extra ( YY_EXTRA_TYPE user_defined ); + +FILE *yyget_in ( void ); + +void yyset_in ( FILE * _in_str ); + +FILE *yyget_out ( void ); + +void yyset_out ( FILE * _out_str ); + + yy_size_t yyget_leng ( void ); + +char *yyget_text ( void ); + +int yyget_lineno ( void ); + +void yyset_lineno ( int _line_number ); + +/* Macros after this point can all be overridden by user definitions in + * section 1. + */ + +#ifndef YY_SKIP_YYWRAP +#ifdef __cplusplus +extern "C" int yywrap ( void ); +#else +extern int yywrap ( void ); +#endif +#endif + +#ifndef YY_NO_UNPUT + + static void yyunput ( int c, char *buf_ptr ); + +#endif + +#ifndef yytext_ptr +static void yy_flex_strncpy ( char *, const char *, int ); +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen ( const char * ); +#endif + +#ifndef YY_NO_INPUT +#ifdef __cplusplus +static int yyinput ( void ); +#else +static int input ( void ); +#endif + +#endif + +/* Amount of stuff to slurp up with each read. */ +#ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else +#define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ +#endif + +/* Copy whatever the last rule matched to the standard output. */ +#ifndef ECHO +/* This used to be an fputs(), but since the string might contain NUL's, + * we now use fwrite(). + */ +#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) +#endif + +/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, + * is returned in "result". + */ +#ifndef YY_INPUT +#define YY_INPUT(buf,result,max_size) \ + if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ + { \ + int c = '*'; \ + yy_size_t n; \ + for ( n = 0; n < max_size && \ + (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ + buf[n] = (char) c; \ + if ( c == '\n' ) \ + buf[n++] = (char) c; \ + if ( c == EOF && ferror( yyin ) ) \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + result = n; \ + } \ + else \ + { \ + errno=0; \ + while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ + { \ + if( errno != EINTR) \ + { \ + YY_FATAL_ERROR( "input in flex scanner failed" ); \ + break; \ + } \ + errno=0; \ + clearerr(yyin); \ + } \ + }\ +\ + +#endif + +/* No semi-colon after return; correct usage is to write "yyterminate();" - + * we don't want an extra ';' after the "return" because that will cause + * some compilers to complain about unreachable statements. + */ +#ifndef yyterminate +#define yyterminate() return YY_NULL +#endif + +/* Number of entries by which start-condition stack grows. */ +#ifndef YY_START_STACK_INCR +#define YY_START_STACK_INCR 25 +#endif + +/* Report a fatal error. */ +#ifndef YY_FATAL_ERROR +#define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) +#endif + +/* end tables serialization structures and prototypes */ + +/* Default declaration of generated scanner - a define so the user can + * easily add parameters. + */ +#ifndef YY_DECL +#define YY_DECL_IS_OURS 1 + +extern int yylex (void); + +#define YY_DECL int yylex (void) +#endif /* !YY_DECL */ + +/* Code executed at the beginning of each rule, after yytext and yyleng + * have been set up. + */ +#ifndef YY_USER_ACTION +#define YY_USER_ACTION +#endif + +/* Code executed at the end of each rule. */ +#ifndef YY_BREAK +#define YY_BREAK /*LINTED*/break; +#endif + +#define YY_RULE_SETUP \ + YY_USER_ACTION + +/** The main scanner function which does all the work. + */ +YY_DECL +{ + yy_state_type yy_current_state; + char *yy_cp, *yy_bp; + int yy_act; + + if ( !(yy_init) ) + { + (yy_init) = 1; + +#ifdef YY_USER_INIT + YY_USER_INIT; +#endif + + if ( ! (yy_start) ) + (yy_start) = 1; /* first start state */ + + if ( ! yyin ) + yyin = stdin; + + if ( ! yyout ) + yyout = stdout; + + if ( ! YY_CURRENT_BUFFER ) { + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } + + yy_load_buffer_state( ); + } + + { +#line 8 "review-parser.l" + + +#line 678 "review-parser.c" + + while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ + { + yy_cp = (yy_c_buf_p); + + /* Support of yytext. */ + *yy_cp = (yy_hold_char); + + /* yy_bp points to the position in yy_ch_buf of the start of + * the current run. + */ + yy_bp = yy_cp; + + yy_current_state = (yy_start); +yy_match: + do + { + YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 19 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + ++yy_cp; + } + while ( yy_base[yy_current_state] != 24 ); + +yy_find_action: + yy_act = yy_accept[yy_current_state]; + if ( yy_act == 0 ) + { /* have to back up */ + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + yy_act = yy_accept[yy_current_state]; + } + + YY_DO_BEFORE_ACTION; + +do_action: /* This label is used only to access EOF actions. */ + + switch ( yy_act ) + { /* beginning of action switch */ + case 0: /* must back up */ + /* undo the effects of YY_DO_BEFORE_ACTION */ + *yy_cp = (yy_hold_char); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + goto yy_find_action; + +case 1: +/* rule 1 can match eol */ +YY_RULE_SETUP +#line 10 "review-parser.l" +{return HI; } + YY_BREAK +case 2: +/* rule 2 can match eol */ +YY_RULE_SETUP +#line 11 "review-parser.l" +{return BYE;} + YY_BREAK +case 3: +YY_RULE_SETUP +#line 12 "review-parser.l" +{yyerror(); } + YY_BREAK +case 4: +YY_RULE_SETUP +#line 14 "review-parser.l" +ECHO; + YY_BREAK +#line 757 "review-parser.c" +case YY_STATE_EOF(INITIAL): + yyterminate(); + + case YY_END_OF_BUFFER: + { + /* Amount of text matched not including the EOB char. */ + int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; + + /* Undo the effects of YY_DO_BEFORE_ACTION. */ + *yy_cp = (yy_hold_char); + YY_RESTORE_YY_MORE_OFFSET + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) + { + /* We're scanning a new file or input source. It's + * possible that this happened because the user + * just pointed yyin at a new source and called + * yylex(). If so, then we have to assure + * consistency between YY_CURRENT_BUFFER and our + * globals. Here is the right place to do so, because + * this is the first action (other than possibly a + * back-up) that will match for the new input source. + */ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; + } + + /* Note that here we test for yy_c_buf_p "<=" to the position + * of the first EOB in the buffer, since yy_c_buf_p will + * already have been incremented past the NUL character + * (since all states make transitions on EOB to the + * end-of-buffer state). Contrast this with the test + * in input(). + */ + if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + { /* This was really a NUL. */ + yy_state_type yy_next_state; + + (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + /* Okay, we're now positioned to make the NUL + * transition. We couldn't have + * yy_get_previous_state() go ahead and do it + * for us because it doesn't know how to deal + * with the possibility of jamming (and we don't + * want to build jamming into it because then it + * will run more slowly). + */ + + yy_next_state = yy_try_NUL_trans( yy_current_state ); + + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + + if ( yy_next_state ) + { + /* Consume the NUL. */ + yy_cp = ++(yy_c_buf_p); + yy_current_state = yy_next_state; + goto yy_match; + } + + else + { + yy_cp = (yy_c_buf_p); + goto yy_find_action; + } + } + + else switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_END_OF_FILE: + { + (yy_did_buffer_switch_on_eof) = 0; + + if ( yywrap( ) ) + { + /* Note: because we've taken care in + * yy_get_next_buffer() to have set up + * yytext, we can now set up + * yy_c_buf_p so that if some total + * hoser (like flex itself) wants to + * call the scanner after we return the + * YY_NULL, it'll still work - another + * YY_NULL will get returned. + */ + (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; + + yy_act = YY_STATE_EOF(YY_START); + goto do_action; + } + + else + { + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; + } + break; + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = + (yytext_ptr) + yy_amount_of_matched_text; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_match; + + case EOB_ACT_LAST_MATCH: + (yy_c_buf_p) = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; + + yy_current_state = yy_get_previous_state( ); + + yy_cp = (yy_c_buf_p); + yy_bp = (yytext_ptr) + YY_MORE_ADJ; + goto yy_find_action; + } + break; + } + + default: + YY_FATAL_ERROR( + "fatal flex scanner internal error--no action found" ); + } /* end of action switch */ + } /* end of scanning one token */ + } /* end of user's declarations */ +} /* end of yylex */ + +/* yy_get_next_buffer - try to read in a new buffer + * + * Returns a code representing an action: + * EOB_ACT_LAST_MATCH - + * EOB_ACT_CONTINUE_SCAN - continue scanning from current position + * EOB_ACT_END_OF_FILE - end of file + */ +static int yy_get_next_buffer (void) +{ + char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + char *source = (yytext_ptr); + int number_to_move, i; + int ret_val; + + if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) + YY_FATAL_ERROR( + "fatal flex scanner internal error--end of buffer missed" ); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) + { /* Don't try to fill the buffer, so this is an EOF. */ + if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) + { + /* We matched a single character, the EOB, so + * treat this as a final EOF. + */ + return EOB_ACT_END_OF_FILE; + } + + else + { + /* We matched some text prior to the EOB, first + * process it. + */ + return EOB_ACT_LAST_MATCH; + } + } + + /* Try to read more data. */ + + /* First move last chars to start of buffer. */ + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); + + for ( i = 0; i < number_to_move; ++i ) + *(dest++) = *(source++); + + if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) + /* don't do the read, it's not guaranteed to return an EOF, + * just force an EOF + */ + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; + + else + { + yy_size_t num_to_read = + YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; + + while ( num_to_read <= 0 ) + { /* Not enough room in the buffer - grow it. */ + + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; + + int yy_c_buf_p_offset = + (int) ((yy_c_buf_p) - b->yy_ch_buf); + + if ( b->yy_is_our_buffer ) + { + yy_size_t new_size = b->yy_buf_size * 2; + + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; + + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = NULL; + + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); + + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; + + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - + number_to_move - 1; + + } + + if ( num_to_read > YY_READ_BUF_SIZE ) + num_to_read = YY_READ_BUF_SIZE; + + /* Read in more data. */ + YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), + (yy_n_chars), num_to_read ); + + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + if ( (yy_n_chars) == 0 ) + { + if ( number_to_move == YY_MORE_ADJ ) + { + ret_val = EOB_ACT_END_OF_FILE; + yyrestart( yyin ); + } + + else + { + ret_val = EOB_ACT_LAST_MATCH; + YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = + YY_BUFFER_EOF_PENDING; + } + } + + else + ret_val = EOB_ACT_CONTINUE_SCAN; + + if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); + } + + (yy_n_chars) += number_to_move; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; + + (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; + + return ret_val; +} + +/* yy_get_previous_state - get the state just before the EOB char was reached */ + + static yy_state_type yy_get_previous_state (void) +{ + yy_state_type yy_current_state; + char *yy_cp; + + yy_current_state = (yy_start); + + for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) + { + YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 19 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + } + + return yy_current_state; +} + +/* yy_try_NUL_trans - try to make a transition on the NUL character + * + * synopsis + * next_state = yy_try_NUL_trans( current_state ); + */ + static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) +{ + int yy_is_jam; + char *yy_cp = (yy_c_buf_p); + + YY_CHAR yy_c = 1; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } + while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) + { + yy_current_state = (int) yy_def[yy_current_state]; + if ( yy_current_state >= 19 ) + yy_c = yy_meta[yy_c]; + } + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_is_jam = (yy_current_state == 18); + + return yy_is_jam ? 0 : yy_current_state; +} + +#ifndef YY_NO_UNPUT + + static void yyunput (int c, char * yy_bp ) +{ + char *yy_cp; + + yy_cp = (yy_c_buf_p); + + /* undo effects of setting up yytext */ + *yy_cp = (yy_hold_char); + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + { /* need to shift things up to make room */ + /* +2 for EOB chars. */ + yy_size_t number_to_move = (yy_n_chars) + 2; + char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; + char *source = + &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; + + while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + *--dest = *--source; + + yy_cp += (int) (dest - source); + yy_bp += (int) (dest - source); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = + (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; + + if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) + YY_FATAL_ERROR( "flex scanner push-back overflow" ); + } + + *--yy_cp = (char) c; + + (yytext_ptr) = yy_bp; + (yy_hold_char) = *yy_cp; + (yy_c_buf_p) = yy_cp; +} + +#endif + +#ifndef YY_NO_INPUT +#ifdef __cplusplus + static int yyinput (void) +#else + static int input (void) +#endif + +{ + int c; + + *(yy_c_buf_p) = (yy_hold_char); + + if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) + { + /* yy_c_buf_p now points to the character we want to return. + * If this occurs *before* the EOB characters, then it's a + * valid NUL; if not, then we've hit the end of the buffer. + */ + if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) + /* This was really a NUL. */ + *(yy_c_buf_p) = '\0'; + + else + { /* need more input */ + yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); + ++(yy_c_buf_p); + + switch ( yy_get_next_buffer( ) ) + { + case EOB_ACT_LAST_MATCH: + /* This happens because yy_g_n_b() + * sees that we've accumulated a + * token and flags that we need to + * try matching the token before + * proceeding. But for input(), + * there's no matching to consider. + * So convert the EOB_ACT_LAST_MATCH + * to EOB_ACT_END_OF_FILE. + */ + + /* Reset buffer status. */ + yyrestart( yyin ); + + /*FALLTHROUGH*/ + + case EOB_ACT_END_OF_FILE: + { + if ( yywrap( ) ) + return 0; + + if ( ! (yy_did_buffer_switch_on_eof) ) + YY_NEW_FILE; +#ifdef __cplusplus + return yyinput(); +#else + return input(); +#endif + } + + case EOB_ACT_CONTINUE_SCAN: + (yy_c_buf_p) = (yytext_ptr) + offset; + break; + } + } + } + + c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */ + *(yy_c_buf_p) = '\0'; /* preserve yytext */ + (yy_hold_char) = *++(yy_c_buf_p); + + return c; +} +#endif /* ifndef YY_NO_INPUT */ + +/** Immediately switch to a different input stream. + * @param input_file A readable stream. + * + * @note This function does not reset the start condition to @c INITIAL . + */ + void yyrestart (FILE * input_file ) +{ + + if ( ! YY_CURRENT_BUFFER ){ + yyensure_buffer_stack (); + YY_CURRENT_BUFFER_LVALUE = + yy_create_buffer( yyin, YY_BUF_SIZE ); + } + + yy_init_buffer( YY_CURRENT_BUFFER, input_file ); + yy_load_buffer_state( ); +} + +/** Switch to a different input buffer. + * @param new_buffer The new input buffer. + * + */ + void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ) +{ + + /* TODO. We should be able to replace this entire function body + * with + * yypop_buffer_state(); + * yypush_buffer_state(new_buffer); + */ + yyensure_buffer_stack (); + if ( YY_CURRENT_BUFFER == new_buffer ) + return; + + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + YY_CURRENT_BUFFER_LVALUE = new_buffer; + yy_load_buffer_state( ); + + /* We don't actually know whether we did this switch during + * EOF (yywrap()) processing, but the only time this flag + * is looked at is after yywrap() is called, so it's safe + * to go ahead and always set it. + */ + (yy_did_buffer_switch_on_eof) = 1; +} + +static void yy_load_buffer_state (void) +{ + (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; + (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; + yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; + (yy_hold_char) = *(yy_c_buf_p); +} + +/** Allocate and initialize an input buffer state. + * @param file A readable stream. + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. + * + * @return the allocated buffer state. + */ + YY_BUFFER_STATE yy_create_buffer (FILE * file, int size ) +{ + YY_BUFFER_STATE b; + + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_buf_size = size; + + /* yy_ch_buf has to be 2 characters longer than the size given because + * we need to put in 2 end-of-buffer characters. + */ + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); + + b->yy_is_our_buffer = 1; + + yy_init_buffer( b, file ); + + return b; +} + +/** Destroy the buffer. + * @param b a buffer created with yy_create_buffer() + * + */ + void yy_delete_buffer (YY_BUFFER_STATE b ) +{ + + if ( ! b ) + return; + + if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ + YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; + + if ( b->yy_is_our_buffer ) + yyfree( (void *) b->yy_ch_buf ); + + yyfree( (void *) b ); +} + +/* Initializes or reinitializes a buffer. + * This function is sometimes called more than once on the same buffer, + * such as during a yyrestart() or at EOF. + */ + static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file ) + +{ + int oerrno = errno; + + yy_flush_buffer( b ); + + b->yy_input_file = file; + b->yy_fill_buffer = 1; + + /* If b is the current buffer, then yy_init_buffer was _probably_ + * called from yyrestart() or through yy_get_next_buffer. + * In that case, we don't want to reset the lineno or column. + */ + if (b != YY_CURRENT_BUFFER){ + b->yy_bs_lineno = 1; + b->yy_bs_column = 0; + } + + b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0; + + errno = oerrno; +} + +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. + * + */ + void yy_flush_buffer (YY_BUFFER_STATE b ) +{ + if ( ! b ) + return; + + b->yy_n_chars = 0; + + /* We always need two end-of-buffer characters. The first causes + * a transition to the end-of-buffer state. The second causes + * a jam in that state. + */ + b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; + b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; + + b->yy_buf_pos = &b->yy_ch_buf[0]; + + b->yy_at_bol = 1; + b->yy_buffer_status = YY_BUFFER_NEW; + + if ( b == YY_CURRENT_BUFFER ) + yy_load_buffer_state( ); +} + +/** Pushes the new state onto the stack. The new state becomes + * the current state. This function will allocate the stack + * if necessary. + * @param new_buffer The new state. + * + */ +void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) +{ + if (new_buffer == NULL) + return; + + yyensure_buffer_stack(); + + /* This block is copied from yy_switch_to_buffer. */ + if ( YY_CURRENT_BUFFER ) + { + /* Flush out information for old buffer. */ + *(yy_c_buf_p) = (yy_hold_char); + YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); + YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); + } + + /* Only push if top exists. Otherwise, replace top. */ + if (YY_CURRENT_BUFFER) + (yy_buffer_stack_top)++; + YY_CURRENT_BUFFER_LVALUE = new_buffer; + + /* copied from yy_switch_to_buffer. */ + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; +} + +/** Removes and deletes the top of the stack, if present. + * The next element becomes the new top. + * + */ +void yypop_buffer_state (void) +{ + if (!YY_CURRENT_BUFFER) + return; + + yy_delete_buffer(YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + if ((yy_buffer_stack_top) > 0) + --(yy_buffer_stack_top); + + if (YY_CURRENT_BUFFER) { + yy_load_buffer_state( ); + (yy_did_buffer_switch_on_eof) = 1; + } +} + +/* Allocates the stack if it does not exist. + * Guarantees space for at least one push. + */ +static void yyensure_buffer_stack (void) +{ + yy_size_t num_to_alloc; + + if (!(yy_buffer_stack)) { + + /* First allocation is just for 2 elements, since we don't know if this + * scanner will even need a stack. We use 2 instead of 1 to avoid an + * immediate realloc on the next call. + */ + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ + (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc + (num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); + + (yy_buffer_stack_max) = num_to_alloc; + (yy_buffer_stack_top) = 0; + return; + } + + if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ + + /* Increase the buffer to prepare for a possible push. */ + yy_size_t grow_size = 8 /* arbitrary grow size */; + + num_to_alloc = (yy_buffer_stack_max) + grow_size; + (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc + ((yy_buffer_stack), + num_to_alloc * sizeof(struct yy_buffer_state*) + ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); + + /* zero only the new slots.*/ + memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); + (yy_buffer_stack_max) = num_to_alloc; + } +} + +/** Setup the input buffer state to scan directly from a user-specified character buffer. + * @param base the character buffer + * @param size the size in bytes of the character buffer + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) +{ + YY_BUFFER_STATE b; + + if ( size < 2 || + base[size-2] != YY_END_OF_BUFFER_CHAR || + base[size-1] != YY_END_OF_BUFFER_CHAR ) + /* They forgot to leave room for the EOB's. */ + return NULL; + + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); + if ( ! b ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); + + b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ + b->yy_buf_pos = b->yy_ch_buf = base; + b->yy_is_our_buffer = 0; + b->yy_input_file = NULL; + b->yy_n_chars = b->yy_buf_size; + b->yy_is_interactive = 0; + b->yy_at_bol = 1; + b->yy_fill_buffer = 0; + b->yy_buffer_status = YY_BUFFER_NEW; + + yy_switch_to_buffer( b ); + + return b; +} + +/** Setup the input buffer state to scan a string. The next call to yylex() will + * scan from a @e copy of @a str. + * @param yystr a NUL-terminated string to scan + * + * @return the newly allocated buffer state object. + * @note If you want to scan bytes that may contain NUL values, then use + * yy_scan_bytes() instead. + */ +YY_BUFFER_STATE yy_scan_string (const char * yystr ) +{ + + return yy_scan_bytes( yystr, (int) strlen(yystr) ); +} + +/** Setup the input buffer state to scan the given bytes. The next call to yylex() will + * scan from a @e copy of @a bytes. + * @param yybytes the byte buffer to scan + * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. + * + * @return the newly allocated buffer state object. + */ +YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, yy_size_t _yybytes_len ) +{ + YY_BUFFER_STATE b; + char *buf; + yy_size_t n; + yy_size_t i; + + /* Get memory for full buffer, including space for trailing EOB's. */ + n = (yy_size_t) (_yybytes_len + 2); + buf = (char *) yyalloc( n ); + if ( ! buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); + + for ( i = 0; i < _yybytes_len; ++i ) + buf[i] = yybytes[i]; + + buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; + + b = yy_scan_buffer( buf, n ); + if ( ! b ) + YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); + + /* It's okay to grow etc. this buffer, and we should throw it + * away when we're done. + */ + b->yy_is_our_buffer = 1; + + return b; +} + +#ifndef YY_EXIT_FAILURE +#define YY_EXIT_FAILURE 2 +#endif + +static void yynoreturn yy_fatal_error (const char* msg ) +{ + fprintf( stderr, "%s\n", msg ); + exit( YY_EXIT_FAILURE ); +} + +/* Redefine yyless() so it works in section 3 code. */ + +#undef yyless +#define yyless(n) \ + do \ + { \ + /* Undo effects of setting up yytext. */ \ + yy_size_t yyless_macro_arg = (n); \ + YY_LESS_LINENO(yyless_macro_arg);\ + yytext[yyleng] = (yy_hold_char); \ + (yy_c_buf_p) = yytext + yyless_macro_arg; \ + (yy_hold_char) = *(yy_c_buf_p); \ + *(yy_c_buf_p) = '\0'; \ + yyleng = yyless_macro_arg; \ + } \ + while ( 0 ) + +/* Accessor methods (get/set functions) to struct members. */ + +/** Get the current line number. + * + */ +int yyget_lineno (void) +{ + + return yylineno; +} + +/** Get the input stream. + * + */ +FILE *yyget_in (void) +{ + return yyin; +} + +/** Get the output stream. + * + */ +FILE *yyget_out (void) +{ + return yyout; +} + +/** Get the length of the current token. + * + */ +yy_size_t yyget_leng (void) +{ + return yyleng; +} + +/** Get the current token. + * + */ + +char *yyget_text (void) +{ + return yytext; +} + +/** Set the current line number. + * @param _line_number line number + * + */ +void yyset_lineno (int _line_number ) +{ + + yylineno = _line_number; +} + +/** Set the input stream. This does not discard the current + * input buffer. + * @param _in_str A readable stream. + * + * @see yy_switch_to_buffer + */ +void yyset_in (FILE * _in_str ) +{ + yyin = _in_str ; +} + +void yyset_out (FILE * _out_str ) +{ + yyout = _out_str ; +} + +int yyget_debug (void) +{ + return yy_flex_debug; +} + +void yyset_debug (int _bdebug ) +{ + yy_flex_debug = _bdebug ; +} + +static int yy_init_globals (void) +{ + /* Initialization is the same as for the non-reentrant scanner. + * This function is called from yylex_destroy(), so don't allocate here. + */ + + (yy_buffer_stack) = NULL; + (yy_buffer_stack_top) = 0; + (yy_buffer_stack_max) = 0; + (yy_c_buf_p) = NULL; + (yy_init) = 0; + (yy_start) = 0; + +/* Defined in main.c */ +#ifdef YY_STDINIT + yyin = stdin; + yyout = stdout; +#else + yyin = NULL; + yyout = NULL; +#endif + + /* For future reference: Set errno on error, since we are called by + * yylex_init() + */ + return 0; +} + +/* yylex_destroy is for both reentrant and non-reentrant scanners. */ +int yylex_destroy (void) +{ + + /* Pop the buffer stack, destroying each element. */ + while(YY_CURRENT_BUFFER){ + yy_delete_buffer( YY_CURRENT_BUFFER ); + YY_CURRENT_BUFFER_LVALUE = NULL; + yypop_buffer_state(); + } + + /* Destroy the stack itself. */ + yyfree((yy_buffer_stack) ); + (yy_buffer_stack) = NULL; + + /* Reset the globals. This is important in a non-reentrant scanner so the next time + * yylex() is called, initialization will occur. */ + yy_init_globals( ); + + return 0; +} + +/* + * Internal utility routines. + */ + +#ifndef yytext_ptr +static void yy_flex_strncpy (char* s1, const char * s2, int n ) +{ + + int i; + for ( i = 0; i < n; ++i ) + s1[i] = s2[i]; +} +#endif + +#ifdef YY_NEED_STRLEN +static int yy_flex_strlen (const char * s ) +{ + int n; + for ( n = 0; s[n]; ++n ) + ; + + return n; +} +#endif + +void *yyalloc (yy_size_t size ) +{ + return malloc(size); +} + +void *yyrealloc (void * ptr, yy_size_t size ) +{ + + /* The cast to (char *) in the following accommodates both + * implementations that use char* generic pointers, and those + * that use void* generic pointers. It works with the latter + * because both ANSI C and C++ allow castless assignment from + * any pointer type to void*, and deal with argument conversions + * as though doing an assignment. + */ + return realloc(ptr, size); +} + +void yyfree (void * ptr ) +{ + free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ +} + +#define YYTABLES_NAME "yytables" + +#line 14 "review-parser.l" + + +int main(void) +{ + yyparse(); + return 0; +} + +int yywrap(void) +{ + return 0; +} + +int yyerror(void) +{ + printf("Error\n"); + exit(1); +} diff --git a/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.l b/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.l new file mode 100644 index 0000000..aad41b1 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.7/review-parser.l @@ -0,0 +1,31 @@ +%{ + + #include + #include "y.tab.h" + +%} + +%% + +("hi"|"oi")"\n" {return HI; } +("tchau"|"bye")"\n" {return BYE;} +. {yyerror(); } + +%% + +int main(void) +{ + yyparse(); + return 0; +} + +int yywrap(void) +{ + return 0; +} + +int yyerror(void) +{ + printf("Error\n"); + exit(1); +} \ No newline at end of file diff --git a/examples/2024-01-15-zig-build-explained/part3/3.7/src/main.zig b/examples/2024-01-15-zig-build-explained/part3/3.7/src/main.zig new file mode 100644 index 0000000..1269bcc --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/3.7/src/main.zig @@ -0,0 +1,10 @@ +const std = @import("std"); + +pub fn main() !void { + std.debug.print("All your {s} are belong to us.\n", .{"codebase"}); + const stdout_file = std.io.getStdOut().writer(); + var bw = std.io.bufferedWriter(stdout_file); + const stdout = bw.writer(); + try stdout.print("Run `zig build test` to run the tests.\n", .{}); + try bw.flush(); // don't forget to flush! +} diff --git a/examples/2024-01-15-zig-build-explained/part3/part.sh b/examples/2024-01-15-zig-build-explained/part3/part.sh new file mode 100755 index 0000000..83ee481 --- /dev/null +++ b/examples/2024-01-15-zig-build-explained/part3/part.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +echo "Run Part..." +DIR="$(dirname "$(realpath "$0")")" +for ex in `ls -d */`;do + echo "Run example ${ex}..." + cd ${DIR}/${ex} + if [ -f build.zig ]; then + zig build --summary none + fi +done diff --git a/examples/2024-01-15-zig-build-explained/readme.md b/examples/2024-01-15-zig-build-explained/readme.md index 89608dd..4d31ad7 100644 --- a/examples/2024-01-15-zig-build-explained/readme.md +++ b/examples/2024-01-15-zig-build-explained/readme.md @@ -4,4 +4,4 @@ 2. `Zig构建系统解析`共三个部分,配套代码分别在三个子目录内,分别为`part1`,`part2`,`part3`内 3. 文章发内的代码段都有编号,编号在代码块的第一行的标注内,此编号对应代码工程文件的目录,比如代码编号为1.1的,对于的代码在`part1/1.1` 4. 每一个代码块的对应工程目录内都有一个`build.zig`文件,当你看到此文件,就意味着可以使用`$zig build run`命令来构建并运行 -5. 此`build.zig`依赖的zig文件,c文件,m文件等都在对应目录之内,可以查看`build.zig`了解工程依赖的文件清单 \ No newline at end of file +5. 此`build.zig`依赖的zig文件,c文件,m文件等都在对应目录之内,可以查看`build.zig`了解工程依赖的文件清单