diff options
Diffstat (limited to 'cargo2android_toplevel.bp')
-rw-r--r-- | cargo2android_toplevel.bp | 88 |
1 files changed, 49 insertions, 39 deletions
diff --git a/cargo2android_toplevel.bp b/cargo2android_toplevel.bp index c881dd0..123dff1 100644 --- a/cargo2android_toplevel.bp +++ b/cargo2android_toplevel.bp @@ -178,13 +178,6 @@ genrule_defaults { } genrule { - name: "pdl_be_rust_test_file", - defaults: ["pdl_be_test_file_defaults"], - srcs: ["tests/canonical/le_rust_test_file.pdl"], - out: ["be_rust_test_file.pdl"], -} - -genrule { name: "pdl_be_test_file", defaults: ["pdl_be_test_file_defaults"], srcs: ["tests/canonical/le_test_file.pdl"], @@ -194,15 +187,57 @@ genrule { // Generate the Rust parser+serializer backends. genrule { name: "pdl_le_backend", - defaults: ["pdl_rust_generator_defaults"], - srcs: ["tests/canonical/le_rust_test_file.pdl"], + tools: [":pdlc"], + cmd: "$(location :pdlc)" + + " --output-format rust" + + " --exclude-declaration UnsizedCustomField" + + " --exclude-declaration Packet_Custom_Field_VariableSize" + + " --exclude-declaration Struct_Custom_Field_VariableSize_" + + " --exclude-declaration Struct_Custom_Field_VariableSize" + + " --exclude-declaration Checksum" + + " --exclude-declaration Packet_Checksum_Field_FromStart" + + " --exclude-declaration Packet_Checksum_Field_FromEnd" + + " --exclude-declaration Struct_Checksum_Field_FromStart_" + + " --exclude-declaration Struct_Checksum_Field_FromStart" + + " --exclude-declaration Struct_Checksum_Field_FromEnd_" + + " --exclude-declaration Struct_Checksum_Field_FromEnd" + + " --exclude-declaration PartialParent5" + + " --exclude-declaration PartialParent12" + + " --exclude-declaration PartialChild5_A" + + " --exclude-declaration PartialChild5_B" + + " --exclude-declaration PartialChild12_A" + + " --exclude-declaration PartialChild12_B" + + " --exclude-declaration Packet_Payload_Field_SizeModifier" + + " --exclude-declaration Packet_Array_Field_UnsizedElement_SizeModifier" + + " --exclude-declaration Struct_Array_Field_UnsizedElement_SizeModifier_" + + " --exclude-declaration Struct_Array_Field_UnsizedElement_SizeModifier" + + " $(in) > $(out)", + srcs: ["tests/canonical/le_test_file.pdl"], out: ["le_backend.rs"], } genrule { name: "pdl_be_backend", - defaults: ["pdl_rust_generator_defaults"], - srcs: [":pdl_be_rust_test_file"], + tools: [":pdlc"], + cmd: "$(location :pdlc)" + + " --output-format rust" + + " --exclude-declaration UnsizedCustomField" + + " --exclude-declaration Packet_Custom_Field_VariableSize" + + " --exclude-declaration Struct_Custom_Field_VariableSize_" + + " --exclude-declaration Struct_Custom_Field_VariableSize" + + " --exclude-declaration Checksum" + + " --exclude-declaration Packet_Checksum_Field_FromStart" + + " --exclude-declaration Packet_Checksum_Field_FromEnd" + + " --exclude-declaration Struct_Checksum_Field_FromStart_" + + " --exclude-declaration Struct_Checksum_Field_FromStart" + + " --exclude-declaration Struct_Checksum_Field_FromEnd_" + + " --exclude-declaration Struct_Checksum_Field_FromEnd" + + " --exclude-declaration Packet_Payload_Field_SizeModifier" + + " --exclude-declaration Packet_Array_Field_UnsizedElement_SizeModifier" + + " --exclude-declaration Struct_Array_Field_UnsizedElement_SizeModifier_" + + " --exclude-declaration Struct_Array_Field_UnsizedElement_SizeModifier" + + " $(in) > $(out)", + srcs: [":pdl_be_test_file"], out: ["be_backend.rs"], } @@ -211,14 +246,9 @@ rust_defaults { features: ["serde"], rustlibs: [ "libbytes", - "libnum_traits", "libserde", "libtempfile", - "libthiserror", - ], - proc_macros: [ - "libnum_derive", - "libserde_derive", + "libpdl_runtime", ], } @@ -263,6 +293,7 @@ rust_test_host { rustlibs: [ "libnum_traits", "libpdl_le_backend", + "libpdl_runtime", "libserde_json", ], clippy_lints: "none", @@ -276,6 +307,7 @@ rust_test_host { rustlibs: [ "libnum_traits", "libpdl_be_backend", + "libpdl_runtime", "libserde_json", ], clippy_lints: "none", @@ -358,28 +390,6 @@ genrule { out: ["_packets.rs"], } -// Generate the rust_noalloc test harness srcs for the supplied test vectors -genrule { - name: "pdl_rust_noalloc_le_test_gen_harness", - cmd: "set -o pipefail;" + - " $(location :pdlc) $(in) --output-format rust_no_alloc_test" + - " > $(out)", - srcs: ["tests/canonical/le_rust_noalloc_test_file.pdl"], - out: ["test_rust_noalloc_parser.rs"], - tools: [":pdlc"], -} - -// The test target for rust_noalloc -rust_test_host { - name: "pdl_rust_noalloc_le_test", - srcs: [ - ":pdl_rust_noalloc_le_test_gen_harness", - - ":pdl_rust_noalloc_le_test_backend_srcs", - ], - test_suites: ["general-tests"], -} - // Generate the C++ parser+serializer backend for the // little endian test file located at tests/canonical/le_test_file.pdl. genrule { |