11load ("@fbsource//tools/build_defs:default_platform_defs.bzl" , "ANDROID" , "APPLE" , "CXX" , "FBCODE" , "IOS" , "MACOSX" , "WINDOWS" )
22load ("@fbsource//tools/build_defs:fb_native_wrapper.bzl" , "fb_native" )
3- load ("@fbsource//tools/build_defs:fb_xplat_cxx_library.bzl" , "fb_xplat_cxx_library" )
43load ("@fbsource//tools/build_defs:fb_xplat_rust_library.bzl" , "fb_xplat_rust_library" )
54load ("@fbsource//tools/build_defs:fb_xplat_suffixed_aliases.bzl" , "create_forwarding_aliases" )
6- load ("@fbsource//tools/build_defs:fbsource_utils.bzl" , "is_fbcode_compatible" , "is_fbcode_mode_mac" , "is_fbcode_mode_win" , "is_xplat" )
7- load ("@fbsource//tools/build_defs:rust_bindgen_library.bzl" , "rust_bindgen_library" )
5+ load ("@fbsource//tools/build_defs:fbsource_utils.bzl" , "is_xplat" )
86
97oncall ("rust_libraries" )
108
@@ -13,80 +11,69 @@ oncall("rust_libraries")
1311# in the same build graph.
1412create_forwarding_aliases (
1513 name = "iobuf" ,
16- actual_name = select ({
17- "DEFAULT" : "fbsource//xplat/folly/rust/iobuf:_iobuf" ,
18- "ovr_config//os:linux" : "fbcode//folly/rust/iobuf:_iobuf" if is_fbcode_compatible () else "fbsource//xplat/folly/rust/iobuf:_iobuf" ,
19- "ovr_config//os:macos" : "fbcode//folly/rust/iobuf:_iobuf" if is_fbcode_mode_mac () else "fbsource//xplat/folly/rust/iobuf:_iobuf" ,
20- "ovr_config//os:windows" : "fbcode//folly/rust/iobuf:_iobuf" if is_fbcode_mode_win () else "fbsource//xplat/folly/rust/iobuf:_iobuf" ,
21- }),
14+ actual_name = get_cell_name () + "//" + package_name () + ":_iobuf" ,
2215 platforms = (CXX , ANDROID , APPLE , FBCODE , WINDOWS ),
2316 sdks = (IOS , MACOSX ),
2417 visibility = ["PUBLIC" ],
2518) if is_xplat () else None
2619
27- create_forwarding_aliases (
28- name = "iobuf-ffi" ,
29- actual_name = select ({
30- "DEFAULT" : "fbsource//xplat/folly/rust/iobuf:_iobuf-ffi" ,
31- "ovr_config//os:linux" : "fbcode//folly/rust/iobuf:_iobuf-ffi" if is_fbcode_compatible () else "fbsource//xplat/folly/rust/iobuf:_iobuf-ffi" ,
32- "ovr_config//os:macos" : "fbcode//folly/rust/iobuf:_iobuf-ffi" if is_fbcode_mode_mac () else "fbsource//xplat/folly/rust/iobuf:_iobuf-ffi" ,
33- "ovr_config//os:windows" : "fbcode//folly/rust/iobuf:_iobuf-ffi" if is_fbcode_mode_win () else "fbsource//xplat/folly/rust/iobuf:_iobuf-ffi" ,
34- }),
35- platforms = (CXX , ANDROID , APPLE , FBCODE , WINDOWS ),
36- sdks = (IOS , MACOSX ),
37- visibility = ["PUBLIC" ],
38- ) if is_xplat () else None
20+ # create_forwarding_aliases(
21+ # name = "iobuf-ffi",
22+ # actual_name = get_cell_name() + "//" + package_name() + ":_iobuf-ffi"
23+ # platforms = (CXX, ANDROID, APPLE, FBCODE, WINDOWS),
24+ # sdks = (IOS, MACOSX),
25+ # visibility = ["PUBLIC"],
26+ # ) if is_xplat() else None
3927
40- rust_bindgen_library (
41- name = "iobuf-sys" ,
42- allowlist_funcs = [
43- "facebook::rust::.*" ,
44- ],
45- allowlist_types = [
46- "folly::IOBuf" ,
47- "facebook::rust::.*" ,
48- ],
49- allowlist_vars = [
50- "facebook::rust::.*" ,
51- ],
52- blocklist_types = [
53- # These seems to come from type_traits / make_signed via fbvector
54- "folly::fbvector.*" ,
55- "__type" ,
56- "type_" ,
57- ],
58- cpp_deps = [":_iobuf-ffi" ],
59- cxx_namespaces = True ,
60- generate = ("types" , "vars" , "functions" ),
61- header = "iobuf.h" ,
62- opaque_types = [
63- "std::.*" ,
64- "folly::fbstring.*" ,
65- ],
66- platforms = (CXX , ANDROID , APPLE , FBCODE , WINDOWS ),
67- src_includes = ["iobuf_sys.rs" ],
68- visibility = [],
69- )
70-
71- fb_xplat_cxx_library (
72- name = "_iobuf-ffi" ,
73- srcs = ["iobuf.cpp" ],
74- exported_headers = ["iobuf.h" ],
75- platforms = (CXX , ANDROID , APPLE , FBCODE , WINDOWS ),
76- preferred_linkage = "static" ,
77- visibility = [
78- "fbcode//folly/rust/iobuf/..." ,
79- "fbsource//xplat/folly/rust/iobuf/..." ,
80- ],
81- exported_deps = [
82- "fbsource//xplat/folly/io:iobuf" if is_xplat () else "fbcode//folly/io:iobuf" ,
83- ],
84- )
28+ # rust_bindgen_library(
29+ # name = "iobuf-sys",
30+ # allowlist_funcs = [
31+ # "facebook::rust::.*",
32+ # ],
33+ # allowlist_types = [
34+ # "folly::IOBuf",
35+ # "facebook::rust::.*",
36+ # ],
37+ # allowlist_vars = [
38+ # "facebook::rust::.*",
39+ # ],
40+ # blocklist_types = [
41+ # # These seems to come from type_traits / make_signed via fbvector
42+ # "folly::fbvector.*",
43+ # "__type",
44+ # "type_",
45+ # ],
46+ # cpp_deps = [":_iobuf-ffi"],
47+ # cxx_namespaces = True,
48+ # generate = ("types", "vars", "functions"),
49+ # header = "iobuf.h",
50+ # opaque_types = [
51+ # "std::.*",
52+ # "folly::fbstring.*",
53+ # ],
54+ # platforms = (CXX, ANDROID, APPLE, FBCODE, WINDOWS),
55+ # src_includes = ["iobuf_sys.rs"],
56+ # visibility = [],
57+ # )
8558
59+ # fb_xplat_cxx_library(
60+ # name = "_iobuf-ffi",
61+ # srcs = ["iobuf.cpp"],
62+ # exported_headers = ["iobuf.h"],
63+ # platforms = (CXX, ANDROID, APPLE, FBCODE, WINDOWS),
64+ # preferred_linkage = "static",
65+ # visibility = [
66+ # "fbcode//folly/rust/iobuf/...",
67+ # "fbsource//xplat/folly/rust/iobuf/...",
68+ # ],
69+ # exported_deps = [
70+ # "fbsource//xplat/folly/io:iobuf" if is_xplat() else "fbcode//folly/io:iobuf",
71+ # ],
72+ # )
73+
8674fb_xplat_rust_library (
8775 name = "_iobuf" ,
8876 srcs = glob (["src/*.rs" ]),
89- cpp_deps = [":_iobuf-ffi" ],
9077 crate = "iobuf" ,
9178 crate_root = "src/lib.rs" ,
9279 cxx_bridge = "src/lib.rs" ,
@@ -105,8 +92,8 @@ fb_xplat_rust_library(
10592 "fbsource//third-party/rust:cxx" ,
10693 "fbsource//third-party/rust:memmap2" ,
10794 "fbsource//xplat/thrift/lib/rust:fbthrift" ,
108- " :iobuf-sys" ,
109- ],
95+ get_cell_name () + "//" + package_name () + "_sys :iobuf-sys" ,
96+ ]
11097)
11198
11299fb_native .alias (
0 commit comments