-
Notifications
You must be signed in to change notification settings - Fork 331
Expand file tree
/
Copy pathbuck_rust_binary.bzl
More file actions
26 lines (22 loc) · 1.28 KB
/
buck_rust_binary.bzl
File metadata and controls
26 lines (22 loc) · 1.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# Copyright (c) Meta Platforms, Inc. and affiliates.
#
# This source code is dual-licensed under either the MIT license found in the
# LICENSE-MIT file in the root directory of this source tree or the Apache
# License, Version 2.0 found in the LICENSE-APACHE file in the root directory
# of this source tree. You may select, at your option, one of the
# above-listed licenses.
load("@fbsource//tools/build_defs:rust_binary.bzl", "rust_binary")
def buck_rust_binary(**kwargs):
kwargs.setdefault("edition", "2021")
kwargs.setdefault("link_style", "static")
# Link group is currently used automatically for rust in dev mode. Unfortunately, it builds
# a binary that is not relocatable and it checks for dev mode by reading the build mode buckconfig.
# If we don't disable link groups, we will also end up building a non-relocatable binary when
# using opt modifier because opt modifier does not change build mode buckconfig. Work around this
# by disabling link groups for now.
# TODO(scottcao): Delete this line once link group macros are properly selectified.
kwargs["link_group_map"] = []
# JEMalloc is not (yet!) the default on MacOS so add the allocator
# explicitly on all platforms here.
kwargs.setdefault("allocator", "jemalloc")
rust_binary(**kwargs)