forked from pytorch/pytorch
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathcu.bzl
42 lines (40 loc) · 1.92 KB
/
cu.bzl
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
load("@rules_cuda//cuda:defs.bzl", "cuda_library")
NVCC_COPTS = [
"--expt-relaxed-constexpr",
"--expt-extended-lambda",
"--compiler-options=-Werror=all",
# The following warnings come from -Wall. We downgrade them from
# error to warnings here.
#
# sign-compare has a tremendous amount of violations in the
# codebase. It will be a lot of work to fix them, just disable it
# for now.
"--compiler-options=-Wno-sign-compare",
# We intentionally use #pragma unroll, which is compiler specific.
"--compiler-options=-Wno-error=unknown-pragmas",
"--compiler-options=-Werror=extra",
# The following warnings come from -Wextra. We downgrade them from
# error to warnings here.
#
# unused-parameter-compare has a tremendous amount of violations
# in the codebase. It will be a lot of work to fix them, just
# disable it for now.
"--compiler-options=-Wno-unused-parameter",
# missing-field-parameters has both a large number of violations
# in the codebase, but it also is used pervasively in the Python C
# API. There are a couple of catches though:
# * we use multiple versions of the Python API and hence have
# potentially multiple different versions of each relevant
# struct. They may have different numbers of fields. It will be
# unwieldy to support multiple versions in the same source file.
# * Python itself for many of these structs recommends only
# initializing a subset of the fields. We should respect the API
# usage conventions of our dependencies.
#
# Hence, we just disable this warning altogether. We may want to
# clean up some of the clear-cut cases that could be risky, but we
# still likely want to have this disabled for the most part.
"-Wno-missing-field-initializers",
]
def cu_library(name, srcs, copts = [], **kwargs):
cuda_library(name, srcs = srcs, copts = NVCC_COPTS + copts, **kwargs)