diff options
-rw-r--r-- | meta/recipes-kernel/linux/linux-wrs_git.bb | 40 |
1 files changed, 32 insertions, 8 deletions
diff --git a/meta/recipes-kernel/linux/linux-wrs_git.bb b/meta/recipes-kernel/linux/linux-wrs_git.bb index 1f2b11e975..209648b8e7 100644 --- a/meta/recipes-kernel/linux/linux-wrs_git.bb +++ b/meta/recipes-kernel/linux/linux-wrs_git.bb | |||
@@ -10,10 +10,10 @@ PV = "2.6.34+git${SRCPV}" | |||
10 | # To use a staged, on-disk bare clone of a Wind River Kernel, use a | 10 | # To use a staged, on-disk bare clone of a Wind River Kernel, use a |
11 | # variant of the below | 11 | # variant of the below |
12 | # SRC_URI = "git://///path/to/kernel/default_kernel.git;fullclone=1" | 12 | # SRC_URI = "git://///path/to/kernel/default_kernel.git;fullclone=1" |
13 | SRC_URI = "git://git.pokylinux.org/linux-2.6-windriver.git;protocol=git;fullclone=1;branch=${WRMACHINE}-${LINUX_KERNEL_TYPE};name=machine \ | 13 | SRC_URI = "git://git.pokylinux.org/linux-2.6-windriver.git;protocol=git;fullclone=1;branch=${KBRANCH};name=machine \ |
14 | git://git.pokylinux.org/linux-2.6-windriver.git;protocol=git;noclone=1;branch=wrs_meta;name=meta" | 14 | git://git.pokylinux.org/linux-2.6-windriver.git;protocol=git;noclone=1;branch=wrs_meta;name=meta" |
15 | 15 | ||
16 | WRMACHINE = "${MACHINE}" | 16 | WRMACHINE = "UNDEFINED" |
17 | WRMACHINE_qemux86 = "common_pc" | 17 | WRMACHINE_qemux86 = "common_pc" |
18 | WRMACHINE_qemux86-64 = "common_pc_64" | 18 | WRMACHINE_qemux86-64 = "common_pc_64" |
19 | WRMACHINE_qemuppc = "qemu_ppc32" | 19 | WRMACHINE_qemuppc = "qemu_ppc32" |
@@ -24,11 +24,33 @@ WRMACHINE_routerstationpro = "routerstationpro" | |||
24 | WRMACHINE_mpc8315e-rdb = "fsl-mpc8315e-rdb" | 24 | WRMACHINE_mpc8315e-rdb = "fsl-mpc8315e-rdb" |
25 | WRMACHINE_beagleboard = "beagleboard" | 25 | WRMACHINE_beagleboard = "beagleboard" |
26 | 26 | ||
27 | # Determine which branch to fetch and build. Not all branches are in the | ||
28 | # upstream repo (but will be locally created after the fetchers run) so | ||
29 | # a fallback branch needs to be chosen. | ||
30 | # | ||
31 | # The default machine 'UNDEFINED'. If the machine is not set to a specific | ||
32 | # branch in this recipe or in a recipe extension, then we fallback to a | ||
33 | # branch that is always present 'standard'. This sets the KBRANCH variable | ||
34 | # and is used in the SRC_URI. The machine is then set back to ${MACHINE}, | ||
35 | # since futher processing will use that to create local branches | ||
36 | python __anonymous () { | ||
37 | import bb, re | ||
38 | |||
39 | bb.data.setVar("KBRANCH", "${WRMACHINE}-${LINUX_KERNEL_TYPE}", d) | ||
40 | mach = bb.data.getVar("WRMACHINE", d, 1) | ||
41 | if mach == "UNDEFINED": | ||
42 | bb.data.setVar("KBRANCH", "standard", d) | ||
43 | bb.data.setVar("WRMACHINE", "${MACHINE}", d) | ||
44 | # track the global configuration on a bootstrapped BSP | ||
45 | bb.data.setVar("SRCREV_machine", "${SRCREV_meta}", d) | ||
46 | bb.data.setVar("BOOTSTRAP", "t", d) | ||
47 | } | ||
48 | |||
27 | COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64|atom-pc|routerstationpro|mpc8315e-rdb|beagleboard)" | 49 | COMPATIBLE_MACHINE = "(qemuarm|qemux86|qemuppc|qemumips|qemux86-64|atom-pc|routerstationpro|mpc8315e-rdb|beagleboard)" |
28 | 50 | ||
29 | LINUX_VERSION = "v2.6.34" | 51 | LINUX_VERSION = "v2.6.34" |
30 | LINUX_VERSION_EXTENSION = "-wr-${LINUX_KERNEL_TYPE}" | 52 | LINUX_VERSION_EXTENSION = "-wr-${LINUX_KERNEL_TYPE}" |
31 | PR = "r12" | 53 | PR = "r13" |
32 | 54 | ||
33 | S = "${WORKDIR}/linux" | 55 | S = "${WORKDIR}/linux" |
34 | B = "${WORKDIR}/linux-${WRMACHINE}-${LINUX_KERNEL_TYPE}-build" | 56 | B = "${WORKDIR}/linux-${WRMACHINE}-${LINUX_KERNEL_TYPE}-build" |
@@ -69,7 +91,7 @@ do_patch() { | |||
69 | } | 91 | } |
70 | 92 | ||
71 | validate_branches() { | 93 | validate_branches() { |
72 | branch_head=`git show-ref -s --heads ${WRMACHINE}-${LINUX_KERNEL_TYPE}` | 94 | branch_head=`git show-ref -s --heads ${KBRANCH}` |
73 | meta_head=`git show-ref -s --heads wrs_meta` | 95 | meta_head=`git show-ref -s --heads wrs_meta` |
74 | target_branch_head="${SRCREV_machine}" | 96 | target_branch_head="${SRCREV_machine}" |
75 | target_meta_head="${SRCREV_meta}" | 97 | target_meta_head="${SRCREV_meta}" |
@@ -132,14 +154,16 @@ IFS=' | |||
132 | cd ${S} | 154 | cd ${S} |
133 | 155 | ||
134 | # checkout and clobber and unimportant files | 156 | # checkout and clobber and unimportant files |
135 | git checkout -f ${WRMACHINE}-${LINUX_KERNEL_TYPE} | 157 | git checkout -f ${KBRANCH} |
136 | 158 | ||
137 | validate_branches | 159 | if [ -z "${BOOTSTRAP}" ]; then |
160 | validate_branches | ||
161 | fi | ||
138 | 162 | ||
139 | # this second checkout is intentional, we want to leave ourselves | 163 | # this second checkout is intentional, we want to leave ourselves |
140 | # on the branch to be built, but validate_branches could have changed | 164 | # on the branch to be built, but validate_branches could have changed |
141 | # our initial checkout. So we do it a second time to be sure | 165 | # our initial checkout. So we do it a second time to be sure |
142 | git checkout -f ${WRMACHINE}-${LINUX_KERNEL_TYPE} | 166 | git checkout -f ${KBRANCH} |
143 | } | 167 | } |
144 | do_wrlinux_checkout[dirs] = "${S}" | 168 | do_wrlinux_checkout[dirs] = "${S}" |
145 | 169 | ||