scripts: gki: Add generic configuration options for defconfig
Add config fragment options to generate target specific defconfig during compile time from multiple QCOM configuration options. Change-Id: I5c1818a0658b781d0f0c7fae9378a9c573d5dd69 Signed-off-by: Jeevan Shriram <jshriram@codeaurora.org>
This commit is contained in:
parent
e1bdeb4100
commit
6add15d8b6
@ -20,12 +20,15 @@ CONFIGS_DIR=${KERN_SRC}/arch/${ARCH}/configs/vendor
|
||||
|
||||
PLATFORM_NAME=$1
|
||||
|
||||
BASE_DEFCONFIG=${KERN_SRC}/arch/${ARCH}/configs/gki_defconfig
|
||||
BASE_DEFCONFIG=${KERN_SRC}/arch/${ARCH}/configs/${2:-gki_defconfig}
|
||||
|
||||
# Fragements that are available for the platform
|
||||
QCOM_GKI_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_GKI.config
|
||||
QCOM_QGKI_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_QGKI.config
|
||||
QCOM_DEBUG_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_debug.config
|
||||
|
||||
QCOM_GENERIC_PERF_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}.config
|
||||
QCOM_GENERIC_DEBUG_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}-debug.config
|
||||
|
||||
export ARCH CROSS_COMPILE REAL_CC HOSTCC HOSTLD HOSTAR KERN_SRC KERN_OUT \
|
||||
CONFIGS_DIR BASE_DEFCONFIG QCOM_GKI_FRAG QCOM_QGKI_FRAG QCOM_DEBUG_FRAG
|
||||
|
@ -18,12 +18,21 @@ fi
|
||||
|
||||
SCRIPTS_ROOT=$(readlink -f $(dirname $0)/)
|
||||
|
||||
PLATFORM_NAME=`echo $1 | sed -r "s/(-gki_defconfig|-qgki_defconfig|-qgki-debug_defconfig)$//"`
|
||||
TEMP_DEF_NAME=`echo $1 | sed -r "s/_defconfig$//"`
|
||||
DEF_VARIANT=`echo ${TEMP_DEF_NAME} | sed -r "s/.*-//"`
|
||||
PLATFORM_NAME=`echo ${TEMP_DEF_NAME} | sed -r "s/-.*$//"`
|
||||
|
||||
|
||||
PLATFORM_NAME=`echo $PLATFORM_NAME | sed "s/vendor\///g"`
|
||||
|
||||
REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"`
|
||||
|
||||
# We should be in the kernel root after the envsetup
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME
|
||||
if [[ "${REQUIRED_DEFCONFIG}" != *"gki"* ]]; then
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME generic_defconfig
|
||||
else
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME
|
||||
fi
|
||||
|
||||
KERN_MAKE_ARGS="ARCH=$ARCH \
|
||||
CROSS_COMPILE=$CROSS_COMPILE \
|
||||
@ -38,12 +47,12 @@ KERN_MAKE_ARGS="ARCH=$ARCH \
|
||||
# Allyes fragment temporarily created on GKI config fragment
|
||||
QCOM_GKI_ALLYES_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_ALLYES_GKI.config
|
||||
|
||||
if [[ "${REQUIRED_DEFCONFIG}" == *"gki"* ]]; then
|
||||
if [ ! -f "${QCOM_GKI_FRAG}" ]; then
|
||||
echo "Error: Invalid input"
|
||||
usage
|
||||
fi
|
||||
|
||||
REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"`
|
||||
fi
|
||||
|
||||
FINAL_DEFCONFIG_BLEND=""
|
||||
|
||||
@ -58,7 +67,13 @@ case "$REQUIRED_DEFCONFIG" in
|
||||
;;
|
||||
${PLATFORM_NAME}-gki_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GKI_FRAG "
|
||||
;;
|
||||
${PLATFORM_NAME}-debug_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_DEBUG_FRAG "
|
||||
;&
|
||||
${PLATFORM_NAME}_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_PERF_FRAG "
|
||||
;;
|
||||
esac
|
||||
|
||||
FINAL_DEFCONFIG_BLEND+=${BASE_DEFCONFIG}
|
||||
@ -78,7 +93,8 @@ mv .config .config_base
|
||||
# Strip off the complete file paths and retail only the values beginning with vendor/
|
||||
MENUCONFIG_BLEND=""
|
||||
for config_file in $FINAL_DEFCONFIG_BLEND; do
|
||||
if [[ $config_file == *"gki_defconfig" ]]; then
|
||||
if [ $config_file == *"gki_defconfig" ] ||
|
||||
[ $config_file == "${BASE_DEFCONFIG}" ]; then
|
||||
MENUCONFIG_BLEND+=" "`basename $config_file`" "
|
||||
else
|
||||
MENUCONFIG_BLEND+=" vendor/"`basename $config_file`" "
|
||||
|
@ -18,12 +18,20 @@ fi
|
||||
|
||||
SCRIPTS_ROOT=$(readlink -f $(dirname $0)/)
|
||||
|
||||
PLATFORM_NAME=`echo $1 | sed -r "s/(-gki_defconfig|-qgki_defconfig|-qgki-debug_defconfig)$//"`
|
||||
TEMP_DEF_NAME=`echo $1 | sed -r "s/_defconfig$//"`
|
||||
DEF_VARIANT=`echo ${TEMP_DEF_NAME} | sed -r "s/.*-//"`
|
||||
PLATFORM_NAME=`echo ${TEMP_DEF_NAME} | sed -r "s/-.*$//"`
|
||||
|
||||
PLATFORM_NAME=`echo $PLATFORM_NAME | sed "s/vendor\///g"`
|
||||
|
||||
REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"`
|
||||
|
||||
# We should be in the kernel root after the envsetup
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME
|
||||
if [[ "${REQUIRED_DEFCONFIG}" != *"gki"* ]]; then
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME generic_defconfig
|
||||
else
|
||||
source ${SCRIPTS_ROOT}/envsetup.sh $PLATFORM_NAME
|
||||
fi
|
||||
|
||||
KERN_MAKE_ARGS="ARCH=$ARCH \
|
||||
CROSS_COMPILE=$CROSS_COMPILE \
|
||||
@ -38,12 +46,12 @@ KERN_MAKE_ARGS="ARCH=$ARCH \
|
||||
# Allyes fragment temporarily created on GKI config fragment
|
||||
QCOM_GKI_ALLYES_FRAG=${CONFIGS_DIR}/${PLATFORM_NAME}_ALLYES_GKI.config
|
||||
|
||||
if [[ "${REQUIRED_DEFCONFIG}" == *"gki"* ]]; then
|
||||
if [ ! -f "${QCOM_GKI_FRAG}" ]; then
|
||||
echo "Error: Invalid input"
|
||||
usage
|
||||
fi
|
||||
|
||||
REQUIRED_DEFCONFIG=`echo $1 | sed "s/vendor\///g"`
|
||||
fi
|
||||
|
||||
FINAL_DEFCONFIG_BLEND=""
|
||||
|
||||
@ -58,7 +66,13 @@ case "$REQUIRED_DEFCONFIG" in
|
||||
;;
|
||||
${PLATFORM_NAME}-gki_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GKI_FRAG "
|
||||
;;
|
||||
${PLATFORM_NAME}-debug_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_DEBUG_FRAG "
|
||||
;&
|
||||
${PLATFORM_NAME}_defconfig )
|
||||
FINAL_DEFCONFIG_BLEND+=" $QCOM_GENERIC_PERF_FRAG "
|
||||
;;
|
||||
esac
|
||||
|
||||
FINAL_DEFCONFIG_BLEND+=${BASE_DEFCONFIG}
|
||||
|
Loading…
Reference in New Issue
Block a user