Index: bin/cros_build_gpt.sh |
diff --git a/bin/cros_build_gpt.sh b/bin/cros_build_gpt.sh |
deleted file mode 100755 |
index 3d6f5bcd43d96bfc8c6d924019962e95f3fe95a8..0000000000000000000000000000000000000000 |
--- a/bin/cros_build_gpt.sh |
+++ /dev/null |
@@ -1,167 +0,0 @@ |
-#!/bin/bash |
-# |
-# Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
-# Use of this source code is governed by a BSD-style license that can be |
-# found in the LICENSE file. |
-# |
-# Load common constants. This should be the first executable line. |
-# The path to common.sh should be relative to your script's location. |
-. "/usr/lib/crosutils/common.sh" |
- |
-# Load functions and constants for chromeos-install |
-. "/usr/lib/installer/chromeos-common.sh" |
- |
-# Script must be run inside the chroot. |
-restart_in_chroot_if_needed $* |
- |
-get_default_board |
- |
-# Flags. |
-DEFINE_string arch "" \ |
- "The target architecture (\"arm\" or \"x86\")." |
-DEFINE_string board "$DEFAULT_BOARD" \ |
- "The board to build an image for." |
-DEFINE_string arm_extra_bootargs "" \ |
- "Additional command line options to pass to the ARM kernel." |
-DEFINE_integer rootfs_partition_size 1024 \ |
- "rootfs parition size in MBs." |
- |
-# Usage. |
-FLAGS_HELP=$(cat <<EOF |
- |
-Usage: $(basename $0) [flags] IMAGEDIR OUTDEV |
- |
-This takes the image components in IMAGEDIR and creates a bootable, |
-GPT-formatted image in OUTDEV. OUTDEV can be a file or block device. |
- |
-EOF |
-) |
- |
-# Parse command line. |
-FLAGS "$@" || exit 1 |
-eval set -- "${FLAGS_ARGV}" |
- |
-if [[ -z "$FLAGS_board" ]] ; then |
- error "--board is required." |
- exit 1 |
-fi |
- |
-if [[ -z "$1" || -z "$2" ]] ; then |
- flags_help |
- exit 1 |
-fi |
-IMAGEDIR="$1" |
-OUTDEV="$2" |
- |
-if [[ -n "$FLAGS_arch" ]]; then |
- ARCH=${FLAGS_arch} |
-else |
- # Figure out ARCH from the given toolchain. |
- # TODO: Move to common.sh as a function after scripts are switched over. |
- TC_ARCH=$(echo "$CHOST" | awk -F'-' '{ print $1 }') |
- case "$TC_ARCH" in |
- arm*) |
- ARCH="arm" |
- ;; |
- *86) |
- ARCH="x86" |
- ;; |
- *) |
- error "Unable to determine ARCH from toolchain: $CHOST" |
- exit 1 |
- esac |
-fi |
- |
-# Only now can we die on error. shflags functions leak non-zero error codes, |
-# so will die prematurely if 'set -e' is specified before now. |
-set -e |
-# Die on uninitialized variables. |
-set -u |
- |
-# Check for missing parts. |
-ROOTFS_IMG="${IMAGEDIR}/rootfs.image" |
-if [[ ! -s ${ROOTFS_IMG} ]]; then |
- error "Can't find ${ROOTFS_IMG}" |
- exit 1 |
-fi |
- |
-KERNEL_IMG="${IMAGEDIR}/vmlinuz.image" |
-if [[ ! -s ${KERNEL_IMG} ]]; then |
- error "Can't find ${KERNEL_IMG}" |
- exit 1 |
-fi |
- |
-STATEFUL_IMG="${IMAGEDIR}/stateful_partition.image" |
-if [ ! -s ${STATEFUL_IMG} ]; then |
- error "Can't find ${STATEFUL_IMG}" |
- exit 1 |
-fi |
- |
-OEM_IMG="${IMAGEDIR}/partner_partition.image" |
-if [[ ! -s ${OEM_IMG} ]]; then |
- error "Can't find ${OEM_IMG}" |
- exit 1 |
-fi |
- |
-ESP_IMG="${IMAGEDIR}/esp.image" |
-if [ ! -s ${ESP_IMG} ]; then |
- error "Can't find ${ESP_IMG}" |
- exit 1 |
-fi |
- |
-# We'll need some code to put in the PMBR, for booting on legacy BIOS. Some ARM |
-# systems will use a U-Boot script temporarily, but it goes in the same place. |
-if [[ "$ARCH" = "arm" ]]; then |
- PMBRCODE=/dev/zero |
-else |
- PMBRCODE=$(readlink -f /usr/share/syslinux/gptmbr.bin) |
-fi |
- |
-# Create the GPT. This has the side-effect of setting some global vars |
-# describing the partition table entries (see the comments in the source). |
-install_gpt $OUTDEV $(numsectors $ROOTFS_IMG) $(numsectors $STATEFUL_IMG) \ |
- $PMBRCODE $(numsectors $ESP_IMG) false $FLAGS_rootfs_partition_size |
- |
-if [[ "$ARCH" = "arm" ]]; then |
- # assume /dev/mmcblk1. we could not get this from ${OUTDEV} |
- DEVICE=1 |
- MBR_SCRIPT_UIMG=$(make_arm_mbr \ |
- ${START_KERN_A} \ |
- ${NUM_KERN_SECTORS} \ |
- ${DEVICE} \ |
- "${FLAGS_arm_extra_bootargs}") |
- sudo dd bs=1 count=`stat --printf="%s" ${MBR_SCRIPT_UIMG}` \ |
- if="$MBR_SCRIPT_UIMG" of=${OUTDEV} conv=notrunc |
-fi |
- |
-# Emit helpful scripts for testers, etc. |
-/usr/bin/cros_emit_gpt_scripts.sh "${OUTDEV}" "${IMAGEDIR}" |
- |
-sudo= |
-if [ ! -w "$OUTDEV" ] ; then |
- # use sudo when writing to a block device. |
- sudo=sudo |
-fi |
- |
-# Now populate the partitions. |
-echo "Copying stateful partition..." |
-$sudo dd if=${STATEFUL_IMG} of=${OUTDEV} conv=notrunc bs=512 \ |
- seek=${START_STATEFUL} |
- |
-echo "Copying OEM partition..." |
-$sudo dd if=${OEM_IMG} of=${OUTDEV} conv=notrunc bs=512 seek=${START_OEM} |
- |
-echo "Copying kernel..." |
-$sudo dd if=${KERNEL_IMG} of=${OUTDEV} conv=notrunc bs=512 seek=${START_KERN_A} |
- |
-echo "Copying rootfs..." |
-$sudo dd if=${ROOTFS_IMG} of=${OUTDEV} conv=notrunc bs=512 \ |
- seek=${START_ROOTFS_A} |
- |
-echo "Copying EFI system partition..." |
-$sudo dd if=${ESP_IMG} of=${OUTDEV} conv=notrunc bs=512 seek=${START_ESP} |
- |
-# Clean up temporary files. |
-if [[ -n "${MBR_IMG:-}" ]]; then |
- rm "${MBR_IMG}" |
-fi |