On Sat, Jul 20, 2024 at 02:02:01PM -0400, Denys Dmytriyenko wrote:
> On Fri, Jul 19, 2024 at 03:36:03PM -0500, Ryan Eatmon via
> lists.yoctoproject.org wrote:
> > The TI cl6x compiler does not have a mechanism for replacing paths in
> > the obj files it creates. So replace the string we want to remove with
> > an equally sized replacement string that does not contain the path.
> >
> > Signed-off-by: Ryan Eatmon <[email protected]>
> > ---
> > ...m-makefile-Fix-reproducibility-error.patch | 31 +++++++++++++++++++
> > .../recipes-bsp/dsptop/libulm_git.bb | 12 +++++--
> > 2 files changed, 41 insertions(+), 2 deletions(-)
> > create mode 100644
> > meta-ti-extras/recipes-bsp/dsptop/files/0001-dstop-ulm-makefile-Fix-reproducibility-error.patch
> >
> > diff --git
> > a/meta-ti-extras/recipes-bsp/dsptop/files/0001-dstop-ulm-makefile-Fix-reproducibility-error.patch
> >
> > b/meta-ti-extras/recipes-bsp/dsptop/files/0001-dstop-ulm-makefile-Fix-reproducibility-error.patch
> > new file mode 100644
> > index 00000000..6ea59517
> > --- /dev/null
> > +++
> > b/meta-ti-extras/recipes-bsp/dsptop/files/0001-dstop-ulm-makefile-Fix-reproducibility-error.patch
> > @@ -0,0 +1,31 @@
> > +From 8619e4b2f983130bf1909cc9c9bc238cd43ded41 Mon Sep 17 00:00:00 2001
> > +From: Ryan Eatmon <[email protected]>
> > +Date: Fri, 19 Jul 2024 14:37:55 -0500
> > +Subject: [master][PATCH] dstop/ulm/makefile: Fix reproducibility error
> > +
> > +The TI cl6x compiler does not have a mechanism for replacing paths in
> > +the obj files it creates. So replace the string we want to remove with
> > +an equally sized replacement string that does not contain the path.
> > +
> > +Upstream-Status: Inappropriate [OE-specific]
> > +
> > +Signed-off-by: Ryan Eatmon <[email protected]>
> > +---
> > + makefile | 1 +
> > + 1 file changed, 1 insertion(+)
> > +
> > +diff --git a/makefile b/makefile
> > +index dffb211..586dcc2 100644
> > +--- a/makefile
> > ++++ b/makefile
> > +@@ -82,6 +82,7 @@ $(OBJDIR)/%.obj: %.c $(INCLUDE_FILES)
> > + @echo "Compiling" $<
> > + @mkdir -p $(OBJDIR)
> > + $(CC) $(CFLAGS) $(INCLUDE_PATH) -fe $@ $<
> > ++ perl -pi -e 's#${SEARCH}#${REPLACE}#g' $@
>
> That assumes perl host tool dependency - is it safe? Can this be done with
> sed instead?
Never mind - I see you have perl-native in DEPENDS.
And for patching binary files perl is definitely better than sed.
> > + libtiulm.a libtiulm.ae66: $(OBJECTS)
> > + @echo "Building target" $@
> > +--
> > +2.17.1
> > +
> > diff --git a/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb
> > b/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb
> > index 6a2cde30..aafae21f 100644
> > --- a/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb
> > +++ b/meta-ti-extras/recipes-bsp/dsptop/libulm_git.bb
> > @@ -6,7 +6,7 @@ inherit features_check
> >
> > REQUIRED_MACHINE_FEATURES = "dsp"
> >
> > -DEPENDS = "ti-cgt6x-native"
> > +DEPENDS = "ti-cgt6x-native perl-native"
> > PR = "${INC_PR}.0"
> >
> > S = "${WORKDIR}/git/dsptop/ulm"
> > @@ -14,7 +14,13 @@ S = "${WORKDIR}/git/dsptop/ulm"
> > DEVICE=""
> > DEVICE:dra7xx = "DRA7xx"
> >
> > -EXTRA_OEMAKE = "release DEVICE=${DEVICE} CROSS_COMPILE=${TARGET_PREFIX}"
> > +EXTRA_OEMAKE = " \
> > + release \
> > + DEVICE=${DEVICE} \
> > + CROSS_COMPILE=${TARGET_PREFIX} \
> > + SEARCH=${WORKDIR} \
> > + REPLACE=${@'_'*(len(d.getVar('WORKDIR'))-7)+"workdir"} \
> > +"
> >
> > do_compile() {
> > oe_runmake arm XPORT_ONLY CC="${CC}"
> > @@ -40,6 +46,8 @@ FILES:${PN}-dev += "\
> >
> > include dsptop.inc
> >
> > +SRC_URI += "file://0001-dstop-ulm-makefile-Fix-reproducibility-error.patch"
> > +
> > ALLOW_EMPTY:${PN} = "1"
> >
> > PARALLEL_MAKE= ""
> > --
> > 2.17.1
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#17901):
https://lists.yoctoproject.org/g/meta-ti/message/17901
Mute This Topic: https://lists.yoctoproject.org/mt/107442178/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-ti/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-