pytorch/BUCK.oss

123 lines
4.0 KiB
Plaintext

load("//tools/build_defs:glob_defs.bzl", "subdir_glob")
load(
":pt_ops.bzl",
"pt_operator_library",
)
load(":buckbuild.bzl",
"define_buck_targets",
"get_pt_operator_registry_dict",
)
# define shared buck targets
define_buck_targets()
# define OSS only targets
cxx_library(
name = "pthreadpool",
srcs = ['caffe2/utils/threadpool/pthreadpool.cc', 'caffe2/utils/threadpool/pthreadpool_impl.cc', 'caffe2/utils/threadpool/pthreadpool-cpp.cc', 'caffe2/utils/threadpool/thread_pool_guard.cpp', 'caffe2/utils/threadpool/ThreadPool.cc'],
deps = [':caffe2_headers', '//third_party:cpuinfo', '//third_party:glog', '//c10:c10', '//third_party:FXdiv'],
exported_deps = ['//third_party:pthreadpool'],
compiler_flags = ['-Wno-unused-function'],
preferred_linkage = "static",
exported_headers = subdir_glob([("", "caffe2/utils/threadpool/*.h")]),
exported_preprocessor_flags = ['-DUSE_PTHREADPOOL'],
header_namespace = "",
headers = [],
link_whole = True,
platform_preprocessor_flags = [['windows', ['-D_WINDOWS', '-D_WIN32', '-DWIN32', '-DNOMINMAX', '-D_CRT_SECURE_NO_WARNINGS', '-D_USE_MATH_DEFINES']], ['windows.*64$', ['-D_WIN64']]],
visibility = ['PUBLIC'],
)
cxx_library(
name = "caffe2_headers",
deps = ['//c10:c10'],
exported_headers = subdir_glob(
[
("", "caffe2/**/*.h"),
("", "binaries/**/*.h"),
("modules", "**/*.h"),
("aten/src", "ATen/core/**/*.h"),
],
exclude = [
"caffe2/fb/**/*.h",
"caffe2/mobile/contrib/libopencl-stub/**/*.h",
"caffe2/mobile/contrib/libvulkan-stub/**/*.h",
"caffe2/mobile/contrib/nnapi/**/*.h",
"caffe2/mobile/fb/binary/**/*.h",
"caffe2/mobile/fb/snpe_so/**/*.h",
"caffe2/mobile/fb/boltnn/bolt_lib/include/**/*.h",
"caffe2/mobile/contrib/snpe/**/*.h",
"caffe2/mobile/fb/qpl/jni/QuickPerformanceLogger.h",
"caffe2/share/fb/x3d/ldi/*.h",
"**/*.pb.h",
],
),
compiler_flags = ['-Os', '-fexceptions', '-frtti', '-Wno-shadow', '-Wno-unknown-pragmas', '-Wno-unused-variable', '-Wno-sign-compare', '-Icaffe2', '-Imodules', '-DEIGEN_NO_DEBUG', '-DCAFFE2_USE_LITE_PROTO', '-DCAFFE2_USE_GOOGLE_GLOG', '-DCAFFE2_RNN_NO_TEXT_FORMAT', '-DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK=1', '-DCAFFE2_IS_XPLAT_BUILD', '-DSTRIP_ERROR_MESSAGES', '-DUSE_INTERNAL_PTHREADPOOL_IMPL', '-DCAFFE2_USE_HPTT'],
preferred_linkage = "static",
platform_preprocessor_flags = [['windows', ['-D_WINDOWS', '-D_WIN32', '-DWIN32', '-DNOMINMAX', '-D_CRT_SECURE_NO_WARNINGS', '-D_USE_MATH_DEFINES']], ['windows.*64$', ['-D_WIN64']]],
preprocessor_flags = ['-DUSE_INTERNAL_PTHREADPOOL_IMPL'],
visibility = ['PUBLIC'],
)
cxx_library(
name = "caffe2_serialize",
srcs = [
"caffe2/serialize/file_adapter.cc",
"caffe2/serialize/inline_container.cc",
"caffe2/serialize/istream_adapter.cc",
"caffe2/serialize/read_adapter_interface.cc",
],
visibility = ["PUBLIC"],
deps = [
":caffe2_headers",
"//third_party:glog",
"//c10:c10",
"//third_party:miniz",
],
)
pt_operator_library(
name = "torch_mobile_ops_full_dev",
include_all_operators = True,
)
cxx_library(
name = "pt_ops_full",
**get_pt_operator_registry_dict(
name = "pt_ops_full",
deps = [
":torch_mobile_ops_full_dev",
],
)
)
cxx_binary(
name = 'ptmobile_benchmark',
srcs = [
'binaries/speed_benchmark_torch.cc',
],
compiler_flags = [
"-fexceptions",
"-frtti",
"-Wno-deprecated-declarations",
],
preprocessor_flags = [
"-DBUILD_LITE_INTERPRETER",
],
platform_linker_flags = [
(
"^linux.*$",
[
"-Wl,--no-as-needed",
"-ldl",
"-pthread",
],
),
],
deps = [
":torch_mobile_core",
":pt_ops_full",
"//c10:c10",
],
)