treesummaryrefslogcommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--build.zig20
-rw-r--r--build.zig.zon7
-rw-r--r--flake.lock44
-rw-r--r--flake.nix34
5 files changed, 108 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..6708eb8
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+.zig-cache/
+zig-out/
+result
diff --git a/build.zig b/build.zig
new file mode 100644
index 0000000..85c7417
--- /dev/null
+++ b/build.zig
@@ -0,0 +1,20 @@
+const std = @import("std");
+
+pub fn build(b: *std.Build) void {
+ const target = b.standardTargetOptions(.{});
+ const optimize = b.standardOptimizeOption(.{});
+
+ const exe = b.addExecutable(.{
+ .name = "reactive-zig",
+ .root_module = b.createModule(.{
+ .root_source_file = b.path("src/refl.zig"),
+ .target = target,
+ .optimize = optimize,
+ }),
+ });
+
+ b.installArtifact(exe);
+
+ const exe_tests = b.addTest(.{ .root_module = exe.root_module });
+ b.step("test", "Run tests").dependOn(&b.addRunArtifact(exe_tests).step);
+}
diff --git a/build.zig.zon b/build.zig.zon
new file mode 100644
index 0000000..6e3e442
--- /dev/null
+++ b/build.zig.zon
@@ -0,0 +1,7 @@
+.{
+ .name = .reactive_zig,
+ .version = "0.0.1",
+ .minimum_zig_version = "0.16.0",
+ .paths = .{""},
+ .fingerprint = 0xde90678bdaa274ed,
+}
diff --git a/flake.lock b/flake.lock
new file mode 100644
index 0000000..e5eadd5
--- /dev/null
+++ b/flake.lock
@@ -0,0 +1,44 @@
+{
+ "nodes": {
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 0,
+ "narHash": "sha256-Ti+ZBvW6yrWWAg2szExVTwCd4qOJ3KlVr1tFHfyfi8Q=",
+ "path": "/nix/store/43jk2n1njqk5hqb043r6rhjriav6fyb2-source",
+ "type": "path"
+ },
+ "original": {
+ "id": "nixpkgs",
+ "type": "indirect"
+ }
+ },
+ "root": {
+ "inputs": {
+ "nixpkgs": "nixpkgs",
+ "zig": "zig"
+ }
+ },
+ "zig": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1778745234,
+ "narHash": "sha256-j9VAckbCAcSC/w1BIyhqjmMh5F+HOQhFGoJ+bFuW5OI=",
+ "owner": "silversquirl",
+ "repo": "zig-flake",
+ "rev": "798a913f4e8d5851db78fe65eb7ef42840bff58d",
+ "type": "github"
+ },
+ "original": {
+ "owner": "silversquirl",
+ "repo": "zig-flake",
+ "type": "github"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..dbb5545
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,34 @@
+{
+ inputs = {
+ nixpkgs.url = "nixpkgs";
+ zig.url = "github:silversquirl/zig-flake";
+ zig.inputs.nixpkgs.follows = "nixpkgs";
+ };
+
+ outputs = {
+ nixpkgs,
+ zig,
+ ...
+ }: let
+ forAllSystems = f:
+ builtins.mapAttrs
+ (system: pkgs: f pkgs zig.packages.${system}.zig_0_15_2)
+ nixpkgs.legacyPackages;
+ in {
+ devShells = forAllSystems (pkgs: zig: {
+ default = pkgs.mkShellNoCC {
+ packages = [pkgs.bash zig zig.zls];
+ };
+ });
+
+ packages = forAllSystems (pkgs: zig: {
+ default = zig.makePackage {
+ pname = "reactive-zig";
+ version = "0.0.0";
+ src = ./.;
+ zigReleaseMode = "fast";
+ # depsHash = "<replace this with the hash Nix provides in its error message>"
+ };
+ });
+ };
+}