blob: f0e6025073747fd64840d5b9109fd54fd239927b [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# Required at repository root for root module mode (`bazel_dep(name = "fluss-cpp", ...)`).
# Consumer examples use `local_path_override(..., path = "/path/to/fluss-rust")`, so
# Bazel resolves the module from the repository root. This also matches the Rust
# workspace layout used by `bindings/cpp` during cargo-based Bazel/CMake builds.
# `0.0.0` is a local-development placeholder in this repository branch.
# Consumers should depend on a published release version.
module(
name = "fluss-cpp",
version = "0.0.0",
)
bazel_dep(name = "rules_cc", version = "0.0.17")
bazel_dep(name = "platforms", version = "0.0.10")
bazel_dep(name = "rules_foreign_cc", version = "0.15.1")
bazel_dep(name = "rules_python", version = "1.2.0")
python = use_extension("@rules_python//python/extensions:python.bzl", "python")
python.toolchain(python_version = "3.12")
use_repo(python, "python_3_12")
foreign_cc_tools = use_extension("@rules_foreign_cc//foreign_cc:extensions.bzl", "tools")
use_repo(
foreign_cc_tools,
"cmake_3.31.8_toolchains",
"cmake_src",
"ninja_1.13.0_toolchains",
"ninja_build_src",
"rules_foreign_cc_framework_toolchains",
)
register_toolchains(
"@rules_foreign_cc_framework_toolchains//:all",
"@cmake_3.31.8_toolchains//:all",
"@ninja_1.13.0_toolchains//:all",
"@python_3_12//:all",
"@rules_foreign_cc//toolchains:all",
)
cpp_sdk = use_extension("//bindings/cpp/bazel/cpp:deps.bzl", "cpp_sdk")
cpp_sdk.config(
mode = "build",
arrow_cpp_version = "19.0.1",
protobuf_version = "3.25.5",
ep_cmake_ranlib = "/usr/bin/ranlib",
ep_cmake_ar = "/usr/bin/ar",
ep_cmake_nm = "/usr/bin/nm",
)
use_repo(cpp_sdk, "apache_arrow_cpp")