All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
@ 2014-07-01 19:19 Denys Dmytriyenko
  2014-07-01 21:10 ` Cooper Jr., Franklin
  0 siblings, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-07-01 19:19 UTC (permalink / raw)
  To: meta-arago

From: Denys Dmytriyenko <denys@ti.com>

The entire rootfs/image processing infrastructure was rewritten in Python for
Daisy release. Since tisdk_image class is based on rootfs/image base classes
and uses their APIs, some adjustments are required in order for it to work.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
---
 meta-arago-distro/classes/tisdk-image.bbclass | 83 +++++++++++++--------------
 1 file changed, 39 insertions(+), 44 deletions(-)

diff --git a/meta-arago-distro/classes/tisdk-image.bbclass b/meta-arago-distro/classes/tisdk-image.bbclass
index b100261..6023d6b 100644
--- a/meta-arago-distro/classes/tisdk-image.bbclass
+++ b/meta-arago-distro/classes/tisdk-image.bbclass
@@ -65,18 +65,18 @@ def string_set(iterable):
 
 # Add a dependency for the do_rootfs function that will force us to build
 # the TARGET_IMAGES first so that they will be available for packaging.
-do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn for pn in (d.getVar("TARGET_IMAGES", True) or "").split())}"
+do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for pn in (d.getVar("TARGET_IMAGES", True) or "").split())}"
 
 # Add a dependency for the do_populate_sdk function of the TIDSK_TOOLCHAIN
 # variable which will force us to build the toolchain first so that it will be
 # available for packaging
-do_sdk_image[depends] += "${@string_set('%s:do_populate_sdk' % pn for pn in (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
+do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' % pn for pn in (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
 
-do_sdk_image[nostamp] = "1"
-do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
-do_sdk_image[cleandirs] += "${S}"
+do_rootfs[nostamp] = "1"
+do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
+do_rootfs[cleandirs] += "${S}"
 
-# Call the cleanup_host_packes to remove packages that should be removed from
+# Call the cleanup_host_packages to remove packages that should be removed from
 # the host for various reasons.  This may include licensing issues as well.
 OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
 
@@ -92,25 +92,6 @@ cleanup_host_packages() {
     fi
 }
 
-# Copy log_check from image.bbclass since the rootfs_ipk_do_rootfs function
-# uses it, but we are not inheriting the full image class.
-log_check() {
-	for target in $*
-	do
-		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
-		
-		echo "log_check: Using $lf_path as logfile"
-		
-		if test -e "$lf_path"
-		then
-			${IMAGE_PKGTYPE}_log_check $target $lf_path
-		else
-			echo "Cannot find logfile [$lf_path]"
-		fi
-		echo "Logfile is clean"
-	done
-}
-
 # Generate the header for a TI style software manifest
 sw_manifest_header() {
 echo "
@@ -235,7 +216,7 @@ echo "
 
 # Create the host side toolchain components table
 sw_manifest_toolchain_host() {
-    opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-linux/var/lib/opkg/info"
+    opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-linux/var/lib/opkg"
 
 echo "
 <h2><u>GPLv3 Development Host Content</u></h2>
@@ -471,24 +452,43 @@ generate_sw_manifest() {
     sw_manifest_footer
 }
 
+ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
+ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
+IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
+
 # Create the SDK image.  We will re-use the rootfs_ipk_do_rootfs functionality
 # to install a given list of packages using opkg.
-do_sdk_image () {
-	set -x
-	rm -rf ${IMAGE_ROOTFS}
-	mkdir -p ${IMAGE_ROOTFS}
-	mkdir -p ${DEPLOY_DIR_IMAGE}
+fakeroot python do_rootfs () {
+    from oe.rootfs import create_rootfs
+    from oe.image import create_image
+    from oe.manifest import create_manifest
+
+    # generate the initial manifest
+    create_manifest(d)
+
+    # generate rootfs
+    create_rootfs(d)
+
+    # generate final images
+    create_image(d)
+}
+
+tisdk_image_setup () {
+    set -x
+    rm -rf ${IMAGE_ROOTFS}
+    mkdir -p ${IMAGE_ROOTFS}
+    mkdir -p ${DEPLOY_DIR_IMAGE}
 
-	mkdir -p ${IMAGE_ROOTFS}/etc
+    mkdir -p ${IMAGE_ROOTFS}/etc
+    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
 
     chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-tisdk*
 
     # Temporarily extract the toolchain sdk so we can read license information from it.
     echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" | ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-tisdk*
+}
 
-    # Creat the base SDK image
-	rootfs_${IMAGE_PKGTYPE}_do_rootfs
-
+tisdk_image_build () {
     mkdir -p ${IMAGE_ROOTFS}/filesystem
 
     # Copy the TARGET_IMAGES to the sdk image before packaging
@@ -607,23 +607,18 @@ do_sdk_image () {
 
     # Copy the opkg.conf used by the image to allow for future updates
     cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
+}
 
+tisdk_image_cleanup () {
     # Move the var/etc directories which contains the opkg data used for the
     # manifest (and maybe one day for online updates) to a hidden directory.
     mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
     mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
-
-    # Create the image directory symlinks
-    # $ { @ get_imagecmds(d) }
 }
 
 license_create_manifest() {
     :
 }
 
-rootfs_install_complementary() {
-    :
-}
-
-EXPORT_FUNCTIONS do_sdk_image
-addtask sdk_image before do_build after do_install
+EXPORT_FUNCTIONS do_rootfs
+addtask rootfs before do_build after do_install
-- 
2.0.0



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-01 19:19 [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure Denys Dmytriyenko
@ 2014-07-01 21:10 ` Cooper Jr., Franklin
  2014-07-02 13:00   ` Maupin, Chase
  0 siblings, 1 reply; 7+ messages in thread
From: Cooper Jr., Franklin @ 2014-07-01 21:10 UTC (permalink / raw)
  To: Denys Dmytriyenko, meta-arago@arago-project.org

Thanks for this!
Acked-by: Franklin Cooper Jr. <fcooper@ti.com>

> -----Original Message-----
> From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
> Sent: Tuesday, July 01, 2014 2:20 PM
> To: meta-arago@arago-project.org
> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update for the new
> rootfs/image infrastructure
> 
> From: Denys Dmytriyenko <denys@ti.com>
> 
> The entire rootfs/image processing infrastructure was rewritten in Python for
> Daisy release. Since tisdk_image class is based on rootfs/image base classes
> and uses their APIs, some adjustments are required in order for it to work.
> 
> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> ---
>  meta-arago-distro/classes/tisdk-image.bbclass | 83 +++++++++++++--------------
>  1 file changed, 39 insertions(+), 44 deletions(-)
> 
> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass b/meta-arago-
> distro/classes/tisdk-image.bbclass
> index b100261..6023d6b 100644
> --- a/meta-arago-distro/classes/tisdk-image.bbclass
> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
> @@ -65,18 +65,18 @@ def string_set(iterable):
> 
>  # Add a dependency for the do_rootfs function that will force us to build  #
> the TARGET_IMAGES first so that they will be available for packaging.
> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn for pn in
> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for pn in
> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> 
>  # Add a dependency for the do_populate_sdk function of the
> TIDSK_TOOLCHAIN  # variable which will force us to build the toolchain first so
> that it will be  # available for packaging -do_sdk_image[depends] +=
> "${@string_set('%s:do_populate_sdk' % pn for pn in
> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' % pn for pn in
> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> 
> -do_sdk_image[nostamp] = "1"
> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
> -do_sdk_image[cleandirs] += "${S}"
> +do_rootfs[nostamp] = "1"
> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
> +do_rootfs[cleandirs] += "${S}"
> 
> -# Call the cleanup_host_packes to remove packages that should be removed
> from
> +# Call the cleanup_host_packages to remove packages that should be
> +removed from
>  # the host for various reasons.  This may include licensing issues as well.
>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
> 
> @@ -92,25 +92,6 @@ cleanup_host_packages() {
>      fi
>  }
> 
> -# Copy log_check from image.bbclass since the rootfs_ipk_do_rootfs function
> -# uses it, but we are not inheriting the full image class.
> -log_check() {
> -	for target in $*
> -	do
> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
> -
> -		echo "log_check: Using $lf_path as logfile"
> -
> -		if test -e "$lf_path"
> -		then
> -			${IMAGE_PKGTYPE}_log_check $target $lf_path
> -		else
> -			echo "Cannot find logfile [$lf_path]"
> -		fi
> -		echo "Logfile is clean"
> -	done
> -}
> -
>  # Generate the header for a TI style software manifest
>  sw_manifest_header() {
>  echo "
> @@ -235,7 +216,7 @@ echo "
> 
>  # Create the host side toolchain components table
>  sw_manifest_toolchain_host() {
> -    opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
> linux/var/lib/opkg/info"
> +    opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
> linux/var/lib/opkg"
> 
>  echo "
>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24 +452,43
> @@ generate_sw_manifest() {
>      sw_manifest_footer
>  }
> 
> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
> +
>  # Create the SDK image.  We will re-use the rootfs_ipk_do_rootfs
> functionality  # to install a given list of packages using opkg.
> -do_sdk_image () {
> -	set -x
> -	rm -rf ${IMAGE_ROOTFS}
> -	mkdir -p ${IMAGE_ROOTFS}
> -	mkdir -p ${DEPLOY_DIR_IMAGE}
> +fakeroot python do_rootfs () {
> +    from oe.rootfs import create_rootfs
> +    from oe.image import create_image
> +    from oe.manifest import create_manifest
> +
> +    # generate the initial manifest
> +    create_manifest(d)
> +
> +    # generate rootfs
> +    create_rootfs(d)
> +
> +    # generate final images
> +    create_image(d)
> +}
> +
> +tisdk_image_setup () {
> +    set -x
> +    rm -rf ${IMAGE_ROOTFS}
> +    mkdir -p ${IMAGE_ROOTFS}
> +    mkdir -p ${DEPLOY_DIR_IMAGE}
> 
> -	mkdir -p ${IMAGE_ROOTFS}/etc
> +    mkdir -p ${IMAGE_ROOTFS}/etc
> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
> 
>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-
> ${TARGET_OS}-tisdk*
> 
>      # Temporarily extract the toolchain sdk so we can read license information
> from it.
>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-tisdk*
> +}
> 
> -    # Creat the base SDK image
> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
> -
> +tisdk_image_build () {
>      mkdir -p ${IMAGE_ROOTFS}/filesystem
> 
>      # Copy the TARGET_IMAGES to the sdk image before packaging @@ -
> 607,23 +607,18 @@ do_sdk_image () {
> 
>      # Copy the opkg.conf used by the image to allow for future updates
>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
> +}
> 
> +tisdk_image_cleanup () {
>      # Move the var/etc directories which contains the opkg data used for the
>      # manifest (and maybe one day for online updates) to a hidden directory.
>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
> -
> -    # Create the image directory symlinks
> -    # $ { @ get_imagecmds(d) }
>  }
> 
>  license_create_manifest() {
>      :
>  }
> 
> -rootfs_install_complementary() {
> -    :
> -}
> -
> -EXPORT_FUNCTIONS do_sdk_image
> -addtask sdk_image before do_build after do_install
> +EXPORT_FUNCTIONS do_rootfs
> +addtask rootfs before do_build after do_install
> --
> 2.0.0
> 
> _______________________________________________
> meta-arago mailing list
> meta-arago@arago-project.org
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-01 21:10 ` Cooper Jr., Franklin
@ 2014-07-02 13:00   ` Maupin, Chase
  2014-07-02 13:27     ` Denys Dmytriyenko
  0 siblings, 1 reply; 7+ messages in thread
From: Maupin, Chase @ 2014-07-02 13:00 UTC (permalink / raw)
  To: Cooper Jr., Franklin, Denys Dmytriyenko,
	meta-arago@arago-project.org

>-----Original Message-----
>From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
>bounces@arago-project.org] On Behalf Of Cooper Jr., Franklin
>Sent: Tuesday, July 01, 2014 4:10 PM
>To: Denys Dmytriyenko; meta-arago@arago-project.org
>Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update for
>the new rootfs/image infrastructure
>
>Thanks for this!
>Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
>
>> -----Original Message-----
>> From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
>> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
>> Sent: Tuesday, July 01, 2014 2:20 PM
>> To: meta-arago@arago-project.org
>> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update for
>the new
>> rootfs/image infrastructure
>>
>> From: Denys Dmytriyenko <denys@ti.com>
>>
>> The entire rootfs/image processing infrastructure was rewritten
>in Python for
>> Daisy release. Since tisdk_image class is based on rootfs/image
>base classes
>> and uses their APIs, some adjustments are required in order for
>it to work.
>>
>> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
>> ---
>>  meta-arago-distro/classes/tisdk-image.bbclass | 83
>+++++++++++++--------------
>>  1 file changed, 39 insertions(+), 44 deletions(-)
>>
>> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass
>b/meta-arago-
>> distro/classes/tisdk-image.bbclass
>> index b100261..6023d6b 100644
>> --- a/meta-arago-distro/classes/tisdk-image.bbclass
>> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
>> @@ -65,18 +65,18 @@ def string_set(iterable):
>>
>>  # Add a dependency for the do_rootfs function that will force
>us to build  #
>> the TARGET_IMAGES first so that they will be available for
>packaging.
>> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn for
>pn in
>> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for pn
>in
>> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>>
>>  # Add a dependency for the do_populate_sdk function of the
>> TIDSK_TOOLCHAIN  # variable which will force us to build the
>toolchain first so
>> that it will be  # available for packaging -
>do_sdk_image[depends] +=
>> "${@string_set('%s:do_populate_sdk' % pn for pn in
>> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' % pn
>for pn in
>> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>>
>> -do_sdk_image[nostamp] = "1"
>> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> -do_sdk_image[cleandirs] += "${S}"
>> +do_rootfs[nostamp] = "1"
>> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> +do_rootfs[cleandirs] += "${S}"
>>
>> -# Call the cleanup_host_packes to remove packages that should
>be removed
>> from
>> +# Call the cleanup_host_packages to remove packages that should
>be
>> +removed from
>>  # the host for various reasons.  This may include licensing
>issues as well.
>>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
>>
>> @@ -92,25 +92,6 @@ cleanup_host_packages() {
>>      fi
>>  }
>>
>> -# Copy log_check from image.bbclass since the
>rootfs_ipk_do_rootfs function
>> -# uses it, but we are not inheriting the full image class.
>> -log_check() {
>> -	for target in $*
>> -	do
>> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
>> -
>> -		echo "log_check: Using $lf_path as logfile"
>> -
>> -		if test -e "$lf_path"
>> -		then
>> -			${IMAGE_PKGTYPE}_log_check $target $lf_path
>> -		else
>> -			echo "Cannot find logfile [$lf_path]"
>> -		fi
>> -		echo "Logfile is clean"
>> -	done
>> -}
>> -
>>  # Generate the header for a TI style software manifest
>>  sw_manifest_header() {
>>  echo "
>> @@ -235,7 +216,7 @@ echo "
>>
>>  # Create the host side toolchain components table
>>  sw_manifest_toolchain_host() {
>> -
>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
>> linux/var/lib/opkg/info"
>> +
>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
>> linux/var/lib/opkg"
>>
>>  echo "
>>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24
>+452,43
>> @@ generate_sw_manifest() {
>>      sw_manifest_footer
>>  }
>>
>> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
>> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
>> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
>> +
>>  # Create the SDK image.  We will re-use the
>rootfs_ipk_do_rootfs
>> functionality  # to install a given list of packages using opkg.
>> -do_sdk_image () {
>> -	set -x
>> -	rm -rf ${IMAGE_ROOTFS}
>> -	mkdir -p ${IMAGE_ROOTFS}
>> -	mkdir -p ${DEPLOY_DIR_IMAGE}
>> +fakeroot python do_rootfs () {
>> +    from oe.rootfs import create_rootfs
>> +    from oe.image import create_image
>> +    from oe.manifest import create_manifest
>> +
>> +    # generate the initial manifest
>> +    create_manifest(d)

What about the generate_sw_manifest function?

Overall I think this is a step in the right direction though, so ACK for this patch.  Just curious if we should expect more.

>> +
>> +    # generate rootfs
>> +    create_rootfs(d)
>> +
>> +    # generate final images
>> +    create_image(d)
>> +}
>> +
>> +tisdk_image_setup () {
>> +    set -x
>> +    rm -rf ${IMAGE_ROOTFS}
>> +    mkdir -p ${IMAGE_ROOTFS}
>> +    mkdir -p ${DEPLOY_DIR_IMAGE}
>>
>> -	mkdir -p ${IMAGE_ROOTFS}/etc
>> +    mkdir -p ${IMAGE_ROOTFS}/etc
>> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
>>
>>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-
>> ${TARGET_OS}-tisdk*
>>
>>      # Temporarily extract the toolchain sdk so we can read
>license information
>> from it.
>>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
>> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-tisdk*
>> +}
>>
>> -    # Creat the base SDK image
>> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
>> -
>> +tisdk_image_build () {
>>      mkdir -p ${IMAGE_ROOTFS}/filesystem
>>
>>      # Copy the TARGET_IMAGES to the sdk image before packaging
>@@ -
>> 607,23 +607,18 @@ do_sdk_image () {
>>
>>      # Copy the opkg.conf used by the image to allow for future
>updates
>>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
>> +}
>>
>> +tisdk_image_cleanup () {
>>      # Move the var/etc directories which contains the opkg data
>used for the
>>      # manifest (and maybe one day for online updates) to a
>hidden directory.
>>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
>>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
>> -
>> -    # Create the image directory symlinks
>> -    # $ { @ get_imagecmds(d) }
>>  }
>>
>>  license_create_manifest() {
>>      :
>>  }
>>
>> -rootfs_install_complementary() {
>> -    :
>> -}
>> -
>> -EXPORT_FUNCTIONS do_sdk_image
>> -addtask sdk_image before do_build after do_install
>> +EXPORT_FUNCTIONS do_rootfs
>> +addtask rootfs before do_build after do_install
>> --
>> 2.0.0
>>
>> _______________________________________________
>> meta-arago mailing list
>> meta-arago@arago-project.org
>> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
>_______________________________________________
>meta-arago mailing list
>meta-arago@arago-project.org
>http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-02 13:00   ` Maupin, Chase
@ 2014-07-02 13:27     ` Denys Dmytriyenko
  2014-07-02 13:44       ` Maupin, Chase
  0 siblings, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-07-02 13:27 UTC (permalink / raw)
  To: Maupin, Chase; +Cc: meta-arago@arago-project.org, Cooper Jr., Franklin

On Wed, Jul 02, 2014 at 01:00:17PM +0000, Maupin, Chase wrote:
> >-----Original Message-----
> >From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
> >bounces@arago-project.org] On Behalf Of Cooper Jr., Franklin
> >Sent: Tuesday, July 01, 2014 4:10 PM
> >To: Denys Dmytriyenko; meta-arago@arago-project.org
> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update for
> >the new rootfs/image infrastructure
> >
> >Thanks for this!
> >Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
> >
> >> -----Original Message-----
> >> From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
> >> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
> >> Sent: Tuesday, July 01, 2014 2:20 PM
> >> To: meta-arago@arago-project.org
> >> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update for
> >the new
> >> rootfs/image infrastructure
> >>
> >> From: Denys Dmytriyenko <denys@ti.com>
> >>
> >> The entire rootfs/image processing infrastructure was rewritten
> >in Python for
> >> Daisy release. Since tisdk_image class is based on rootfs/image
> >base classes
> >> and uses their APIs, some adjustments are required in order for
> >it to work.
> >>
> >> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> >> ---
> >>  meta-arago-distro/classes/tisdk-image.bbclass | 83
> >+++++++++++++--------------
> >>  1 file changed, 39 insertions(+), 44 deletions(-)
> >>
> >> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass
> >b/meta-arago-
> >> distro/classes/tisdk-image.bbclass
> >> index b100261..6023d6b 100644
> >> --- a/meta-arago-distro/classes/tisdk-image.bbclass
> >> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
> >> @@ -65,18 +65,18 @@ def string_set(iterable):
> >>
> >>  # Add a dependency for the do_rootfs function that will force
> >us to build  #
> >> the TARGET_IMAGES first so that they will be available for
> >packaging.
> >> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn for
> >pn in
> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> >> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for pn
> >in
> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> >>
> >>  # Add a dependency for the do_populate_sdk function of the
> >> TIDSK_TOOLCHAIN  # variable which will force us to build the
> >toolchain first so
> >> that it will be  # available for packaging -
> >do_sdk_image[depends] +=
> >> "${@string_set('%s:do_populate_sdk' % pn for pn in
> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> >> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' % pn
> >for pn in
> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> >>
> >> -do_sdk_image[nostamp] = "1"
> >> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
> >> -do_sdk_image[cleandirs] += "${S}"
> >> +do_rootfs[nostamp] = "1"
> >> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
> >> +do_rootfs[cleandirs] += "${S}"
> >>
> >> -# Call the cleanup_host_packes to remove packages that should
> >be removed
> >> from
> >> +# Call the cleanup_host_packages to remove packages that should
> >be
> >> +removed from
> >>  # the host for various reasons.  This may include licensing
> >issues as well.
> >>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
> >>
> >> @@ -92,25 +92,6 @@ cleanup_host_packages() {
> >>      fi
> >>  }
> >>
> >> -# Copy log_check from image.bbclass since the
> >rootfs_ipk_do_rootfs function
> >> -# uses it, but we are not inheriting the full image class.
> >> -log_check() {
> >> -	for target in $*
> >> -	do
> >> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
> >> -
> >> -		echo "log_check: Using $lf_path as logfile"
> >> -
> >> -		if test -e "$lf_path"
> >> -		then
> >> -			${IMAGE_PKGTYPE}_log_check $target $lf_path
> >> -		else
> >> -			echo "Cannot find logfile [$lf_path]"
> >> -		fi
> >> -		echo "Logfile is clean"
> >> -	done
> >> -}
> >> -
> >>  # Generate the header for a TI style software manifest
> >>  sw_manifest_header() {
> >>  echo "
> >> @@ -235,7 +216,7 @@ echo "
> >>
> >>  # Create the host side toolchain components table
> >>  sw_manifest_toolchain_host() {
> >> -
> >opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
> >> linux/var/lib/opkg/info"
> >> +
> >opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-*-
> >> linux/var/lib/opkg"
> >>
> >>  echo "
> >>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24
> >+452,43
> >> @@ generate_sw_manifest() {
> >>      sw_manifest_footer
> >>  }
> >>
> >> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
> >> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
> >> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
> >> +
> >>  # Create the SDK image.  We will re-use the
> >rootfs_ipk_do_rootfs
> >> functionality  # to install a given list of packages using opkg.
> >> -do_sdk_image () {
> >> -	set -x
> >> -	rm -rf ${IMAGE_ROOTFS}
> >> -	mkdir -p ${IMAGE_ROOTFS}
> >> -	mkdir -p ${DEPLOY_DIR_IMAGE}
> >> +fakeroot python do_rootfs () {
> >> +    from oe.rootfs import create_rootfs
> >> +    from oe.image import create_image
> >> +    from oe.manifest import create_manifest
> >> +
> >> +    # generate the initial manifest
> >> +    create_manifest(d)
> 
> What about the generate_sw_manifest function?

What about it? It's still there. I haven't validated all the licenses and 
other data in the manifest, but it looks reasonable on the first pass.


> Overall I think this is a step in the right direction though, so ACK for 
> this patch.  Just curious if we should expect more.

Yeah, I tried to minimize the impact as much as possible. But overall, it's 
still rather hacky...


> >> +
> >> +    # generate rootfs
> >> +    create_rootfs(d)
> >> +
> >> +    # generate final images
> >> +    create_image(d)
> >> +}
> >> +
> >> +tisdk_image_setup () {
> >> +    set -x
> >> +    rm -rf ${IMAGE_ROOTFS}
> >> +    mkdir -p ${IMAGE_ROOTFS}
> >> +    mkdir -p ${DEPLOY_DIR_IMAGE}
> >>
> >> -	mkdir -p ${IMAGE_ROOTFS}/etc
> >> +    mkdir -p ${IMAGE_ROOTFS}/etc
> >> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
> >>
> >>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-
> >> ${TARGET_OS}-tisdk*
> >>
> >>      # Temporarily extract the toolchain sdk so we can read
> >license information
> >> from it.
> >>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
> >> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-tisdk*
> >> +}
> >>
> >> -    # Creat the base SDK image
> >> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
> >> -
> >> +tisdk_image_build () {
> >>      mkdir -p ${IMAGE_ROOTFS}/filesystem
> >>
> >>      # Copy the TARGET_IMAGES to the sdk image before packaging
> >@@ -
> >> 607,23 +607,18 @@ do_sdk_image () {
> >>
> >>      # Copy the opkg.conf used by the image to allow for future
> >updates
> >>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
> >> +}
> >>
> >> +tisdk_image_cleanup () {
> >>      # Move the var/etc directories which contains the opkg data
> >used for the
> >>      # manifest (and maybe one day for online updates) to a
> >hidden directory.
> >>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
> >>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
> >> -
> >> -    # Create the image directory symlinks
> >> -    # $ { @ get_imagecmds(d) }
> >>  }
> >>
> >>  license_create_manifest() {
> >>      :
> >>  }
> >>
> >> -rootfs_install_complementary() {
> >> -    :
> >> -}
> >> -
> >> -EXPORT_FUNCTIONS do_sdk_image
> >> -addtask sdk_image before do_build after do_install
> >> +EXPORT_FUNCTIONS do_rootfs
> >> +addtask rootfs before do_build after do_install
> >> --
> >> 2.0.0
> >>
> >> _______________________________________________
> >> meta-arago mailing list
> >> meta-arago@arago-project.org
> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
> >_______________________________________________
> >meta-arago mailing list
> >meta-arago@arago-project.org
> >http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
> _______________________________________________
> meta-arago mailing list
> meta-arago@arago-project.org
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-02 13:27     ` Denys Dmytriyenko
@ 2014-07-02 13:44       ` Maupin, Chase
  2014-07-02 13:53         ` Denys Dmytriyenko
  0 siblings, 1 reply; 7+ messages in thread
From: Maupin, Chase @ 2014-07-02 13:44 UTC (permalink / raw)
  To: Dmytriyenko, Denys; +Cc: meta-arago@arago-project.org, Cooper Jr., Franklin

>-----Original Message-----
>From: Dmytriyenko, Denys
>Sent: Wednesday, July 02, 2014 8:27 AM
>To: Maupin, Chase
>Cc: Cooper Jr., Franklin; Denys Dmytriyenko; meta-arago@arago-
>project.org
>Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update for
>the new rootfs/image infrastructure
>
>On Wed, Jul 02, 2014 at 01:00:17PM +0000, Maupin, Chase wrote:
>> >-----Original Message-----
>> >From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
>> >bounces@arago-project.org] On Behalf Of Cooper Jr., Franklin
>> >Sent: Tuesday, July 01, 2014 4:10 PM
>> >To: Denys Dmytriyenko; meta-arago@arago-project.org
>> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update
>for
>> >the new rootfs/image infrastructure
>> >
>> >Thanks for this!
>> >Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
>> >
>> >> -----Original Message-----
>> >> From: meta-arago-bounces@arago-project.org [mailto:meta-
>arago-
>> >> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
>> >> Sent: Tuesday, July 01, 2014 2:20 PM
>> >> To: meta-arago@arago-project.org
>> >> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update for
>> >the new
>> >> rootfs/image infrastructure
>> >>
>> >> From: Denys Dmytriyenko <denys@ti.com>
>> >>
>> >> The entire rootfs/image processing infrastructure was
>rewritten
>> >in Python for
>> >> Daisy release. Since tisdk_image class is based on
>rootfs/image
>> >base classes
>> >> and uses their APIs, some adjustments are required in order
>for
>> >it to work.
>> >>
>> >> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
>> >> ---
>> >>  meta-arago-distro/classes/tisdk-image.bbclass | 83
>> >+++++++++++++--------------
>> >>  1 file changed, 39 insertions(+), 44 deletions(-)
>> >>
>> >> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass
>> >b/meta-arago-
>> >> distro/classes/tisdk-image.bbclass
>> >> index b100261..6023d6b 100644
>> >> --- a/meta-arago-distro/classes/tisdk-image.bbclass
>> >> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
>> >> @@ -65,18 +65,18 @@ def string_set(iterable):
>> >>
>> >>  # Add a dependency for the do_rootfs function that will
>force
>> >us to build  #
>> >> the TARGET_IMAGES first so that they will be available for
>> >packaging.
>> >> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn
>for
>> >pn in
>> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>> >> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for
>pn
>> >in
>> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>> >>
>> >>  # Add a dependency for the do_populate_sdk function of the
>> >> TIDSK_TOOLCHAIN  # variable which will force us to build the
>> >toolchain first so
>> >> that it will be  # available for packaging -
>> >do_sdk_image[depends] +=
>> >> "${@string_set('%s:do_populate_sdk' % pn for pn in
>> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>> >> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' %
>pn
>> >for pn in
>> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>> >>
>> >> -do_sdk_image[nostamp] = "1"
>> >> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> >> -do_sdk_image[cleandirs] += "${S}"
>> >> +do_rootfs[nostamp] = "1"
>> >> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> >> +do_rootfs[cleandirs] += "${S}"
>> >>
>> >> -# Call the cleanup_host_packes to remove packages that
>should
>> >be removed
>> >> from
>> >> +# Call the cleanup_host_packages to remove packages that
>should
>> >be
>> >> +removed from
>> >>  # the host for various reasons.  This may include licensing
>> >issues as well.
>> >>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
>> >>
>> >> @@ -92,25 +92,6 @@ cleanup_host_packages() {
>> >>      fi
>> >>  }
>> >>
>> >> -# Copy log_check from image.bbclass since the
>> >rootfs_ipk_do_rootfs function
>> >> -# uses it, but we are not inheriting the full image class.
>> >> -log_check() {
>> >> -	for target in $*
>> >> -	do
>> >> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
>> >> -
>> >> -		echo "log_check: Using $lf_path as logfile"
>> >> -
>> >> -		if test -e "$lf_path"
>> >> -		then
>> >> -			${IMAGE_PKGTYPE}_log_check $target
>$lf_path
>> >> -		else
>> >> -			echo "Cannot find logfile [$lf_path]"
>> >> -		fi
>> >> -		echo "Logfile is clean"
>> >> -	done
>> >> -}
>> >> -
>> >>  # Generate the header for a TI style software manifest
>> >>  sw_manifest_header() {
>> >>  echo "
>> >> @@ -235,7 +216,7 @@ echo "
>> >>
>> >>  # Create the host side toolchain components table
>> >>  sw_manifest_toolchain_host() {
>> >> -
>>
>>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
>*-
>> >> linux/var/lib/opkg/info"
>> >> +
>>
>>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
>*-
>> >> linux/var/lib/opkg"
>> >>
>> >>  echo "
>> >>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24
>> >+452,43
>> >> @@ generate_sw_manifest() {
>> >>      sw_manifest_footer
>> >>  }
>> >>
>> >> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
>> >> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
>> >> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
>> >> +
>> >>  # Create the SDK image.  We will re-use the
>> >rootfs_ipk_do_rootfs
>> >> functionality  # to install a given list of packages using
>opkg.
>> >> -do_sdk_image () {
>> >> -	set -x
>> >> -	rm -rf ${IMAGE_ROOTFS}
>> >> -	mkdir -p ${IMAGE_ROOTFS}
>> >> -	mkdir -p ${DEPLOY_DIR_IMAGE}
>> >> +fakeroot python do_rootfs () {
>> >> +    from oe.rootfs import create_rootfs
>> >> +    from oe.image import create_image
>> >> +    from oe.manifest import create_manifest
>> >> +
>> >> +    # generate the initial manifest
>> >> +    create_manifest(d)
>>
>> What about the generate_sw_manifest function?
>
>What about it? It's still there. I haven't validated all the
>licenses and
>other data in the manifest, but it looks reasonable on the first
>pass.

I thought this was called from the do_sdk_image function which was replaced by the do_rootfs function here so I looked like the call to that function was removed.

>
>
>> Overall I think this is a step in the right direction though, so
>ACK for
>> this patch.  Just curious if we should expect more.
>
>Yeah, I tried to minimize the impact as much as possible. But
>overall, it's
>still rather hacky...
>
>
>> >> +
>> >> +    # generate rootfs
>> >> +    create_rootfs(d)
>> >> +
>> >> +    # generate final images
>> >> +    create_image(d)
>> >> +}
>> >> +
>> >> +tisdk_image_setup () {
>> >> +    set -x
>> >> +    rm -rf ${IMAGE_ROOTFS}
>> >> +    mkdir -p ${IMAGE_ROOTFS}
>> >> +    mkdir -p ${DEPLOY_DIR_IMAGE}
>> >>
>> >> -	mkdir -p ${IMAGE_ROOTFS}/etc
>> >> +    mkdir -p ${IMAGE_ROOTFS}/etc
>> >> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
>> >>
>> >>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-
>> >> ${TARGET_OS}-tisdk*
>> >>
>> >>      # Temporarily extract the toolchain sdk so we can read
>> >license information
>> >> from it.
>> >>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
>> >> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-
>tisdk*
>> >> +}
>> >>
>> >> -    # Creat the base SDK image
>> >> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
>> >> -
>> >> +tisdk_image_build () {
>> >>      mkdir -p ${IMAGE_ROOTFS}/filesystem
>> >>
>> >>      # Copy the TARGET_IMAGES to the sdk image before
>packaging
>> >@@ -
>> >> 607,23 +607,18 @@ do_sdk_image () {
>> >>
>> >>      # Copy the opkg.conf used by the image to allow for
>future
>> >updates
>> >>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
>> >> +}
>> >>
>> >> +tisdk_image_cleanup () {
>> >>      # Move the var/etc directories which contains the opkg
>data
>> >used for the
>> >>      # manifest (and maybe one day for online updates) to a
>> >hidden directory.
>> >>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
>> >>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
>> >> -
>> >> -    # Create the image directory symlinks
>> >> -    # $ { @ get_imagecmds(d) }
>> >>  }
>> >>
>> >>  license_create_manifest() {
>> >>      :
>> >>  }
>> >>
>> >> -rootfs_install_complementary() {
>> >> -    :
>> >> -}
>> >> -
>> >> -EXPORT_FUNCTIONS do_sdk_image
>> >> -addtask sdk_image before do_build after do_install
>> >> +EXPORT_FUNCTIONS do_rootfs
>> >> +addtask rootfs before do_build after do_install
>> >> --
>> >> 2.0.0
>> >>
>> >> _______________________________________________
>> >> meta-arago mailing list
>> >> meta-arago@arago-project.org
>> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
>> >_______________________________________________
>> >meta-arago mailing list
>> >meta-arago@arago-project.org
>> >http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
>> _______________________________________________
>> meta-arago mailing list
>> meta-arago@arago-project.org
>> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-02 13:44       ` Maupin, Chase
@ 2014-07-02 13:53         ` Denys Dmytriyenko
  2014-07-02 13:55           ` Maupin, Chase
  0 siblings, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2014-07-02 13:53 UTC (permalink / raw)
  To: Maupin, Chase; +Cc: meta-arago@arago-project.org, Cooper Jr., Franklin

On Wed, Jul 02, 2014 at 09:44:11AM -0400, Maupin, Chase wrote:
> >-----Original Message-----
> >From: Dmytriyenko, Denys
> >Sent: Wednesday, July 02, 2014 8:27 AM
> >To: Maupin, Chase
> >Cc: Cooper Jr., Franklin; Denys Dmytriyenko; meta-arago@arago-
> >project.org
> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update for
> >the new rootfs/image infrastructure
> >
> >On Wed, Jul 02, 2014 at 01:00:17PM +0000, Maupin, Chase wrote:
> >> >-----Original Message-----
> >> >From: meta-arago-bounces@arago-project.org [mailto:meta-arago-
> >> >bounces@arago-project.org] On Behalf Of Cooper Jr., Franklin
> >> >Sent: Tuesday, July 01, 2014 4:10 PM
> >> >To: Denys Dmytriyenko; meta-arago@arago-project.org
> >> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update
> >for
> >> >the new rootfs/image infrastructure
> >> >
> >> >Thanks for this!
> >> >Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
> >> >
> >> >> -----Original Message-----
> >> >> From: meta-arago-bounces@arago-project.org [mailto:meta-
> >arago-
> >> >> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
> >> >> Sent: Tuesday, July 01, 2014 2:20 PM
> >> >> To: meta-arago@arago-project.org
> >> >> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update for
> >> >the new
> >> >> rootfs/image infrastructure
> >> >>
> >> >> From: Denys Dmytriyenko <denys@ti.com>
> >> >>
> >> >> The entire rootfs/image processing infrastructure was
> >rewritten
> >> >in Python for
> >> >> Daisy release. Since tisdk_image class is based on
> >rootfs/image
> >> >base classes
> >> >> and uses their APIs, some adjustments are required in order
> >for
> >> >it to work.
> >> >>
> >> >> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
> >> >> ---
> >> >>  meta-arago-distro/classes/tisdk-image.bbclass | 83
> >> >+++++++++++++--------------
> >> >>  1 file changed, 39 insertions(+), 44 deletions(-)
> >> >>
> >> >> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass
> >> >b/meta-arago-
> >> >> distro/classes/tisdk-image.bbclass
> >> >> index b100261..6023d6b 100644
> >> >> --- a/meta-arago-distro/classes/tisdk-image.bbclass
> >> >> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
> >> >> @@ -65,18 +65,18 @@ def string_set(iterable):
> >> >>
> >> >>  # Add a dependency for the do_rootfs function that will
> >force
> >> >us to build  #
> >> >> the TARGET_IMAGES first so that they will be available for
> >> >packaging.
> >> >> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' % pn
> >for
> >> >pn in
> >> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> >> >> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn for
> >pn
> >> >in
> >> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
> >> >>
> >> >>  # Add a dependency for the do_populate_sdk function of the
> >> >> TIDSK_TOOLCHAIN  # variable which will force us to build the
> >> >toolchain first so
> >> >> that it will be  # available for packaging -
> >> >do_sdk_image[depends] +=
> >> >> "${@string_set('%s:do_populate_sdk' % pn for pn in
> >> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> >> >> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk' %
> >pn
> >> >for pn in
> >> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
> >> >>
> >> >> -do_sdk_image[nostamp] = "1"
> >> >> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
> >> >> -do_sdk_image[cleandirs] += "${S}"
> >> >> +do_rootfs[nostamp] = "1"
> >> >> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
> >> >> +do_rootfs[cleandirs] += "${S}"
> >> >>
> >> >> -# Call the cleanup_host_packes to remove packages that
> >should
> >> >be removed
> >> >> from
> >> >> +# Call the cleanup_host_packages to remove packages that
> >should
> >> >be
> >> >> +removed from
> >> >>  # the host for various reasons.  This may include licensing
> >> >issues as well.
> >> >>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
> >> >>
> >> >> @@ -92,25 +92,6 @@ cleanup_host_packages() {
> >> >>      fi
> >> >>  }
> >> >>
> >> >> -# Copy log_check from image.bbclass since the
> >> >rootfs_ipk_do_rootfs function
> >> >> -# uses it, but we are not inheriting the full image class.
> >> >> -log_check() {
> >> >> -	for target in $*
> >> >> -	do
> >> >> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
> >> >> -
> >> >> -		echo "log_check: Using $lf_path as logfile"
> >> >> -
> >> >> -		if test -e "$lf_path"
> >> >> -		then
> >> >> -			${IMAGE_PKGTYPE}_log_check $target
> >$lf_path
> >> >> -		else
> >> >> -			echo "Cannot find logfile [$lf_path]"
> >> >> -		fi
> >> >> -		echo "Logfile is clean"
> >> >> -	done
> >> >> -}
> >> >> -
> >> >>  # Generate the header for a TI style software manifest
> >> >>  sw_manifest_header() {
> >> >>  echo "
> >> >> @@ -235,7 +216,7 @@ echo "
> >> >>
> >> >>  # Create the host side toolchain components table
> >> >>  sw_manifest_toolchain_host() {
> >> >> -
> >>
> >>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
> >*-
> >> >> linux/var/lib/opkg/info"
> >> >> +
> >>
> >>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
> >*-
> >> >> linux/var/lib/opkg"
> >> >>
> >> >>  echo "
> >> >>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24
> >> >+452,43
> >> >> @@ generate_sw_manifest() {
> >> >>      sw_manifest_footer
> >> >>  }
> >> >>
> >> >> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
> >> >> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
> >> >> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
> >> >> +
> >> >>  # Create the SDK image.  We will re-use the
> >> >rootfs_ipk_do_rootfs
> >> >> functionality  # to install a given list of packages using
> >opkg.
> >> >> -do_sdk_image () {
> >> >> -	set -x
> >> >> -	rm -rf ${IMAGE_ROOTFS}
> >> >> -	mkdir -p ${IMAGE_ROOTFS}
> >> >> -	mkdir -p ${DEPLOY_DIR_IMAGE}
> >> >> +fakeroot python do_rootfs () {
> >> >> +    from oe.rootfs import create_rootfs
> >> >> +    from oe.image import create_image
> >> >> +    from oe.manifest import create_manifest
> >> >> +
> >> >> +    # generate the initial manifest
> >> >> +    create_manifest(d)
> >>
> >> What about the generate_sw_manifest function?
> >
> >What about it? It's still there. I haven't validated all the
> >licenses and
> >other data in the manifest, but it looks reasonable on the first
> >pass.
> 
> I thought this was called from the do_sdk_image function which was replaced 
> by the do_rootfs function here so I looked like the call to that function 
> was removed.

No, do_sdk_image (which originally was almost a direct replacement for 
do_rootfs) was split out into 3 sub-functions tisdk_image_setup, 
tisdk_image_build and tisdk_imgage_cleanup to wrap around the standard 
Python-based do_rootfs. The 100% of tisdk functionality is still there!

So, I basically reversed the logic. It used to be driven by do_sdk_image 
function and calling out APIs from rootfs and image classes inside, when 
needed. Now, it lets standard do_rootfs do its thing and asks to call us back 
at proper times through those 3 callback functions above. This was the least 
invasive fix - it still works and keeps 95% of our code as is. Otherwise it 
would have been required to rewrite it entirely in Python...


> >> Overall I think this is a step in the right direction though, so
> >ACK for
> >> this patch.  Just curious if we should expect more.
> >
> >Yeah, I tried to minimize the impact as much as possible. But
> >overall, it's
> >still rather hacky...
> >
> >
> >> >> +
> >> >> +    # generate rootfs
> >> >> +    create_rootfs(d)
> >> >> +
> >> >> +    # generate final images
> >> >> +    create_image(d)
> >> >> +}
> >> >> +
> >> >> +tisdk_image_setup () {
> >> >> +    set -x
> >> >> +    rm -rf ${IMAGE_ROOTFS}
> >> >> +    mkdir -p ${IMAGE_ROOTFS}
> >> >> +    mkdir -p ${DEPLOY_DIR_IMAGE}
> >> >>
> >> >> -	mkdir -p ${IMAGE_ROOTFS}/etc
> >> >> +    mkdir -p ${IMAGE_ROOTFS}/etc
> >> >> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
> >> >>
> >> >>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-
> >> >> ${TARGET_OS}-tisdk*
> >> >>
> >> >>      # Temporarily extract the toolchain sdk so we can read
> >> >license information
> >> >> from it.
> >> >>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
> >> >> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-
> >tisdk*
> >> >> +}
> >> >>
> >> >> -    # Creat the base SDK image
> >> >> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
> >> >> -
> >> >> +tisdk_image_build () {
> >> >>      mkdir -p ${IMAGE_ROOTFS}/filesystem
> >> >>
> >> >>      # Copy the TARGET_IMAGES to the sdk image before
> >packaging
> >> >@@ -
> >> >> 607,23 +607,18 @@ do_sdk_image () {
> >> >>
> >> >>      # Copy the opkg.conf used by the image to allow for
> >future
> >> >updates
> >> >>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
> >> >> +}
> >> >>
> >> >> +tisdk_image_cleanup () {
> >> >>      # Move the var/etc directories which contains the opkg
> >data
> >> >used for the
> >> >>      # manifest (and maybe one day for online updates) to a
> >> >hidden directory.
> >> >>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
> >> >>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
> >> >> -
> >> >> -    # Create the image directory symlinks
> >> >> -    # $ { @ get_imagecmds(d) }
> >> >>  }
> >> >>
> >> >>  license_create_manifest() {
> >> >>      :
> >> >>  }
> >> >>
> >> >> -rootfs_install_complementary() {
> >> >> -    :
> >> >> -}
> >> >> -
> >> >> -EXPORT_FUNCTIONS do_sdk_image
> >> >> -addtask sdk_image before do_build after do_install
> >> >> +EXPORT_FUNCTIONS do_rootfs
> >> >> +addtask rootfs before do_build after do_install
> >> >> --
> >> >> 2.0.0
> >> >>
> >> >> _______________________________________________
> >> >> meta-arago mailing list
> >> >> meta-arago@arago-project.org
> >> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
> >> >_______________________________________________
> >> >meta-arago mailing list
> >> >meta-arago@arago-project.org
> >> >http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
> >> _______________________________________________
> >> meta-arago mailing list
> >> meta-arago@arago-project.org
> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure
  2014-07-02 13:53         ` Denys Dmytriyenko
@ 2014-07-02 13:55           ` Maupin, Chase
  0 siblings, 0 replies; 7+ messages in thread
From: Maupin, Chase @ 2014-07-02 13:55 UTC (permalink / raw)
  To: Dmytriyenko, Denys; +Cc: meta-arago@arago-project.org, Cooper Jr., Franklin

>-----Original Message-----
>From: Dmytriyenko, Denys
>Sent: Wednesday, July 02, 2014 8:54 AM
>To: Maupin, Chase
>Cc: Cooper Jr., Franklin; Denys Dmytriyenko; meta-arago@arago-
>project.org
>Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update for
>the new rootfs/image infrastructure
>
>On Wed, Jul 02, 2014 at 09:44:11AM -0400, Maupin, Chase wrote:
>> >-----Original Message-----
>> >From: Dmytriyenko, Denys
>> >Sent: Wednesday, July 02, 2014 8:27 AM
>> >To: Maupin, Chase
>> >Cc: Cooper Jr., Franklin; Denys Dmytriyenko; meta-arago@arago-
>> >project.org
>> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass: update
>for
>> >the new rootfs/image infrastructure
>> >
>> >On Wed, Jul 02, 2014 at 01:00:17PM +0000, Maupin, Chase wrote:
>> >> >-----Original Message-----
>> >> >From: meta-arago-bounces@arago-project.org [mailto:meta-
>arago-
>> >> >bounces@arago-project.org] On Behalf Of Cooper Jr., Franklin
>> >> >Sent: Tuesday, July 01, 2014 4:10 PM
>> >> >To: Denys Dmytriyenko; meta-arago@arago-project.org
>> >> >Subject: Re: [meta-arago] [PATCH] tisdk-image.bbclass:
>update
>> >for
>> >> >the new rootfs/image infrastructure
>> >> >
>> >> >Thanks for this!
>> >> >Acked-by: Franklin Cooper Jr. <fcooper@ti.com>
>> >> >
>> >> >> -----Original Message-----
>> >> >> From: meta-arago-bounces@arago-project.org [mailto:meta-
>> >arago-
>> >> >> bounces@arago-project.org] On Behalf Of Denys Dmytriyenko
>> >> >> Sent: Tuesday, July 01, 2014 2:20 PM
>> >> >> To: meta-arago@arago-project.org
>> >> >> Subject: [meta-arago] [PATCH] tisdk-image.bbclass: update
>for
>> >> >the new
>> >> >> rootfs/image infrastructure
>> >> >>
>> >> >> From: Denys Dmytriyenko <denys@ti.com>
>> >> >>
>> >> >> The entire rootfs/image processing infrastructure was
>> >rewritten
>> >> >in Python for
>> >> >> Daisy release. Since tisdk_image class is based on
>> >rootfs/image
>> >> >base classes
>> >> >> and uses their APIs, some adjustments are required in
>order
>> >for
>> >> >it to work.
>> >> >>
>> >> >> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
>> >> >> ---
>> >> >>  meta-arago-distro/classes/tisdk-image.bbclass | 83
>> >> >+++++++++++++--------------
>> >> >>  1 file changed, 39 insertions(+), 44 deletions(-)
>> >> >>
>> >> >> diff --git a/meta-arago-distro/classes/tisdk-image.bbclass
>> >> >b/meta-arago-
>> >> >> distro/classes/tisdk-image.bbclass
>> >> >> index b100261..6023d6b 100644
>> >> >> --- a/meta-arago-distro/classes/tisdk-image.bbclass
>> >> >> +++ b/meta-arago-distro/classes/tisdk-image.bbclass
>> >> >> @@ -65,18 +65,18 @@ def string_set(iterable):
>> >> >>
>> >> >>  # Add a dependency for the do_rootfs function that will
>> >force
>> >> >us to build  #
>> >> >> the TARGET_IMAGES first so that they will be available for
>> >> >packaging.
>> >> >> -do_sdk_image[depends] += "${@string_set('%s:do_rootfs' %
>pn
>> >for
>> >> >pn in
>> >> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>> >> >> +do_rootfs[depends] += "${@string_set('%s:do_rootfs' % pn
>for
>> >pn
>> >> >in
>> >> >> (d.getVar("TARGET_IMAGES", True) or "").split())}"
>> >> >>
>> >> >>  # Add a dependency for the do_populate_sdk function of
>the
>> >> >> TIDSK_TOOLCHAIN  # variable which will force us to build
>the
>> >> >toolchain first so
>> >> >> that it will be  # available for packaging -
>> >> >do_sdk_image[depends] +=
>> >> >> "${@string_set('%s:do_populate_sdk' % pn for pn in
>> >> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>> >> >> +do_rootfs[depends] += "${@string_set('%s:do_populate_sdk'
>%
>> >pn
>> >> >for pn in
>> >> >> (d.getVar("TISDK_TOOLCHAIN", True) or "").split())}"
>> >> >>
>> >> >> -do_sdk_image[nostamp] = "1"
>> >> >> -do_sdk_image[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> >> >> -do_sdk_image[cleandirs] += "${S}"
>> >> >> +do_rootfs[nostamp] = "1"
>> >> >> +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock"
>> >> >> +do_rootfs[cleandirs] += "${S}"
>> >> >>
>> >> >> -# Call the cleanup_host_packes to remove packages that
>> >should
>> >> >be removed
>> >> >> from
>> >> >> +# Call the cleanup_host_packages to remove packages that
>> >should
>> >> >be
>> >> >> +removed from
>> >> >>  # the host for various reasons.  This may include
>licensing
>> >> >issues as well.
>> >> >>  OPKG_POSTPROCESS_COMMANDS = "cleanup_host_packages; "
>> >> >>
>> >> >> @@ -92,25 +92,6 @@ cleanup_host_packages() {
>> >> >>      fi
>> >> >>  }
>> >> >>
>> >> >> -# Copy log_check from image.bbclass since the
>> >> >rootfs_ipk_do_rootfs function
>> >> >> -# uses it, but we are not inheriting the full image
>class.
>> >> >> -log_check() {
>> >> >> -	for target in $*
>> >> >> -	do
>> >> >> -		lf_path="${WORKDIR}/temp/log.do_$target.${PID}"
>> >> >> -
>> >> >> -		echo "log_check: Using $lf_path as logfile"
>> >> >> -
>> >> >> -		if test -e "$lf_path"
>> >> >> -		then
>> >> >> -			${IMAGE_PKGTYPE}_log_check $target
>> >$lf_path
>> >> >> -		else
>> >> >> -			echo "Cannot find logfile [$lf_path]"
>> >> >> -		fi
>> >> >> -		echo "Logfile is clean"
>> >> >> -	done
>> >> >> -}
>> >> >> -
>> >> >>  # Generate the header for a TI style software manifest
>> >> >>  sw_manifest_header() {
>> >> >>  echo "
>> >> >> @@ -235,7 +216,7 @@ echo "
>> >> >>
>> >> >>  # Create the host side toolchain components table
>> >> >>  sw_manifest_toolchain_host() {
>> >> >> -
>> >>
>>
>>>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
>> >*-
>> >> >> linux/var/lib/opkg/info"
>> >> >> +
>> >>
>>
>>>opkg_dir="${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}/sysroots/i686-
>> >*-
>> >> >> linux/var/lib/opkg"
>> >> >>
>> >> >>  echo "
>> >> >>  <h2><u>GPLv3 Development Host Content</u></h2> @@ -471,24
>> >> >+452,43
>> >> >> @@ generate_sw_manifest() {
>> >> >>      sw_manifest_footer
>> >> >>  }
>> >> >>
>> >> >> +ROOTFS_PREPROCESS_COMMAND += "tisdk_image_setup; "
>> >> >> +ROOTFS_POSTPROCESS_COMMAND += "tisdk_image_build; "
>> >> >> +IMAGE_PREPROCESS_COMMAND += "tisdk_image_cleanup; "
>> >> >> +
>> >> >>  # Create the SDK image.  We will re-use the
>> >> >rootfs_ipk_do_rootfs
>> >> >> functionality  # to install a given list of packages using
>> >opkg.
>> >> >> -do_sdk_image () {
>> >> >> -	set -x
>> >> >> -	rm -rf ${IMAGE_ROOTFS}
>> >> >> -	mkdir -p ${IMAGE_ROOTFS}
>> >> >> -	mkdir -p ${DEPLOY_DIR_IMAGE}
>> >> >> +fakeroot python do_rootfs () {
>> >> >> +    from oe.rootfs import create_rootfs
>> >> >> +    from oe.image import create_image
>> >> >> +    from oe.manifest import create_manifest
>> >> >> +
>> >> >> +    # generate the initial manifest
>> >> >> +    create_manifest(d)
>> >>
>> >> What about the generate_sw_manifest function?
>> >
>> >What about it? It's still there. I haven't validated all the
>> >licenses and
>> >other data in the manifest, but it looks reasonable on the
>first
>> >pass.
>>
>> I thought this was called from the do_sdk_image function which
>was replaced
>> by the do_rootfs function here so I looked like the call to that
>function
>> was removed.
>
>No, do_sdk_image (which originally was almost a direct replacement
>for
>do_rootfs) was split out into 3 sub-functions tisdk_image_setup,
>tisdk_image_build and tisdk_imgage_cleanup to wrap around the
>standard
>Python-based do_rootfs. The 100% of tisdk functionality is still
>there!
>
>So, I basically reversed the logic. It used to be driven by
>do_sdk_image
>function and calling out APIs from rootfs and image classes
>inside, when
>needed. Now, it lets standard do_rootfs do its thing and asks to
>call us back
>at proper times through those 3 callback functions above. This was
>the least
>invasive fix - it still works and keeps 95% of our code as is.
>Otherwise it
>would have been required to rewrite it entirely in Python...

Now I understand.  Thanks for the explanation.

>
>
>> >> Overall I think this is a step in the right direction though,
>so
>> >ACK for
>> >> this patch.  Just curious if we should expect more.
>> >
>> >Yeah, I tried to minimize the impact as much as possible. But
>> >overall, it's
>> >still rather hacky...
>> >
>> >
>> >> >> +
>> >> >> +    # generate rootfs
>> >> >> +    create_rootfs(d)
>> >> >> +
>> >> >> +    # generate final images
>> >> >> +    create_image(d)
>> >> >> +}
>> >> >> +
>> >> >> +tisdk_image_setup () {
>> >> >> +    set -x
>> >> >> +    rm -rf ${IMAGE_ROOTFS}
>> >> >> +    mkdir -p ${IMAGE_ROOTFS}
>> >> >> +    mkdir -p ${DEPLOY_DIR_IMAGE}
>> >> >>
>> >> >> -	mkdir -p ${IMAGE_ROOTFS}/etc
>> >> >> +    mkdir -p ${IMAGE_ROOTFS}/etc
>> >> >> +    mkdir -p ${IMAGE_ROOTFS}/var/lib/opkg
>> >> >>
>> >> >>      chmod 755 ${DEPLOY_DIR}/sdk/${SDK_NAME}-
>${ARMPKGARCH}-
>> >> >> ${TARGET_OS}-tisdk*
>> >> >>
>> >> >>      # Temporarily extract the toolchain sdk so we can
>read
>> >> >license information
>> >> >> from it.
>> >> >>      echo "${IMAGE_ROOTFS}/${TISDK_TOOLCHAIN_PATH}" |
>> >> >> ${DEPLOY_DIR}/sdk/${SDK_NAME}-${ARMPKGARCH}-${TARGET_OS}-
>> >tisdk*
>> >> >> +}
>> >> >>
>> >> >> -    # Creat the base SDK image
>> >> >> -	rootfs_${IMAGE_PKGTYPE}_do_rootfs
>> >> >> -
>> >> >> +tisdk_image_build () {
>> >> >>      mkdir -p ${IMAGE_ROOTFS}/filesystem
>> >> >>
>> >> >>      # Copy the TARGET_IMAGES to the sdk image before
>> >packaging
>> >> >@@ -
>> >> >> 607,23 +607,18 @@ do_sdk_image () {
>> >> >>
>> >> >>      # Copy the opkg.conf used by the image to allow for
>> >future
>> >> >updates
>> >> >>      cp ${WORKDIR}/opkg.conf ${IMAGE_ROOTFS}/etc/
>> >> >> +}
>> >> >>
>> >> >> +tisdk_image_cleanup () {
>> >> >>      # Move the var/etc directories which contains the
>opkg
>> >data
>> >> >used for the
>> >> >>      # manifest (and maybe one day for online updates) to
>a
>> >> >hidden directory.
>> >> >>      mv ${IMAGE_ROOTFS}/var ${IMAGE_ROOTFS}/.var
>> >> >>      mv ${IMAGE_ROOTFS}/etc ${IMAGE_ROOTFS}/.etc
>> >> >> -
>> >> >> -    # Create the image directory symlinks
>> >> >> -    # $ { @ get_imagecmds(d) }
>> >> >>  }
>> >> >>
>> >> >>  license_create_manifest() {
>> >> >>      :
>> >> >>  }
>> >> >>
>> >> >> -rootfs_install_complementary() {
>> >> >> -    :
>> >> >> -}
>> >> >> -
>> >> >> -EXPORT_FUNCTIONS do_sdk_image
>> >> >> -addtask sdk_image before do_build after do_install
>> >> >> +EXPORT_FUNCTIONS do_rootfs
>> >> >> +addtask rootfs before do_build after do_install
>> >> >> --
>> >> >> 2.0.0
>> >> >>
>> >> >> _______________________________________________
>> >> >> meta-arago mailing list
>> >> >> meta-arago@arago-project.org
>> >> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-
>arago
>> >> >_______________________________________________
>> >> >meta-arago mailing list
>> >> >meta-arago@arago-project.org
>> >> >http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
>> >> _______________________________________________
>> >> meta-arago mailing list
>> >> meta-arago@arago-project.org
>> >> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-07-02 13:56 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-01 19:19 [PATCH] tisdk-image.bbclass: update for the new rootfs/image infrastructure Denys Dmytriyenko
2014-07-01 21:10 ` Cooper Jr., Franklin
2014-07-02 13:00   ` Maupin, Chase
2014-07-02 13:27     ` Denys Dmytriyenko
2014-07-02 13:44       ` Maupin, Chase
2014-07-02 13:53         ` Denys Dmytriyenko
2014-07-02 13:55           ` Maupin, Chase

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.