Update for zerocopy and zerocopy-derive so 2 versions can coexist.

* Append 0.7.35 to build rules in extra_versions.
* Don't generate rules.mk in original location, keeping Trusty on 0.7.35 until they choose to upgrade.

Bug: 372549215
Test: treehugger
Change-Id: Id7a68522860d6387550cf295bb0263023a500fa8
diff --git a/crates/zerocopy-derive/Android.bp b/crates/zerocopy-derive/Android.bp
index b362086..a681a4e 100644
--- a/crates/zerocopy-derive/Android.bp
+++ b/crates/zerocopy-derive/Android.bp
@@ -28,9 +28,3 @@
     product_available: true,
     vendor_available: true,
 }
-
-dirgroup {
-    name: "trusty_dirgroup_external_rust_crates_zerocopy-derive",
-    visibility: ["//trusty/vendor/google/aosp/scripts"],
-    dirs: ["."],
-}
diff --git a/crates/zerocopy-derive/cargo_embargo.json b/crates/zerocopy-derive/cargo_embargo.json
index 1dc3922..7fbe0dc 100644
--- a/crates/zerocopy-derive/cargo_embargo.json
+++ b/crates/zerocopy-derive/cargo_embargo.json
@@ -1,4 +1,4 @@
 {
   "run_cargo": false,
-  "generate_rulesmk": true
+  "generate_rulesmk": false
 }
diff --git a/crates/zerocopy-derive/rules.mk b/crates/zerocopy-derive/rules.mk
deleted file mode 100644
index 73a9f90..0000000
--- a/crates/zerocopy-derive/rules.mk
+++ /dev/null
@@ -1,17 +0,0 @@
-# This file is generated by cargo_embargo.
-# Do not modify this file after the LOCAL_DIR line
-# because the changes will be overridden on upgrade.
-# Content before the first line starting with LOCAL_DIR is preserved.
-
-LOCAL_DIR := $(GET_LOCAL_DIR)
-MODULE := $(LOCAL_DIR)
-MODULE_CRATE_NAME := zerocopy_derive
-MODULE_RUST_CRATE_TYPES := proc-macro
-MODULE_SRCS := $(LOCAL_DIR)/src/lib.rs
-MODULE_RUST_EDITION := 2018
-MODULE_LIBRARY_DEPS := \
-	$(call FIND_CRATE,proc-macro2) \
-	$(call FIND_CRATE,quote) \
-	$(call FIND_CRATE,syn)
-
-include make/library.mk
diff --git a/crates/zerocopy/Android.bp b/crates/zerocopy/Android.bp
index 49bb9f3..c60e4d3 100644
--- a/crates/zerocopy/Android.bp
+++ b/crates/zerocopy/Android.bp
@@ -99,9 +99,3 @@
     vendor_available: true,
     min_sdk_version: "34",
 }
-
-dirgroup {
-    name: "trusty_dirgroup_external_rust_crates_zerocopy",
-    visibility: ["//trusty/vendor/google/aosp/scripts"],
-    dirs: ["."],
-}
diff --git a/crates/zerocopy/cargo_embargo.json b/crates/zerocopy/cargo_embargo.json
index 315b9c6..82e700e 100644
--- a/crates/zerocopy/cargo_embargo.json
+++ b/crates/zerocopy/cargo_embargo.json
@@ -45,21 +45,6 @@
           "no_std": true
         }
       }
-    },
-    {
-      "features": [
-        "alloc",
-        "derive",
-        "byteorder"
-      ],
-      "package": {
-        "zerocopy": {
-          "alloc": true,
-          "no_std": true
-        }
-      },
-      "generate_androidbp": false,
-      "generate_rulesmk": true
     }
   ],
   "min_sdk_version": "34"
diff --git a/crates/zerocopy/rules.mk b/crates/zerocopy/rules.mk
deleted file mode 100644
index 71e086b..0000000
--- a/crates/zerocopy/rules.mk
+++ /dev/null
@@ -1,26 +0,0 @@
-# This file is generated by cargo_embargo.
-# Do not modify this file after the LOCAL_DIR line
-# because the changes will be overridden on upgrade.
-# Content before the first line starting with LOCAL_DIR is preserved.
-
-LOCAL_DIR := $(GET_LOCAL_DIR)
-MODULE := $(LOCAL_DIR)
-MODULE_CRATE_NAME := zerocopy
-MODULE_RUST_CRATE_TYPES := rlib
-MODULE_SRCS := $(LOCAL_DIR)/src/lib.rs
-MODULE_ADD_IMPLICIT_DEPS := false
-MODULE_RUST_EDITION := 2018
-MODULE_RUSTFLAGS += \
-	--cfg 'feature="alloc"' \
-	--cfg 'feature="byteorder"' \
-	--cfg 'feature="derive"' \
-	--cfg 'feature="zerocopy-derive"'
-
-MODULE_LIBRARY_DEPS := \
-	$(call FIND_CRATE,byteorder) \
-	$(call FIND_CRATE,zerocopy-derive) \
-	trusty/user/base/lib/liballoc-rust \
-	trusty/user/base/lib/libcompiler_builtins-rust \
-	trusty/user/base/lib/libcore-rust
-
-include make/library.mk
diff --git a/extra_versions/crates/zerocopy-derive/Android.bp b/extra_versions/crates/zerocopy-derive/Android.bp
index b362086..5b1d8ac 100644
--- a/extra_versions/crates/zerocopy-derive/Android.bp
+++ b/extra_versions/crates/zerocopy-derive/Android.bp
@@ -2,19 +2,19 @@
 // Do not modify this file because the changes will be overridden on upgrade.
 
 package {
-    default_applicable_licenses: ["external_rust_crates_zerocopy-derive_license"],
+    default_applicable_licenses: ["external_rust_crates_zerocopy-derive-0.7.35_license"],
     default_team: "trendy_team_android_rust",
 }
 
 license {
-    name: "external_rust_crates_zerocopy-derive_license",
+    name: "external_rust_crates_zerocopy-derive-0.7.35_license",
     visibility: [":__subpackages__"],
     license_kinds: ["SPDX-license-identifier-Apache-2.0"],
     license_text: ["LICENSE"],
 }
 
 rust_proc_macro {
-    name: "libzerocopy_derive",
+    name: "libzerocopy_derive-0.7.35",
     crate_name: "zerocopy_derive",
     cargo_env_compat: true,
     cargo_pkg_version: "0.7.35",
diff --git a/extra_versions/crates/zerocopy-derive/cargo_embargo.json b/extra_versions/crates/zerocopy-derive/cargo_embargo.json
index 1dc3922..1815c14 100644
--- a/extra_versions/crates/zerocopy-derive/cargo_embargo.json
+++ b/extra_versions/crates/zerocopy-derive/cargo_embargo.json
@@ -1,4 +1,8 @@
 {
+  "module_name_overrides": {
+    "external_rust_crates_zerocopy-derive_license": "external_rust_crates_zerocopy-derive-0.7.35_license",
+    "libzerocopy_derive": "libzerocopy_derive-0.7.35"
+  },
   "run_cargo": false,
   "generate_rulesmk": true
 }
diff --git a/extra_versions/crates/zerocopy/Android.bp b/extra_versions/crates/zerocopy/Android.bp
index 49bb9f3..420186f 100644
--- a/extra_versions/crates/zerocopy/Android.bp
+++ b/extra_versions/crates/zerocopy/Android.bp
@@ -2,19 +2,19 @@
 // Do not modify this file because the changes will be overridden on upgrade.
 
 package {
-    default_applicable_licenses: ["external_rust_crates_zerocopy_license"],
+    default_applicable_licenses: ["external_rust_crates_zerocopy-0.7.35_license"],
     default_team: "trendy_team_android_rust",
 }
 
 license {
-    name: "external_rust_crates_zerocopy_license",
+    name: "external_rust_crates_zerocopy-0.7.35_license",
     visibility: [":__subpackages__"],
     license_kinds: ["SPDX-license-identifier-Apache-2.0"],
     license_text: ["LICENSE"],
 }
 
 rust_library {
-    name: "libzerocopy",
+    name: "libzerocopy-0.7.35",
     host_supported: true,
     crate_name: "zerocopy",
     cargo_env_compat: true,
@@ -28,7 +28,7 @@
         "zerocopy-derive",
     ],
     rustlibs: ["libbyteorder"],
-    proc_macros: ["libzerocopy_derive"],
+    proc_macros: ["libzerocopy_derive-0.7.35"],
     apex_available: [
         "//apex_available:platform",
         "//apex_available:anyapex",
@@ -39,7 +39,7 @@
 }
 
 rust_library_rlib {
-    name: "libzerocopy_nostd",
+    name: "libzerocopy-0.7.35_nostd",
     crate_name: "zerocopy",
     cargo_env_compat: true,
     cargo_pkg_version: "0.7.35",
@@ -71,7 +71,7 @@
 }
 
 rust_library_rlib {
-    name: "libzerocopy_nostd_noalloc",
+    name: "libzerocopy-0.7.35_nostd_noalloc",
     crate_name: "zerocopy",
     cargo_env_compat: true,
     cargo_pkg_version: "0.7.35",
diff --git a/extra_versions/crates/zerocopy/cargo_embargo.json b/extra_versions/crates/zerocopy/cargo_embargo.json
index 315b9c6..98707da 100644
--- a/extra_versions/crates/zerocopy/cargo_embargo.json
+++ b/extra_versions/crates/zerocopy/cargo_embargo.json
@@ -1,5 +1,10 @@
 {
   "run_cargo": false,
+  "module_name_overrides": {
+    "external_rust_crates_zerocopy_license": "external_rust_crates_zerocopy-0.7.35_license",
+    "libzerocopy": "libzerocopy-0.7.35",
+    "libzerocopy_derive": "libzerocopy_derive-0.7.35"
+  },
   "variants": [
     {
       "features": [
@@ -17,7 +22,7 @@
       ],
       "module_name_overrides": {
         "libbyteorder": "libbyteorder_nostd",
-        "libzerocopy": "libzerocopy_nostd"
+        "libzerocopy": "libzerocopy-0.7.35_nostd"
       },
       "package": {
         "zerocopy": {
@@ -36,7 +41,7 @@
       ],
       "module_name_overrides": {
         "libbyteorder": "libbyteorder_nostd",
-        "libzerocopy": "libzerocopy_nostd_noalloc"
+        "libzerocopy": "libzerocopy-0.7.35_nostd_noalloc"
       },
       "package": {
         "zerocopy": {
diff --git a/extra_versions/pseudo_crate/Cargo.lock b/extra_versions/pseudo_crate/Cargo.lock
index fd09a00..d285da8 100644
--- a/extra_versions/pseudo_crate/Cargo.lock
+++ b/extra_versions/pseudo_crate/Cargo.lock
@@ -11,6 +11,8 @@
  "jni",
  "protobuf",
  "protobuf-codegen",
+ "zerocopy",
+ "zerocopy-derive",
 ]
 
 [[package]]
@@ -37,6 +39,12 @@
 checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
 
 [[package]]
+name = "byteorder"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
+
+[[package]]
 name = "bytes"
 version = "1.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -364,3 +372,24 @@
 version = "0.52.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
+
+[[package]]
+name = "zerocopy"
+version = "0.7.35"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
+dependencies = [
+ "byteorder",
+ "zerocopy-derive",
+]
+
+[[package]]
+name = "zerocopy-derive"
+version = "0.7.35"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn",
+]
diff --git a/extra_versions/pseudo_crate/Cargo.toml b/extra_versions/pseudo_crate/Cargo.toml
index 51653d7..673b51e 100644
--- a/extra_versions/pseudo_crate/Cargo.toml
+++ b/extra_versions/pseudo_crate/Cargo.toml
@@ -11,3 +11,5 @@
 jni = "=0.20.0"
 protobuf = "=2.27.1"
 protobuf-codegen = "=2.27.1"
+zerocopy = "=0.7.35"
+zerocopy-derive = "=0.7.35"
diff --git a/extra_versions/pseudo_crate/crate-list.txt b/extra_versions/pseudo_crate/crate-list.txt
index bc0aed9..a2aefa7 100644
--- a/extra_versions/pseudo_crate/crate-list.txt
+++ b/extra_versions/pseudo_crate/crate-list.txt
@@ -3,3 +3,5 @@
 jni
 protobuf
 protobuf-codegen
+zerocopy
+zerocopy-derive