Add liblibsqlite3_sys_noicu am: 8e5c8e8167 am: c242f9a4f7 am: e209ba2820 am: 860e476ed7

Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/libsqlite3-sys/+/1824622

Change-Id: Iacad19f680fe6c932a26e3f51260757f8ede780a
diff --git a/Android.bp b/Android.bp
index df125da..1d265d8 100644
--- a/Android.bp
+++ b/Android.bp
@@ -116,3 +116,25 @@
     clippy_lints: "none",
     lints: "none",
 }
+
+rust_library {
+    name: "liblibsqlite3_sys_noicu",
+    host_supported: true,
+    crate_name: "libsqlite3_sys",
+    cargo_env_compat: true,
+    srcs: [
+        "src/lib.rs",
+        ":libsqlite3_bindgen",
+    ],
+    edition: "2018",
+    features: [
+        "default",
+        "min_sqlite_version_3_6_8",
+        "pkg-config",
+        "vcpkg",
+    ],
+    static_libs: [
+        "libsqlite_static_noicu",
+    ],
+}
+
diff --git a/cargo2android.json b/cargo2android.json
index 3362132..3668ba2 100644
--- a/cargo2android.json
+++ b/cargo2android.json
@@ -2,5 +2,7 @@
   "device": true,
   "patch": "patches/Android.bp.patch",
   "run": true,
-  "tests": true
-}
\ No newline at end of file
+  "tests": true,
+  "copy-out": true,
+  "add-toplevel-block": "extra-module.bp"
+}
diff --git a/extra-module.bp b/extra-module.bp
new file mode 100644
index 0000000..8676b74
--- /dev/null
+++ b/extra-module.bp
@@ -0,0 +1,20 @@
+rust_library {
+    name: "liblibsqlite3_sys_noicu",
+    host_supported: true,
+    crate_name: "libsqlite3_sys",
+    cargo_env_compat: true,
+    srcs: [
+        "src/lib.rs",
+        ":libsqlite3_bindgen",
+    ],
+    edition: "2018",
+    features: [
+        "default",
+        "min_sqlite_version_3_6_8",
+        "pkg-config",
+        "vcpkg",
+    ],
+    static_libs: [
+        "libsqlite_static_noicu",
+    ],
+}
diff --git a/patches/Android.bp.patch b/patches/Android.bp.patch
index e277bb8..0928aa0 100644
--- a/patches/Android.bp.patch
+++ b/patches/Android.bp.patch
@@ -1,56 +1,53 @@
---- Android.bp	2021-04-14 17:32:44.882379059 +0000
-+++ Android.bp	2021-04-14 17:33:25.765957305 +0000
-@@ -40,7 +40,10 @@
-     crate_name: "libsqlite3_sys",
-     cargo_env_compat: true,
-     cargo_pkg_version: "0.22.2",
--    srcs: ["src/lib.rs"],
-+    srcs: [
-+        "src/lib.rs",
+diff --git a/Android.bp b/Android.bp
+index 1764165..df125da 100644
+--- a/Android.bp
++++ b/Android.bp
+@@ -38,9 +38,2 @@ license {
+ 
+-genrule {
+-    name: "copy_libsqlite3-sys_build_out",
+-    srcs: ["out/*"],
+-    cmd: "cp $(in) $(genDir)",
+-    out: ["bindgen.rs"],
+-}
+-
+ rust_library {
+@@ -53,3 +46,3 @@ rust_library {
+         "src/lib.rs",
+-        ":copy_libsqlite3-sys_build_out",
 +        ":libsqlite3_bindgen",
-+    ],
-     edition: "2018",
-     features: [
-         "default",
-@@ -48,13 +51,14 @@
-         "pkg-config",
-         "vcpkg",
+     ],
+@@ -62,3 +55,5 @@ rust_library {
      ],
 -    shared_libs: ["libsqlite3"],
 +    shared_libs: [
 +        "libsqlite",
 +    ],
  }
- 
- rust_defaults {
-     name: "libsqlite3-sys_test_defaults",
+@@ -68,8 +63,2 @@ rust_defaults {
      crate_name: "libsqlite3_sys",
--    srcs: ["src/lib.rs"],
+-    srcs: [
+-        "src/lib.rs",
+-        ":copy_libsqlite3-sys_build_out",
+-    ],
+-    cargo_env_compat: true,
+-    cargo_pkg_version: "0.22.2",
      test_suites: ["general-tests"],
-     auto_gen_config: true,
-     edition: "2018",
-@@ -64,11 +68,17 @@
-         "pkg-config",
-         "vcpkg",
+@@ -83,3 +72,5 @@ rust_defaults {
      ],
 -    shared_libs: ["libsqlite3"],
 +    shared_libs: [
 +        "libsqlite",
 +    ],
  }
- 
- rust_test_host {
+@@ -88,2 +79,6 @@ rust_test_host {
      name: "libsqlite3-sys_host_test_src_lib",
 +    srcs: [
 +        "src/lib.rs",
 +        ":libsqlite3_bindgen",
 +    ],
      defaults: ["libsqlite3-sys_test_defaults"],
-     test_options: {
-         unit_test: true,
-@@ -77,10 +87,30 @@
- 
- rust_test {
+@@ -96,3 +91,28 @@ rust_test {
      name: "libsqlite3-sys_device_test_src_lib",
 +    srcs: [
 +        "src/lib.rs",
@@ -58,11 +55,7 @@
 +    ],
      defaults: ["libsqlite3-sys_test_defaults"],
  }
- 
--Errors in cargo.out:
--error: linking with `cc` failed: exit status: 1
--error: aborting due to previous error
--error: could not compile `libsqlite3-sys`
++
 +rust_bindgen {
 +    name: "libsqlite3_bindgen",
 +    host_supported: true,