S = "${WORKDIR}/linux"
B = "${WORKDIR}/linux-${WRMACHINE}-${LINUX_KERNEL_TYPE}-build"
+# functionality flags
+force_revisions = "t"
+
do_patch() {
cd ${S}
if [ -f ${WORKDIR}/defconfig ]; then
fi
}
+validate_branches() {
+ branch_head=`git show-ref -s --heads ${WRMACHINE}-${LINUX_KERNEL_TYPE}`
+ meta_head=`git show-ref -s --heads wrs_meta`
+ target_branch_head="${SRCREV_pn-linux-wrs_machine}"
+ target_meta_head="${SRCREV_pn-linux-wrs_meta}"
+
+ if [ -n "$target_branch_head" ] && [ "$branch_head" != "$target_branch_head" ]; then
+ if [ -n "${force_revisions}" ]; then
+ echo "Forcing branch ${WRMACHINE}-${LINUX_KERNEL_TYPE} to ${target_branch_head}"
+ git branch -m ${WRMACHINE}-${LINUX_KERNEL_TYPE} ${WRMACHINE}-${LINUX_KERNEL_TYPE}-orig
+ git checkout -b ${WRMACHINE}-${LINUX_KERNEL_TYPE} ${target_branch_head}
+ fi
+ fi
+
+ if [ "$meta_head" != "$target_meta_head" ]; then
+ if [ -n "${force_revisions}" ]; then
+ echo "Forcing branch wrs_meta to ${target_meta_head}"
+ git branch -m wrs_meta wrs_meta-orig
+ git checkout -b wrs_meta ${target_meta_head}
+ fi
+ fi
+}
+
do_wrlinux_checkout() {
if [ -d ${WORKDIR}/.git/refs/remotes/origin ]; then
echo "Fixing up git directory for ${WRMACHINE}-${LINUX_KERNEL_TYPE}"
fi
fi
cd ${S}
+
+ # checkout and clobber and unimportant files
+ git checkout -f ${WRMACHINE}-${LINUX_KERNEL_TYPE}
+
+ validate_branches
+
+ # this second checkout is intentional, we want to leave ourselves
+ # on the branch to be built, but validate_branches could have changed
+ # our initial checkout. So we do it a second time to be sure
git checkout -f ${WRMACHINE}-${LINUX_KERNEL_TYPE}
}
do_wrlinux_checkout[dirs] = "${S}"