1*da0073e9SAndroid Build Coastguard Workerload("//tools/build_defs:glob_defs.bzl", "subdir_glob") 2*da0073e9SAndroid Build Coastguard Workerload( 3*da0073e9SAndroid Build Coastguard Worker ":pt_ops.bzl", 4*da0073e9SAndroid Build Coastguard Worker "pt_operator_library", 5*da0073e9SAndroid Build Coastguard Worker) 6*da0073e9SAndroid Build Coastguard Workerload(":buckbuild.bzl", 7*da0073e9SAndroid Build Coastguard Worker "define_buck_targets", 8*da0073e9SAndroid Build Coastguard Worker "get_pt_operator_registry_dict", 9*da0073e9SAndroid Build Coastguard Worker) 10*da0073e9SAndroid Build Coastguard Worker 11*da0073e9SAndroid Build Coastguard Worker# define shared buck targets 12*da0073e9SAndroid Build Coastguard Workerdefine_buck_targets() 13*da0073e9SAndroid Build Coastguard Worker 14*da0073e9SAndroid Build Coastguard Worker# define OSS only targets 15*da0073e9SAndroid Build Coastguard Workercxx_library( 16*da0073e9SAndroid Build Coastguard Worker name = "pthreadpool", 17*da0073e9SAndroid Build Coastguard Worker 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'], 18*da0073e9SAndroid Build Coastguard Worker deps = [':caffe2_headers', '//third_party:cpuinfo', '//third_party:glog', '//c10:c10', '//third_party:FXdiv'], 19*da0073e9SAndroid Build Coastguard Worker exported_deps = ['//third_party:pthreadpool'], 20*da0073e9SAndroid Build Coastguard Worker compiler_flags = ['-Wno-unused-function'], 21*da0073e9SAndroid Build Coastguard Worker preferred_linkage = "static", 22*da0073e9SAndroid Build Coastguard Worker exported_headers = subdir_glob([("", "caffe2/utils/threadpool/*.h")]), 23*da0073e9SAndroid Build Coastguard Worker exported_preprocessor_flags = ['-DUSE_PTHREADPOOL'], 24*da0073e9SAndroid Build Coastguard Worker header_namespace = "", 25*da0073e9SAndroid Build Coastguard Worker headers = [], 26*da0073e9SAndroid Build Coastguard Worker link_whole = True, 27*da0073e9SAndroid Build Coastguard Worker platform_preprocessor_flags = [['windows', ['-D_WINDOWS', '-D_WIN32', '-DWIN32', '-DNOMINMAX', '-D_CRT_SECURE_NO_WARNINGS', '-D_USE_MATH_DEFINES']], ['windows.*64$', ['-D_WIN64']]], 28*da0073e9SAndroid Build Coastguard Worker visibility = ['PUBLIC'], 29*da0073e9SAndroid Build Coastguard Worker) 30*da0073e9SAndroid Build Coastguard Worker 31*da0073e9SAndroid Build Coastguard Workercxx_library( 32*da0073e9SAndroid Build Coastguard Worker name = "caffe2_headers", 33*da0073e9SAndroid Build Coastguard Worker deps = ['//c10:c10'], 34*da0073e9SAndroid Build Coastguard Worker exported_headers = subdir_glob( 35*da0073e9SAndroid Build Coastguard Worker [ 36*da0073e9SAndroid Build Coastguard Worker ("", "caffe2/**/*.h"), 37*da0073e9SAndroid Build Coastguard Worker ("", "binaries/**/*.h"), 38*da0073e9SAndroid Build Coastguard Worker ("modules", "**/*.h"), 39*da0073e9SAndroid Build Coastguard Worker ("aten/src", "ATen/core/**/*.h"), 40*da0073e9SAndroid Build Coastguard Worker ], 41*da0073e9SAndroid Build Coastguard Worker exclude = [ 42*da0073e9SAndroid Build Coastguard Worker "caffe2/fb/**/*.h", 43*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/contrib/libopencl-stub/**/*.h", 44*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/contrib/libvulkan-stub/**/*.h", 45*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/contrib/nnapi/**/*.h", 46*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/fb/binary/**/*.h", 47*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/fb/snpe_so/**/*.h", 48*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/fb/boltnn/bolt_lib/include/**/*.h", 49*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/contrib/snpe/**/*.h", 50*da0073e9SAndroid Build Coastguard Worker "caffe2/mobile/fb/qpl/jni/QuickPerformanceLogger.h", 51*da0073e9SAndroid Build Coastguard Worker "caffe2/share/fb/x3d/ldi/*.h", 52*da0073e9SAndroid Build Coastguard Worker "**/*.pb.h", 53*da0073e9SAndroid Build Coastguard Worker ], 54*da0073e9SAndroid Build Coastguard Worker ), 55*da0073e9SAndroid Build Coastguard Worker 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'], 56*da0073e9SAndroid Build Coastguard Worker preferred_linkage = "static", 57*da0073e9SAndroid Build Coastguard Worker platform_preprocessor_flags = [['windows', ['-D_WINDOWS', '-D_WIN32', '-DWIN32', '-DNOMINMAX', '-D_CRT_SECURE_NO_WARNINGS', '-D_USE_MATH_DEFINES']], ['windows.*64$', ['-D_WIN64']]], 58*da0073e9SAndroid Build Coastguard Worker preprocessor_flags = ['-DUSE_INTERNAL_PTHREADPOOL_IMPL'], 59*da0073e9SAndroid Build Coastguard Worker visibility = ['PUBLIC'], 60*da0073e9SAndroid Build Coastguard Worker) 61*da0073e9SAndroid Build Coastguard Worker 62*da0073e9SAndroid Build Coastguard Workercxx_library( 63*da0073e9SAndroid Build Coastguard Worker name = "caffe2_serialize", 64*da0073e9SAndroid Build Coastguard Worker srcs = [ 65*da0073e9SAndroid Build Coastguard Worker "caffe2/serialize/file_adapter.cc", 66*da0073e9SAndroid Build Coastguard Worker "caffe2/serialize/inline_container.cc", 67*da0073e9SAndroid Build Coastguard Worker "caffe2/serialize/istream_adapter.cc", 68*da0073e9SAndroid Build Coastguard Worker "caffe2/serialize/read_adapter_interface.cc", 69*da0073e9SAndroid Build Coastguard Worker ], 70*da0073e9SAndroid Build Coastguard Worker visibility = ["PUBLIC"], 71*da0073e9SAndroid Build Coastguard Worker deps = [ 72*da0073e9SAndroid Build Coastguard Worker ":caffe2_headers", 73*da0073e9SAndroid Build Coastguard Worker "//third_party:glog", 74*da0073e9SAndroid Build Coastguard Worker "//c10:c10", 75*da0073e9SAndroid Build Coastguard Worker "//third_party:miniz", 76*da0073e9SAndroid Build Coastguard Worker ], 77*da0073e9SAndroid Build Coastguard Worker) 78*da0073e9SAndroid Build Coastguard Worker 79*da0073e9SAndroid Build Coastguard Workerpt_operator_library( 80*da0073e9SAndroid Build Coastguard Worker name = "torch_mobile_ops_full_dev", 81*da0073e9SAndroid Build Coastguard Worker include_all_operators = True, 82*da0073e9SAndroid Build Coastguard Worker) 83*da0073e9SAndroid Build Coastguard Worker 84*da0073e9SAndroid Build Coastguard Workercxx_library( 85*da0073e9SAndroid Build Coastguard Worker name = "pt_ops_full", 86*da0073e9SAndroid Build Coastguard Worker **get_pt_operator_registry_dict( 87*da0073e9SAndroid Build Coastguard Worker name = "pt_ops_full", 88*da0073e9SAndroid Build Coastguard Worker deps = [ 89*da0073e9SAndroid Build Coastguard Worker ":torch_mobile_ops_full_dev", 90*da0073e9SAndroid Build Coastguard Worker ], 91*da0073e9SAndroid Build Coastguard Worker ) 92*da0073e9SAndroid Build Coastguard Worker) 93*da0073e9SAndroid Build Coastguard Worker 94*da0073e9SAndroid Build Coastguard Workercxx_binary( 95*da0073e9SAndroid Build Coastguard Worker name = 'ptmobile_benchmark', 96*da0073e9SAndroid Build Coastguard Worker srcs = [ 97*da0073e9SAndroid Build Coastguard Worker 'binaries/speed_benchmark_torch.cc', 98*da0073e9SAndroid Build Coastguard Worker ], 99*da0073e9SAndroid Build Coastguard Worker compiler_flags = [ 100*da0073e9SAndroid Build Coastguard Worker "-fexceptions", 101*da0073e9SAndroid Build Coastguard Worker "-frtti", 102*da0073e9SAndroid Build Coastguard Worker "-Wno-deprecated-declarations", 103*da0073e9SAndroid Build Coastguard Worker ], 104*da0073e9SAndroid Build Coastguard Worker preprocessor_flags = [ 105*da0073e9SAndroid Build Coastguard Worker "-DBUILD_LITE_INTERPRETER", 106*da0073e9SAndroid Build Coastguard Worker ], 107*da0073e9SAndroid Build Coastguard Worker platform_linker_flags = [ 108*da0073e9SAndroid Build Coastguard Worker ( 109*da0073e9SAndroid Build Coastguard Worker "^linux.*$", 110*da0073e9SAndroid Build Coastguard Worker [ 111*da0073e9SAndroid Build Coastguard Worker "-Wl,--no-as-needed", 112*da0073e9SAndroid Build Coastguard Worker "-ldl", 113*da0073e9SAndroid Build Coastguard Worker "-pthread", 114*da0073e9SAndroid Build Coastguard Worker ], 115*da0073e9SAndroid Build Coastguard Worker ), 116*da0073e9SAndroid Build Coastguard Worker ], 117*da0073e9SAndroid Build Coastguard Worker deps = [ 118*da0073e9SAndroid Build Coastguard Worker ":torch_mobile_core", 119*da0073e9SAndroid Build Coastguard Worker ":pt_ops_full", 120*da0073e9SAndroid Build Coastguard Worker "//c10:c10", 121*da0073e9SAndroid Build Coastguard Worker ], 122*da0073e9SAndroid Build Coastguard Worker) 123