[meta-ti] [PATCH] multi-kernel: update to work with latest code

Denys Dmytriyenko denis at denix.org
Tue Jan 6 08:36:26 PST 2015


From: Denys Dmytriyenko <denys at ti.com>

Signed-off-by: Denys Dmytriyenko <denys at ti.com>
---
 recipes-kernel/linux/linux-ti-staging_3.14.bb |   9 +-
 recipes-kernel/linux/multi-kernel.inc         | 125 +++++++++++++-------------
 2 files changed, 65 insertions(+), 69 deletions(-)

diff --git a/recipes-kernel/linux/linux-ti-staging_3.14.bb b/recipes-kernel/linux/linux-ti-staging_3.14.bb
index 2e89ace..a86a275 100644
--- a/recipes-kernel/linux/linux-ti-staging_3.14.bb
+++ b/recipes-kernel/linux/linux-ti-staging_3.14.bb
@@ -7,6 +7,7 @@ inherit kernel
 
 require recipes-kernel/linux/linux-dtb.inc
 require recipes-kernel/linux/setup-defconfig.inc
+require recipes-kernel/linux/multi-kernel.inc
 
 # Look in the generic major.minor directory for files
 FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-3.14:"
@@ -48,7 +49,7 @@ SRCREV = "4311f726041145161621593e5d67f106913c0f28"
 PV = "3.14.26"
 
 # Append to the MACHINE_KERNEL_PR so that a new SRCREV will cause a rebuild
-MACHINE_KERNEL_PR_append = "c+gitr${SRCPV}"
+MACHINE_KERNEL_PR_append = "d+gitr${SRCPV}"
 PR = "${MACHINE_KERNEL_PR}"
 
 KERNEL_CONFIG_DIR = "${S}/ti_config_fragments"
@@ -58,6 +59,6 @@ KERNEL_CONFIG_FRAGMENTS_append_ti43x = " ${KERNEL_CONFIG_DIR}/am43xx_only.cfg"
 
 KERNEL_GIT_URI = "git://git.ti.com/ti-linux-kernel/ti-linux-kernel.git"
 KERNEL_GIT_PROTOCOL = "git"
-SRC_URI = "${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};branch=${BRANCH} \
-           file://defconfig \
-          "
+SRC_URI += "${KERNEL_GIT_URI};protocol=${KERNEL_GIT_PROTOCOL};branch=${BRANCH} \
+            file://defconfig \
+           "
diff --git a/recipes-kernel/linux/multi-kernel.inc b/recipes-kernel/linux/multi-kernel.inc
index e696c8b..a503b01 100644
--- a/recipes-kernel/linux/multi-kernel.inc
+++ b/recipes-kernel/linux/multi-kernel.inc
@@ -20,7 +20,7 @@
 # and breaks in several places. Introduce a task do_preparekernel that calls
 # "make prepare" in the kernel tree to generate all the necessary files.
 
-require linux.inc
+#require linux.inc
 
 SRC_URI += " \
            file://configs "
@@ -29,94 +29,89 @@ MULTI_CONFIG_BASE_SUFFIX = "multi-config-"
 MODULE_IMAGE_BASE_NAME ?= "modules-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
 
 do_preparekernel () {
-	unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
-	oe_runmake prepare CC="${KERNEL_CC}" LD="${KERNEL_LD}"
+    unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE
+    oe_runmake prepare CC="${KERNEL_CC}" LD="${KERNEL_LD}"
 }
 
 addtask preparekernel after do_configure before do_compile
 
 do_compileconfigs () {
+    # fixup for fetcher change
+    if [ -e ${WORKDIR}/configs/configs ] ; then
+        if [ -e ${WORKDIR}/configs/configs/empty ] ; then
+            mv ${WORKDIR}/configs/configs/empty ${WORKDIR}/configs/
+        fi
+        mv ${WORKDIR}/configs/configs/* ${WORKDIR}/configs/
+        rm -rf ${WORKDIR}/configs/configs
+    fi
 
-  # fixup for fetcher change
-  if [ -e ${WORKDIR}/configs/configs ] ; then
-      if [ -e ${WORKDIR}/configs/configs/empty ] ; then
-          mv ${WORKDIR}/configs/configs/empty ${WORKDIR}/configs/
-      fi
-      mv ${WORKDIR}/configs/configs/* ${WORKDIR}/configs/
-      rm -rf ${WORKDIR}/configs/configs
-  fi
-
-  # Compile and Install additional kernel configs if found
-  if [ -e ${WORKDIR}/configs/empty ] ; then
-       echo "No configs found in configs/ directory, skipping to regular build"
-  else
-      echo "Multiple configs found, building those first"
-
-      # Context Save the regular 'defconfig'
-      cp ${WORKDIR}/defconfig ${WORKDIR}/defconfig.save
-
-      for config in ${WORKDIR}/configs/* ; do
-
-        # Copy in alternative config
+    # Compile and Install additional kernel configs if found
+    if [ -e ${WORKDIR}/configs/empty ] ; then
+        echo "No configs found in configs/ directory, skipping to regular build"
+    else
+        echo "Multiple configs found, building those first"
+
+        # Context Save the regular 'defconfig'
+        cp ${WORKDIR}/defconfig ${WORKDIR}/defconfig.save
+
+        for config in ${WORKDIR}/configs/* ; do
+            # Copy in alternative config
+            cd ${S}
+            cp $config ${WORKDIR}/defconfig
+
+            # Enable config to be viewed on the target
+            echo "CONFIG_IKCONFIG=y" >> ${WORKDIR}/defconfig
+            echo "CONFIG_IKCONFIG_PROC=y" >> ${WORKDIR}/defconfig
+
+            # Build and Install this alternative kernel
+            do_configure
+            kernel_do_compile
+            do_compile_kernelmodules
+            kernel_do_install
+
+            # Drop the resulting images in the deploy dir
+            install -d ${DEPLOY_DIR_IMAGE}
+            install -m 0644 ${KERNEL_OUTPUT} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
+
+            if [ -d "${D}/lib" ]; then
+                tar --owner=root --group=root -cvzf ${DEPLOY_DIR_IMAGE}/${MODULE_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz -C ${D} lib
+            fi
+
+            # Install the final config alongside the images
+            cp .config ${DEPLOY_DIR_IMAGE}/config-${PV}-${PR}-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
+
+            # Create symlinks
+            cd ${DEPLOY_DIR_IMAGE}
+            rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
+            ln -sf ${KERNEL_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin ${KERNEL_IMAGE_SYMLINK_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
+            rm -f modules-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz
+            ln -sf ${MODULE_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz modules-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz
+            rm -f config-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
+            ln -sf config-${PV}-${PR}-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config config-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
+        done
+
+        # Restore the regular 'defconfig'
+        cp ${WORKDIR}/defconfig.save ${WORKDIR}/defconfig
         cd ${S}
-        cp $config ${WORKDIR}/defconfig
-
-        # Enable config to be viewed on the target
-        echo "CONFIG_IKCONFIG=y" >> ${WORKDIR}/defconfig
-        echo "CONFIG_IKCONFIG_PROC=y" >> ${WORKDIR}/defconfig
-	
-        # Build and Install this alternative kernel
         do_configure
-        kernel_do_compile
-        do_compile_kernelmodules
-        kernel_do_install
-
-        # Drop the resulting images in the deploy dir
-        install -d ${DEPLOY_DIR_IMAGE}
-        install -m 0644 ${KERNEL_OUTPUT} ${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
-
-        if [ -d "${D}/lib" ]; then
-            tar --owner=root --group=root -cvzf ${DEPLOY_DIR_IMAGE}/${MODULE_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz -C ${D} lib
-        fi
- 
-        # Install the final config alongside the images
-        cp .config ${DEPLOY_DIR_IMAGE}/config-${PV}-${PR}-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
-
-        # Create symlinks
-        cd ${DEPLOY_DIR_IMAGE}
-        rm -f ${KERNEL_IMAGE_SYMLINK_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
-        ln -sf ${KERNEL_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin ${KERNEL_IMAGE_SYMLINK_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).bin
-        rm -f modules-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz
-        ln -sf ${MODULE_IMAGE_BASE_NAME}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz modules-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).tgz
-        rm -f config-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
-        ln -sf config-${PV}-${PR}-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config config-${MACHINE}.${MULTI_CONFIG_BASE_SUFFIX}$(basename $config).config
-
-      done
-
-      # Restore the regular 'defconfig'
-      cp ${WORKDIR}/defconfig.save ${WORKDIR}/defconfig
-      cd ${S}
-      do_configure
     fi
 }
 
 # For reference, copy .config to deploy image
 do_deploy_append () {
-
-	install -d ${DEPLOY_DIR_IMAGE}
+    install -d ${DEPLOY_DIR_IMAGE}
 
     # Drop the regular defconfig along side the others for consistency
     cd ${S}
     cp .config ${DEPLOY_DIR_IMAGE}/config-${PV}-${PR}-${MACHINE}.config
 
     # add symlink
-    cd ${DEPLOY_DIR_IMAGE}    
+    cd ${DEPLOY_DIR_IMAGE}
     rm -f config-${MACHINE}.config
     ln -s config-${PV}-${PR}-${MACHINE}.config config-${MACHINE}.config
 
     rm -f modules-${MACHINE}.tgz
     ln -sf ${MODULE_IMAGE_BASE_NAME}.tgz modules-${MACHINE}.tgz
-
 }
 
 do_compileconfigs[depends] += "u-boot-mkimage-native:do_populate_sysroot virtual/${TARGET_PREFIX}gcc:do_populate_sysroot"
-- 
2.2.0



More information about the meta-ti mailing list