summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--classes/kernel.bbclass19
1 files changed, 16 insertions, 3 deletions
diff --git a/classes/kernel.bbclass b/classes/kernel.bbclass
index d94930b7b..13670f667 100644
--- a/classes/kernel.bbclass
+++ b/classes/kernel.bbclass
@@ -207,7 +207,14 @@ sysroot_stage_all_append() {
207 207
208 208
209kernel_do_configure() { 209kernel_do_configure() {
210 yes '' | oe_runmake oldconfig 210 # Copy defconfig to .config if .config does not exist. This allows
211 # recipes to manage the .config themselves in do_configure_prepend().
212 if [ -f "${WORKDIR}/defconfig" ] && [ ! -f "${S}/.config" ]; then
213 cp "${WORKDIR}/defconfig" "${S}/.config"
214 fi
215
216 yes '' | oe_runmake oldconfig
217
211 if [ ! -z "${INITRAMFS_IMAGE}" ]; then 218 if [ ! -z "${INITRAMFS_IMAGE}" ]; then
212 for img in cpio.gz cpio.lzo cpio.lzma; do 219 for img in cpio.gz cpio.lzo cpio.lzma; do
213 if [ -e "${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.$img" ]; then 220 if [ -e "${DEPLOY_DIR_IMAGE}/${INITRAMFS_IMAGE}-${MACHINE}.$img" ]; then
@@ -220,6 +227,9 @@ kernel_do_configure() {
220kernel_do_configure[depends] += "${INITRAMFS_TASK}" 227kernel_do_configure[depends] += "${INITRAMFS_TASK}"
221 228
222do_menuconfig() { 229do_menuconfig() {
230 export DISPLAY='${DISPLAY}'
231 export DBUS_SESSION_BUS_ADDRESS='${DBUS_SESSION_BUS_ADDRESS}'
232 export XAUTHORITY='${XAUTHORITY}'
223 export TERMWINDOWTITLE="${PN} Kernel Configuration" 233 export TERMWINDOWTITLE="${PN} Kernel Configuration"
224 export SHELLCMDS="make menuconfig" 234 export SHELLCMDS="make menuconfig"
225 ${TERMCMDRUN} 235 ${TERMCMDRUN}
@@ -318,13 +328,16 @@ module_conf_rfcomm = "alias bt-proto-3 rfcomm"
318 328
319python populate_packages_prepend () { 329python populate_packages_prepend () {
320 def extract_modinfo(file): 330 def extract_modinfo(file):
321 import re 331 import tempfile, re
322 tmpfile = os.tmpnam() 332 tempfile.tempdir = bb.data.getVar("WORKDIR", d, 1)
333 tf = tempfile.mkstemp()
334 tmpfile = tf[1]
323 cmd = "PATH=\"%s\" %sobjcopy -j .modinfo -O binary %s %s" % (bb.data.getVar("PATH", d, 1), bb.data.getVar("HOST_PREFIX", d, 1) or "", file, tmpfile) 335 cmd = "PATH=\"%s\" %sobjcopy -j .modinfo -O binary %s %s" % (bb.data.getVar("PATH", d, 1), bb.data.getVar("HOST_PREFIX", d, 1) or "", file, tmpfile)
324 os.system(cmd) 336 os.system(cmd)
325 f = open(tmpfile) 337 f = open(tmpfile)
326 l = f.read().split("\000") 338 l = f.read().split("\000")
327 f.close() 339 f.close()
340 os.close(tf[0])
328 os.unlink(tmpfile) 341 os.unlink(tmpfile)
329 exp = re.compile("([^=]+)=(.*)") 342 exp = re.compile("([^=]+)=(.*)")
330 vals = {} 343 vals = {}