aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-07-14 18:33:50 -0700
committerGravatar Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> 2023-07-17 20:27:54 -0700
commit6924134cd54285b4da7c38bf632fbe098b9e5c54 (patch)
tree2424b31c0cc9cdf23f01340938019722f8ddd3d5
parent3a2e66ab62fd59336c1e0797ea9cb87195199b71 (diff)
downloadbun-6924134cd54285b4da7c38bf632fbe098b9e5c54.tar.gz
bun-6924134cd54285b4da7c38bf632fbe098b9e5c54.tar.zst
bun-6924134cd54285b4da7c38bf632fbe098b9e5c54.zip
wip2
-rw-r--r--Makefile6
-rw-r--r--build.zig13
-rw-r--r--src/stream_tester.zig14
3 files changed, 33 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index 647d2b97c..2ba055708 100644
--- a/Makefile
+++ b/Makefile
@@ -866,6 +866,12 @@ fetch: $(IO_FILES)
$(CXX) $(PACKAGE_DIR)/fetch.o -g $(OPTIMIZATION_LEVEL) -o ./misctools/fetch $(IO_FILES) $(DEFAULT_LINKER_FLAGS) -lc $(MINIMUM_ARCHIVE_FILES)
rm -rf $(PACKAGE_DIR)/fetch.o
+.PHONY: stream-tester
+stream-tester: $(IO_FILES)
+ $(ZIG) build -Doptimize=ReleaseFast stream-tester-obj
+ $(CXX) $(PACKAGE_DIR)/stream_tester.o -g $(OPTIMIZATION_LEVEL) -o ./misctools/stream_tester $(IO_FILES) $(DEFAULT_LINKER_FLAGS) -lc $(ARCHIVE_FILES) $(ICU_FLAGS) $(JSC_FILES) $(JSC_BINDINGS)
+ rm -rf $(PACKAGE_DIR)/stream_tester.o
+
.PHONY: sha
sha:
$(ZIG) build -Doptimize=ReleaseFast sha-bench-obj
diff --git a/build.zig b/build.zig
index 8993070b0..dabbd804b 100644
--- a/build.zig
+++ b/build.zig
@@ -382,6 +382,19 @@ pub fn build(b: *Build) !void {
}
{
+ const headers_step = b.step("stream-tester-obj", "Build stream-tester (object files)");
+ var headers_obj = b.addObject(.{
+ .name = "stream-tester",
+ .root_source_file = FileSource.relative("src/stream_tester.zig"),
+ .target = target,
+ .optimize = optimize,
+ });
+ defer headers_step.dependOn(&headers_obj.step);
+ try configureObjectStep(b, headers_obj, @TypeOf(target), target, obj.main_pkg_path.?);
+ headers_obj.addOptions("build_options", default_build_options.step(b));
+ }
+
+ {
const headers_step = b.step("string-bench", "Build string bench");
var headers_obj = b.addExecutable(.{
.name = "string-bench",
diff --git a/src/stream_tester.zig b/src/stream_tester.zig
new file mode 100644
index 000000000..a6912bd27
--- /dev/null
+++ b/src/stream_tester.zig
@@ -0,0 +1,14 @@
+const compress = @import("./compress.zig");
+pub const bun = @import("./bun.zig");
+const std = @import("std");
+
+pub fn main() anyerror!void {
+ const path: []const u8 = std.mem.span(std.os.argv[std.os.argv.len - 1]);
+ var file_stream = try compress.CLIFileStreamCompressor.init(path);
+ var stream: *compress.Compressor = if (bun.strings.endsWith(path, ".br"))
+ try compress.Compressor.init(compress.Brotli.Decoder.initWithoutOptions())
+ else
+ try compress.Compressor.init(compress.Brotli.Encoder.initWithoutOptions());
+
+ try file_stream.run(stream);
+}