aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlistair Delva <adelva@google.com>2022-07-28 09:58:07 -0700
committerAlistair Delva <adelva@google.com>2022-07-28 10:08:56 -0700
commit3a43ffcc55719619c72a5d6e39d4b973f28d2ae6 (patch)
treefa7cc94ea200e4aaafdb98f508f2da72213ad13c
parent566b3776e9c14fe658b2b60d419b75cec745141d (diff)
downloadcuttlefish_vmm-3a43ffcc55719619c72a5d6e39d4b973f28d2ae6.tar.gz
Revert "Adjustments for android12-gsi"
This reverts commit 5f08d5b09ee7501edf69f33e9a732f9ddb6838c2. The part of the original change which used cc_prebuilt_library instead of cc_prebuilt_binary caused the libraries to be installed with an unwanted .so extension which was noticed by the host package, where the library intermediaries are not in the library search path, unlike a full build. Bug: 216827224 Bug: 240517287 Change-Id: Ie677bccc1e8be5d7dbb0da067aa5a7c5deca9574
-rw-r--r--Android.bp60
-rwxr-xr-xgen_android_bp.sh18
-rwxr-xr-xscripts/crosvm4
3 files changed, 51 insertions, 31 deletions
diff --git a/Android.bp b/Android.bp
index cc8c3f0..0f7c225 100644
--- a/Android.bp
+++ b/Android.bp
@@ -15,100 +15,108 @@
// limitations under the License.
cc_prebuilt_binary {
+ name: "common_crosvm",
+ stem: "crosvm",
+ srcs: ["scripts/crosvm"],
+ defaults: ["cuttlefish_host_only"],
+}
+// NOTE: Using cc_prebuilt_binary because cc_prebuilt_library can't handle stem on pie
+
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_crosvm",
srcs: ["aarch64-linux-gnu/bin/crosvm"],
stem: "crosvm",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libdrm.so.2_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libdrm.so.2"],
stem: "libdrm.so.2",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libepoxy.so.0_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libepoxy.so.0"],
stem: "libepoxy.so.0",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libgbm.so.1_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libgbm.so.1"],
stem: "libgbm.so.1",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libminijail.so_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libminijail.so"],
stem: "libminijail.so",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libvirglrenderer.so.0_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libvirglrenderer.so.0"],
stem: "libvirglrenderer.so.0",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "aarch64_linux_gnu_libvirglrenderer.so.1_for_crosvm",
srcs: ["aarch64-linux-gnu/bin/libvirglrenderer.so.1"],
stem: "libvirglrenderer.so.1",
relative_install_path: "aarch64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
cc_prebuilt_binary {
name: "x86_64_linux_gnu_crosvm",
srcs: ["x86_64-linux-gnu/bin/crosvm"],
stem: "crosvm",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libdrm.so.2_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libdrm.so.2"],
stem: "libdrm.so.2",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libepoxy.so.0_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libepoxy.so.0"],
stem: "libepoxy.so.0",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libgbm.so.1_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libgbm.so.1"],
stem: "libgbm.so.1",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libgfxstream_backend.so_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libgfxstream_backend.so"],
stem: "libgfxstream_backend.so",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libminijail.so_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libminijail.so"],
stem: "libminijail.so",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
-cc_prebuilt_library {
+cc_prebuilt_binary {
name: "x86_64_linux_gnu_libvirglrenderer.so.1_for_crosvm",
srcs: ["x86_64-linux-gnu/bin/libvirglrenderer.so.1"],
stem: "libvirglrenderer.so.1",
relative_install_path: "x86_64-linux-gnu",
- defaults: ["cuttlefish_host"],
+ defaults: ["cuttlefish_host_only"],
}
diff --git a/gen_android_bp.sh b/gen_android_bp.sh
index 0bbcb14..af5b274 100755
--- a/gen_android_bp.sh
+++ b/gen_android_bp.sh
@@ -150,6 +150,17 @@ function gen_android_bp4seccomp() {
function gen_main_android_bp() {
gen_license 2019
+ gen_module "cc_prebuilt_binary" ' ' \
+ --name="\"common_crosvm\"" \
+ --stem="\"crosvm"\" \
+ --srcs="[\"scripts/crosvm\"]" \
+ --defaults="[\"cuttlefish_host_only\"]"
+
+ cat <<EOF
+// NOTE: Using cc_prebuilt_binary because cc_prebuilt_library can't handle stem on pie
+
+EOF
+
for i in */bin/*; do
if [[ ! -L "$i" ]]; then
name="${i//\//_}"
@@ -160,17 +171,14 @@ for i in */bin/*; do
if [[ "crosvm" != "${stem}" ]]; then
name="${name}_for_crosvm"
- module_type=cc_prebuilt_library
- else
- module_type=cc_prebuilt_binary
fi
- gen_module "${module_type}" ' ' \
+ gen_module "cc_prebuilt_binary" ' ' \
--name="\"${name}\"" \
--srcs="[\"$i\"]" \
--stem="\"$stem"\" \
--relative_install_path="\"${path}\"" \
- --defaults="[\"cuttlefish_host\"]"
+ --defaults="[\"cuttlefish_host_only\"]"
fi
done
}
diff --git a/scripts/crosvm b/scripts/crosvm
new file mode 100755
index 0000000..6b4029a
--- /dev/null
+++ b/scripts/crosvm
@@ -0,0 +1,4 @@
+#!/bin/bash
+
+export LD_PRELOAD=libdrm.so.2
+exec "$(dirname "$0")/$(uname -m)-linux-gnu/$(basename "$0")" "${@}"