mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 12:54:11 +08:00
Summary: nativert RFC: https://github.com/zhxchen17/rfcs/blob/master/RFC-0043-torch-native-runtime.md To land the runtime into PyTorch core, we will gradually land logical parts of the code into the Github issue and get each piece properly reviewed. This diff adds a simple semaphore interface into c10 until c++20 where we get counting_semaphore gonna need a oss build export to take a look at this... Test Plan: CI Differential Revision: D73882656 Pull Request resolved: https://github.com/pytorch/pytorch/pull/153504 Approved by: https://github.com/zhxchen17
110 lines
2.7 KiB
Python
110 lines
2.7 KiB
Python
def define_targets(rules):
|
|
rules.cc_library(
|
|
name = "TypeCast",
|
|
srcs = ["TypeCast.cpp"],
|
|
hdrs = ["TypeCast.h"],
|
|
linkstatic = True,
|
|
local_defines = ["C10_BUILD_MAIN_LIB"],
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
":base",
|
|
"//c10/core:ScalarType",
|
|
"//c10/macros",
|
|
],
|
|
)
|
|
|
|
rules.cc_library(
|
|
name = "base",
|
|
srcs = rules.glob(
|
|
["*.cpp"],
|
|
exclude = [
|
|
"TypeCast.cpp",
|
|
"typeid.cpp",
|
|
],
|
|
),
|
|
hdrs = rules.glob(
|
|
["*.h"],
|
|
exclude = [
|
|
"TypeCast.h",
|
|
"typeid.h",
|
|
],
|
|
),
|
|
linkstatic = True,
|
|
local_defines = ["C10_BUILD_MAIN_LIB"],
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
":bit_cast",
|
|
"//c10/macros",
|
|
"@fmt",
|
|
"@moodycamel//:moodycamel",
|
|
] + rules.select({
|
|
"//c10:using_gflags": ["@com_github_gflags_gflags//:gflags"],
|
|
"//conditions:default": [],
|
|
}) + rules.select({
|
|
"//c10:using_glog": ["@com_github_glog//:glog"],
|
|
"//conditions:default": [],
|
|
}),
|
|
linkopts = rules.select({
|
|
"@bazel_tools//src/conditions:windows": [],
|
|
"//conditions:default": ["-ldl"],
|
|
}),
|
|
# This library uses flags and registration. Do not let the
|
|
# linker remove them.
|
|
alwayslink = True,
|
|
)
|
|
|
|
rules.cc_library(
|
|
name = "bit_cast",
|
|
hdrs = ["bit_cast.h"],
|
|
visibility = ["//:__subpackages__"],
|
|
)
|
|
|
|
rules.cc_library(
|
|
name = "ssize",
|
|
hdrs = ["ssize.h"],
|
|
linkstatic = True,
|
|
visibility = ["//:__subpackages__"],
|
|
deps = [":base"],
|
|
)
|
|
|
|
rules.cc_library(
|
|
name = "typeid",
|
|
srcs = ["typeid.cpp"],
|
|
hdrs = ["typeid.h"],
|
|
linkstatic = True,
|
|
local_defines = ["C10_BUILD_MAIN_LIB"],
|
|
visibility = ["//visibility:public"],
|
|
deps = [
|
|
":base",
|
|
"//c10/core:ScalarType",
|
|
"//c10/macros",
|
|
],
|
|
)
|
|
|
|
rules.cc_library(
|
|
name = "base_headers",
|
|
hdrs = rules.glob(
|
|
["*.h"],
|
|
exclude = [
|
|
"bit_cast.h",
|
|
"ssize.h",
|
|
],
|
|
),
|
|
visibility = ["//visibility:public"],
|
|
)
|
|
|
|
rules.filegroup(
|
|
name = "headers",
|
|
srcs = rules.glob(
|
|
["*.h"],
|
|
exclude = [
|
|
"bit_cast.h",
|
|
"ssize.h",
|
|
],
|
|
),
|
|
visibility = [
|
|
"//:__pkg__",
|
|
"//c10:__pkg__",
|
|
],
|
|
)
|