| #!/bin/bash |
| |
| # |
| # Copyright 2015 The Android Open Source Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| set -e |
| |
| function PrintUsage() { |
| echo "$0 -m <mem>" |
| echo -e "\t-m <mem>\tSet memory size in MB" |
| exit 1 |
| } |
| |
| MEM=1024 |
| ARGS=$(getopt -o hm: -- "$@") |
| eval set -- "$ARGS" |
| while true ; do |
| case "$1" in |
| -m) |
| case "$2" in |
| *) MEM=$2; shift 2;; |
| esac ;; |
| -h) PrintUsage ;; |
| --) shift; break ;; |
| esac |
| done |
| |
| opts=() |
| if [[ -c /dev/kvm ]]; then |
| # KVM is available on the host |
| opts+=( -enable-kvm ) |
| fi |
| |
| echo Starting emulator with ${MEM}MB memory |
| exec \ |
| ${ANDROID_BUILD_TOP}/prebuilts/android-emulator/linux-x86_64/qemu/linux-x86_64/qemu-system-x86_64 \ |
| -m ${MEM}M \ |
| -kernel ${ANDROID_BUILD_TOP}/out/target/product/brilloemulator_x86_64/kernel \ |
| -append "console=ttyS0 root=/dev/vda androidboot.hardware=qemu qemu=1 rootwait noinitrd init=/init androidboot.selinux=enforcing" \ |
| -nographic \ |
| -device virtio-blk-pci,drive=system\ |
| -drive file="${ANDROID_BUILD_TOP}/out/target/product/brilloemulator_x86_64/system.img,if=none,id=system,format=raw" \ |
| -device virtio-blk-pci,drive=userdata \ |
| -drive file="${ANDROID_BUILD_TOP}/out/target/product/brilloemulator_x86_64/userdata.img,if=none,id=userdata,format=raw" \ |
| -netdev user,id=net0,hostfwd=tcp::5555-:5555 \ |
| -device virtio-net-pci,netdev=net0 \ |
| -vga none \ |
| -L ${ANDROID_BUILD_TOP}/prebuilts/android-emulator/linux-x86_64/lib/pc-bios \ |
| "${opts[@]}" \ |
| "$@" |