[meta-ti] [ti2018.03/rocko/master][PATCH] ti-cgt-arm: prevent build of existing library

Denys Dmytriyenko denys at ti.com
Wed Oct 3 10:31:40 PDT 2018


On Wed, Oct 03, 2018 at 01:29:45PM -0400, Jacob Stiffler wrote:
> 
> On 10/3/2018 1:17 PM, Denys Dmytriyenko wrote:
> >On Tue, Oct 02, 2018 at 03:19:00PM -0400, Jacob Stiffler wrote:
> >>On 10/2/2018 3:17 PM, Denys Dmytriyenko wrote:
> >>>I believe this mklib call was added recently due to a race condition and it
> >>>was not built before it was needed - any chance to fix the race properly
> >>>instead of all the workarounds?
> >>
> >>Not sure about fixing the race, but I just found out that there are plans to
> >>have that library available in the default package.
> >So, in the meantime, do we need to merge this workaround?
> 
> 
> Yes. This will fix the failure when do_compile is re-run on existing
> sources.
> 
> 
> Now I think it makes more sense to try to remove the library in
> do_configure, similar to how base.bbclass calls "make clean" if the state of
> the dependencies change.

Sounds good, let's "clean" the library before rebuild.


> >>>On Tue, Oct 02, 2018 at 02:38:00PM -0400, Jacob Stiffler wrote:
> >>>>On 10/2/2018 8:29 AM, Jacob Stiffler wrote:
> >>>>>I recently ran into this error, so I sent this out in a hurry to get it
> >>>>>fixed. But now I am thinking that it may be better to remove this library
> >>>>>in do_configure, similar to base class calls make clean
> >>>>>
> >>>>After thinking about it some more, I would prefer to remove the library in
> >>>>do_configure() to be safe in the unlikely scenario that there are
> >>>>dependencies involved.
> >>>>
> >>>>
> >>>>As it is now, this is hardcoded to a single library. While I am making
> >>>>changes, should I enhance this to take a list of libraries so that it can be
> >>>>easily extended in the future?
> >>>>
> >>>>
> >>>>>Any suggestions?
> >>>>>
> >>>>>
> >>>>>Thanks,
> >>>>>
> >>>>>Jake
> >>>>>
> >>>>>On 10/2/2018 7:36 AM, Jacob Stiffler wrote:
> >>>>>>* Prevent a potential error as mklib will return an error if the
> >>>>>>   library already exists.
> >>>>>>* The error encountered is the following:
> >>>>>>
> >>>>>>| >> ERROR: mklib: destination library .../work/x86_64-linux/ti-cgt-arm-native/16.9.2-r1/ti-cgt-arm-16.9.2/ti-cgt-arm_16.9.2.LTS/lib/rtsv7R4_A_le_v3D16_eabi.lib already exists
> >>>>>>| WARNING: .../work/x86_64-linux/ti-cgt-arm-native/16.9.2-r1/temp/run.do_compile.13758:1 exit 1 from 'lib/mklib --pattern=rtsv7R4_A_le_v3D16_eabi.lib'
> >>>>>>
> >>>>>>Signed-off-by: Jacob Stiffler<j-stiffler at ti.com>
> >>>>>>---
> >>>>>>  recipes-ti/devtools/ti-cgt-arm.inc | 10 +++++++---
> >>>>>>  1 file changed, 7 insertions(+), 3 deletions(-)
> >>>>>>
> >>>>>>diff --git a/recipes-ti/devtools/ti-cgt-arm.inc b/recipes-ti/devtools/ti-cgt-arm.inc
> >>>>>>index b9f7566..e83973b 100644
> >>>>>>--- a/recipes-ti/devtools/ti-cgt-arm.inc
> >>>>>>+++ b/recipes-ti/devtools/ti-cgt-arm.inc
> >>>>>>@@ -9,7 +9,7 @@ require recipes-ti/includes/ti-paths.inc
> >>>>>>  S = "${WORKDIR}/ti-cgt-arm-${PV}"
> >>>>>>-PR = "r1"
> >>>>>>+PR = "r2"
> >>>>>>  SRC_URI ="http://software-dl.ti.com/codegen/esd/cgt_public_sw/TMS470/${PV}.LTS/${BINFILE};name=${BINFILE_NAME}"
> >>>>>>@@ -19,8 +19,12 @@ TI_BIN_UNPK_CMDS = ""
> >>>>>>  do_compile_append() {
> >>>>>>      cd ${S}/ti-cgt-arm_${PV}.LTS
> >>>>>>-    export PATH=${PATH}:${S}/ti-cgt-arm_${PV}.LTS/bin
> >>>>>>-    lib/mklib --pattern=rtsv7R4_A_le_v3D16_eabi.lib
> >>>>>>+
> >>>>>>+    if [ ! -f "./lib/rtsv7R4_A_le_v3D16_eabi.lib" ]
> >>>>>>+    then
> >>>>>>+        export PATH=${PATH}:${S}/ti-cgt-arm_${PV}.LTS/bin
> >>>>>>+        lib/mklib --pattern=rtsv7R4_A_le_v3D16_eabi.lib
> >>>>>>+    fi
> >>>>>>  }
> >>>>>>  do_install() {
> >>>>-- 
> >>>>_______________________________________________
> >>>>meta-ti mailing list
> >>>>meta-ti at yoctoproject.org
> >>>>https://lists.yoctoproject.org/listinfo/meta-ti


More information about the meta-ti mailing list