Script compiler android and make a file system

一、 modify AndroidBoard.mk
gedit device/wolf/smdk6410/AndroidBoard.mk

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := gpio-keys.kcm
LOCAL_MODULE_TAGS := eng
include $(BUILD_KEY_CHAR_MAP)

#copy base files

PRODUCT_COPY_FILES += \
 $(LOCAL_PATH)/asound.conf:system/etc/asound.conf \
 $(LOCAL_PATH)/vold.fstab:system/etc/vold.fstab \
 $(LOCAL_PATH)/init.rc:root/init.rc
 
二、build android source
1. source ./build/envsetup.sh
including device/htc/passion/vendorsetup.sh
including device/samsung/crespo/vendorsetup.sh
including device/wolf/smdk6410/vendorsetup.sh
2. lunch
You're building on Linux

Lunch menu... pick a combo:
     1. generic-eng
     2. simulator
     3. full_passion-userdebug
     4. full_crespo-userdebug
     5. smdk6410-eng

Which would you like? [generic-eng] 5
3 make -j4
三、 make rootfs

#!/bin/sh

PRODUCT=smdk6410
FS_DIR=/home/nfsdir
echo -n "Generating rootfs for Android .."

rm -rf ${FS_DIR}

cp -a out/target/product/${PRODUCT}/root/ ${FS_DIR}
cp -a out/target/product/${PRODUCT}/system/* ${FS_DIR}/system
cp -a out/target/product/${PRODUCT}/data/* ${FS_DIR}/data
chown root:root ${FS_DIR} -R

echo "...done"

echo -n "Install prebuilt packages..."
if [ -f device/wolf/common/busybox-bin.tar.gz ]; then
 tar -xf device/wolf/common/busybox-bin.tar.gz -C ${FS_DIR}/system
fi

echo "...done"


四、setenv
setenv bootargs console=ttySAC0,115200 root=/dev/nfs init=/init nfsroot=10.50.25.10:/home/nfsdir
ip=10.50.25.20:10.50.25.10:10.50.25.1:255.255.255.0:::eth0:off

你可能感兴趣的:(android,File,Build,Path,include,compiler)