L版本How to clone project
时间:10-02
整理:3721RD
点击:
[DESCRIPTION]
AOSP,L版本clone project 的方式
[SOLUTION]
Clone Project 指的是对现有的Project创建出新的Project
▪后面指令中使用的变量含义如下:
•$BASE_PROJECT 指的是新Project的基础Project
•$NEW_PROJECT 指的是将创建的新的Project
•$PLATFORM 指的是平台信息,如MT6795等
•$COMPANY 指的是开案公司的名字,如lenovo, tinno, huawei等等。
▪ cd bootable/bootloader/preloader/custom :(clone preloader)
输入以下指令
•cp -r ${BASE_PROJECT} ${NEW_PROJECT}
• mv ${NEW_PROJECT}/${BASE_PROJECT}.mk ${NEW_PROJECT}/${NEW_PROJECT}.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g ${NEW_PROJECT}/${NEW_PROJECT}.mk
▪cd bootable/bootloader/lk : (clone lk)
输入以下指令
•cp project/${BASE_PROJECT}.mk project/${NEW_PROJECT}.mk
•cp -r target/${BASE_PROJECT} target/${NEW_PROJECT}
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g project/${NEW_PROJECT}.mk
•sed -i s /${BASE_PROJECT}/${NEW_PROJECT}/g target/${NEW_PROJECT}/include/target/cust_usb.h
▪cd kernel-3.10/ :(clone kernel)
输入以下指令
•cp -r drivers/misc/mediatek/mach/mt6795/${BASE_PROJECT} drivers/misc/mediatek/mach/mt6795/${NEW_PROJECT}
•cp arch/ARM64/configs/${BASE_PROJECT}_defconfig arch/arm64/configs/${NEW_PROJECT}_defconfig
•cp arch/arm64/configs/${BASE_PROJECT}_debug_defconfig arch/arm64/configs/${NEW_PROJECT}_debug_defconfig
cd kernel-3.10/arch/arm64/
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g configs/${NEW_PROJECT}_defconfig
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g configs/${NEW_PROJECT}_debug_defconfig
• cp boot/dts/ ${BASE_PROJECT}.dts boot/dts/ ${NEW_PROJECT}.dts
▪clone android
•cp -r device/${COMPANY}/${BASE_PROJECT} device/${COMPANY}/${NEW_PROJECT}
•mv device/${COMPANY}/${NEW_PROJECT}/full_${BASE_PROJECT}.mk device/${COMPANY}/ ${NEW_PROJECT}/full_${NEW_PROJECT}.mk
•cp -r vendor/mediatek/proprietary/custom/${BASE_PROJECT} vendor/mediatek/proprietary/custom/${NEW_PROJECT}
•cp vendor/mediatek/proprietary/trustzone/project /${BASE_PROJECT} mk vendor/mediatek/proprietary/trustzone/project /${NEW_PROJECT } mk
•cp md32/md32/project /${BASE_PROJECT} .mk md32/md32/project /${NEW_PROJECT} .mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/AndroidProducts.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/BoardConfig.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/device.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/full_${NEW_PROJECT}.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/vendorsetup.sh
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g vendor/mediatek/proprietary/custom/${NEW_PROJECT}/Android.mk
▪If share libraries with ${BASE_PROJECT}
•sed -is#vendor/${COMPANY}/libs/${NEW_PROJECT}#vendor/${COMPANY}/libs/${BASE_PROJECT}#g device/${COMPANY}/${NEW_PROJECT}/device.mk
▪If not share libraries with ${BASE_PROJECT}
•cp –r vendor/${COMPANY}/libs/${BASE_PROJECT} vendor/${COMPANY}/libs/${NEW_PROJECT}
AOSP,L版本clone project 的方式
[SOLUTION]
Clone Project 指的是对现有的Project创建出新的Project
▪后面指令中使用的变量含义如下:
•$BASE_PROJECT 指的是新Project的基础Project
•$NEW_PROJECT 指的是将创建的新的Project
•$PLATFORM 指的是平台信息,如MT6795等
•$COMPANY 指的是开案公司的名字,如lenovo, tinno, huawei等等。
▪ cd bootable/bootloader/preloader/custom :(clone preloader)
输入以下指令
•cp -r ${BASE_PROJECT} ${NEW_PROJECT}
• mv ${NEW_PROJECT}/${BASE_PROJECT}.mk ${NEW_PROJECT}/${NEW_PROJECT}.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g ${NEW_PROJECT}/${NEW_PROJECT}.mk
▪cd bootable/bootloader/lk : (clone lk)
输入以下指令
•cp project/${BASE_PROJECT}.mk project/${NEW_PROJECT}.mk
•cp -r target/${BASE_PROJECT} target/${NEW_PROJECT}
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g project/${NEW_PROJECT}.mk
•sed -i s /${BASE_PROJECT}/${NEW_PROJECT}/g target/${NEW_PROJECT}/include/target/cust_usb.h
▪cd kernel-3.10/ :(clone kernel)
输入以下指令
•cp -r drivers/misc/mediatek/mach/mt6795/${BASE_PROJECT} drivers/misc/mediatek/mach/mt6795/${NEW_PROJECT}
•cp arch/ARM64/configs/${BASE_PROJECT}_defconfig arch/arm64/configs/${NEW_PROJECT}_defconfig
•cp arch/arm64/configs/${BASE_PROJECT}_debug_defconfig arch/arm64/configs/${NEW_PROJECT}_debug_defconfig
cd kernel-3.10/arch/arm64/
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g configs/${NEW_PROJECT}_defconfig
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g configs/${NEW_PROJECT}_debug_defconfig
• cp boot/dts/ ${BASE_PROJECT}.dts boot/dts/ ${NEW_PROJECT}.dts
▪clone android
•cp -r device/${COMPANY}/${BASE_PROJECT} device/${COMPANY}/${NEW_PROJECT}
•mv device/${COMPANY}/${NEW_PROJECT}/full_${BASE_PROJECT}.mk device/${COMPANY}/ ${NEW_PROJECT}/full_${NEW_PROJECT}.mk
•cp -r vendor/mediatek/proprietary/custom/${BASE_PROJECT} vendor/mediatek/proprietary/custom/${NEW_PROJECT}
•cp vendor/mediatek/proprietary/trustzone/project /${BASE_PROJECT} mk vendor/mediatek/proprietary/trustzone/project /${NEW_PROJECT } mk
•cp md32/md32/project /${BASE_PROJECT} .mk md32/md32/project /${NEW_PROJECT} .mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/AndroidProducts.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/BoardConfig.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/device.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/full_${NEW_PROJECT}.mk
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g device/${COMPANY}/${NEW_PROJECT}/vendorsetup.sh
•sed -i s/${BASE_PROJECT}/${NEW_PROJECT}/g vendor/mediatek/proprietary/custom/${NEW_PROJECT}/Android.mk
▪If share libraries with ${BASE_PROJECT}
•sed -is#vendor/${COMPANY}/libs/${NEW_PROJECT}#vendor/${COMPANY}/libs/${BASE_PROJECT}#g device/${COMPANY}/${NEW_PROJECT}/device.mk
▪If not share libraries with ${BASE_PROJECT}
•cp –r vendor/${COMPANY}/libs/${BASE_PROJECT} vendor/${COMPANY}/libs/${NEW_PROJECT}
