diff --git a/Formula/risingwave@1.7-single-node.rb b/Formula/risingwave@1.7-single-node.rb new file mode 100644 index 0000000..18d51a9 --- /dev/null +++ b/Formula/risingwave@1.7-single-node.rb @@ -0,0 +1,45 @@ +class RisingwaveAT17SingleNode < Formula + desc "Distributed SQL database for stream processing" + homepage "https://github.com/risingwavelabs/risingwave" + url "https://github.com/risingwavelabs/risingwave/archive/refs/tags/v1.7.0-single-node-2.tar.gz" + sha256 "b2bc8ecf645cece604f88b7fc4e927ea655f3d4dc68938e6021bbd3567e780ff" + license "Apache-2.0" + head "https://github.com/risingwavelabs/risingwave.git", branch: "main" + + bottle do + root_url "https://github.com/risingwavelabs/homebrew-risingwave/releases/download/risingwave-1.6.0" + sha256 cellar: :any, arm64_ventura: "2541d374428a4a988666f85f5a21b4b3122ea619d914179c7c111b5b35b373e3" + end + + depends_on "cmake" => :build + depends_on "llvm" => :build + depends_on "protobuf" => :build + depends_on "rustup-init" => :build + depends_on "openssl@3" + depends_on "xz" + + def install + # this will install the necessary cargo/rustup toolchain bits in HOMEBREW_CACHE + system "#{Formula["rustup-init"].bin}/rustup-init", + "-qy", "--no-modify-path", + "--default-toolchain", "none" + ENV.prepend_path "PATH", HOMEBREW_CACHE/"cargo_cache/bin" + + ENV.delete "RUSTFLAGS" # https://github.com/Homebrew/brew/pull/15544#issuecomment-1628639703 + # Homebrew changes cxx flags, and CMake doesn't pick them up, so rdkafka-sys build fails. + # We cannot pass CMake flags (`std_cmake_args`) because it's in their build.rs. + # + # Some refs that might be useful: + # https://github.com/Homebrew/homebrew-core/pull/51949#issuecomment-601943075 + # https://github.com/Homebrew/brew/pull/7134 + ENV["SDKROOT"] = MacOS.sdk_path_if_needed + system "cargo", "install", + "--bin", "risingwave", + "--features", "rw-static-link", + *std_cargo_args(path: "src/cmd_all") # "--locked", "--root ...", "--path src/cmd_all" + end + + test do + system "#{bin}/risingwave", "--help" + end +end