diff mbox series

[meta-oe] meta-oe:drgn: add new recipe

Message ID 20240820054044.1538795-3-jamin_lin@aspeedtech.com
State Under Review
Headers show
Series [meta-oe] meta-oe:drgn: add new recipe | expand

Commit Message

Jamin Lin Aug. 20, 2024, 5:40 a.m. UTC
drgn is a debugger with an emphasis on programmability
drgn exposes the types and variables in a program
for easy, expressive scripting in Python.

Drgn depends on:
1. python3
2. elfutils

The build requires:
1. setuptools
2. automake
3. autoconf
4. libtool
5. pkgconf

Reference:
https://drgn.readthedocs.io/en/latest/installation.html

Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
---
 .../drgn/python3-drgn_0.0.27.bb               | 69 +++++++++++++++++++
 1 file changed, 69 insertions(+)
 create mode 100644 meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb

Comments

Khem Raj Aug. 21, 2024, 12:11 a.m. UTC | #1
this seems to fail with clang and llvm provided libomp  see

https://errors.yoctoproject.org/Errors/Details/798433/

On Mon, Aug 19, 2024 at 10:40 PM Jamin Lin via lists.openembedded.org
<jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
>
> drgn is a debugger with an emphasis on programmability
> drgn exposes the types and variables in a program
> for easy, expressive scripting in Python.
>
> Drgn depends on:
> 1. python3
> 2. elfutils
>
> The build requires:
> 1. setuptools
> 2. automake
> 3. autoconf
> 4. libtool
> 5. pkgconf
>
> Reference:
> https://drgn.readthedocs.io/en/latest/installation.html
>
> Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> ---
>  .../drgn/python3-drgn_0.0.27.bb               | 69 +++++++++++++++++++
>  1 file changed, 69 insertions(+)
>  create mode 100644 meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
>
> diff --git a/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
> new file mode 100644
> index 000000000..5c0dbe963
> --- /dev/null
> +++ b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
> @@ -0,0 +1,69 @@
> +SUMMARY = "drgn (pronounced dragon) is a debugger with an emphasis on  \
> +programmability. drgn exposes the types and variables in a program for easy, \
> +expressive scripting in Python."
> +HOMEPAGE = "https://github.com/osandov/drgn"
> +LICENSE = " LGPL-2.1-or-later"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=7c83d30e99508d6b790eacdd3abab846"
> +
> +SRC_URI = "git://github.com/osandov/drgn.git;protocol=https;branch=main"
> +SRCREV = "a8dfc9e31f551d4b3c3d4307fa19ab6b3bfafb1c"
> +
> +S = "${WORKDIR}/git"
> +
> +DEPENDS = "\
> +    autoconf-native \
> +    automake-native \
> +    libtool-native \
> +    elfutils \
> +    "
> +
> +RDEPENDS:${PN} = "\
> +    python3-crypt \
> +    python3-io \
> +    python3-logging \
> +    python3-math \
> +    python3-pickle \
> +    python3-stringold \
> +    python3-compression \
> +    "
> +
> +RDEPENDS:${PN}:append:class-target = "\
> +    libdw \
> +    libelf \
> +    libgomp \
> +    "
> +
> +RDEPENDS:${PN}:append:class-native = "\
> +    elfutils-native \
> +    "
> +
> +RDEPENDS:${PN}:append:class-nativesdk = "\
> +    nativesdk-elfutils \
> +    "
> +
> +export CONFIGURE_FLAGS = "\
> +    --build=${BUILD_SYS}, \
> +    --host=${HOST_SYS}, \
> +    --target=${TARGET_SYS}, \
> +    --prefix=${prefix}, \
> +    --exec_prefix=${exec_prefix}, \
> +    --bindir=${bindir}, \
> +    --sbindir=${sbindir}, \
> +    --libexecdir=${libexecdir}, \
> +    --datadir=${datadir}, \
> +    --sysconfdir=${sysconfdir}, \
> +    --sharedstatedir=${sharedstatedir}, \
> +    --localstatedir=${localstatedir}, \
> +    --libdir=${libdir}, \
> +    --includedir=${includedir}, \
> +    --oldincludedir=${includedir}, \
> +    --infodir=${infodir}, \
> +    --mandir=${mandir}, \
> +    --with-libtool-sysroot=${STAGING_DIR_HOST} \
> +    "
> +
> +export PYTHON_CPPFLAGS = "-I${STAGING_INCDIR}/${PYTHON_DIR}"
> +
> +inherit python3native pkgconfig setuptools3
> +
> +BBCLASSEXTEND = "native nativesdk"
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#111862): https://lists.openembedded.org/g/openembedded-devel/message/111862
> Mute This Topic: https://lists.openembedded.org/mt/107995862/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Jamin Lin Aug. 22, 2024, 9:34 a.m. UTC | #2
Thanks for review.

Sorry for lost to test Yoe DISTRO Features about clang toolchain.

I re-send v2 patch to fix it.

Drgn depends on:

openmp

a. clang toolchain should use libomp(openmp) from meta-clang b. gnu gcc toolchain should use libgomp(gcc-runtime) from openembedded-core

Thanks-Jamin
林建明 Aug. 22, 2024, 9:56 a.m. UTC | #3
Hi Khem Raj

Khem Raj <raj.khem@gmail.com>:
>
> this seems to fail with clang and llvm provided libomp  see
>
Thanks for review.
Sorry for lost to test Yoe DISTRO Features about clang toolchain.
I re-send v2 patch to fix it.

Drgn depends on:
openmp
a. clang toolchain should use libomp(openmp) from meta-clang
b. gnu gcc toolchain should use libgomp(gcc-runtime) from openembedded-core

Thanks-Jamin

> https://errors.yoctoproject.org/Errors/Details/798433/
>
> On Mon, Aug 19, 2024 at 10:40 PM Jamin Lin via lists.openembedded.org
> <jamin_lin=aspeedtech.com@lists.openembedded.org> wrote:
> >
> > drgn is a debugger with an emphasis on programmability
> > drgn exposes the types and variables in a program
> > for easy, expressive scripting in Python.
> >
> > Drgn depends on:
> > 1. python3
> > 2. elfutils
> >
> > The build requires:
> > 1. setuptools
> > 2. automake
> > 3. autoconf
> > 4. libtool
> > 5. pkgconf
> >
> > Reference:
> > https://drgn.readthedocs.io/en/latest/installation.html
> >
> > Signed-off-by: Jamin Lin <jamin_lin@aspeedtech.com>
> > ---
> >  .../drgn/python3-drgn_0.0.27.bb               | 69 +++++++++++++++++++
> >  1 file changed, 69 insertions(+)
> >  create mode 100644 meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
> >
> > diff --git a/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
> > new file mode 100644
> > index 000000000..5c0dbe963
> > --- /dev/null
> > +++ b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
> > @@ -0,0 +1,69 @@
> > +SUMMARY = "drgn (pronounced dragon) is a debugger with an emphasis on  \
> > +programmability. drgn exposes the types and variables in a program for easy, \
> > +expressive scripting in Python."
> > +HOMEPAGE = "https://github.com/osandov/drgn"
> > +LICENSE = " LGPL-2.1-or-later"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=7c83d30e99508d6b790eacdd3abab846"
> > +
> > +SRC_URI = "git://github.com/osandov/drgn.git;protocol=https;branch=main"
> > +SRCREV = "a8dfc9e31f551d4b3c3d4307fa19ab6b3bfafb1c"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +DEPENDS = "\
> > +    autoconf-native \
> > +    automake-native \
> > +    libtool-native \
> > +    elfutils \
> > +    "
> > +
> > +RDEPENDS:${PN} = "\
> > +    python3-crypt \
> > +    python3-io \
> > +    python3-logging \
> > +    python3-math \
> > +    python3-pickle \
> > +    python3-stringold \
> > +    python3-compression \
> > +    "
> > +
> > +RDEPENDS:${PN}:append:class-target = "\
> > +    libdw \
> > +    libelf \
> > +    libgomp \
> > +    "
> > +
> > +RDEPENDS:${PN}:append:class-native = "\
> > +    elfutils-native \
> > +    "
> > +
> > +RDEPENDS:${PN}:append:class-nativesdk = "\
> > +    nativesdk-elfutils \
> > +    "
> > +
> > +export CONFIGURE_FLAGS = "\
> > +    --build=${BUILD_SYS}, \
> > +    --host=${HOST_SYS}, \
> > +    --target=${TARGET_SYS}, \
> > +    --prefix=${prefix}, \
> > +    --exec_prefix=${exec_prefix}, \
> > +    --bindir=${bindir}, \
> > +    --sbindir=${sbindir}, \
> > +    --libexecdir=${libexecdir}, \
> > +    --datadir=${datadir}, \
> > +    --sysconfdir=${sysconfdir}, \
> > +    --sharedstatedir=${sharedstatedir}, \
> > +    --localstatedir=${localstatedir}, \
> > +    --libdir=${libdir}, \
> > +    --includedir=${includedir}, \
> > +    --oldincludedir=${includedir}, \
> > +    --infodir=${infodir}, \
> > +    --mandir=${mandir}, \
> > +    --with-libtool-sysroot=${STAGING_DIR_HOST} \
> > +    "
> > +
> > +export PYTHON_CPPFLAGS = "-I${STAGING_INCDIR}/${PYTHON_DIR}"
> > +
> > +inherit python3native pkgconfig setuptools3
> > +
> > +BBCLASSEXTEND = "native nativesdk"
> > --
> > 2.25.1
> >
> >
> > -=-=-=-=-=-=-=-=-=-=-=-
> > Links: You receive all messages sent to this group.
> > View/Reply Online (#111862): https://lists.openembedded.org/g/openembedded-devel/message/111862
> > Mute This Topic: https://lists.openembedded.org/mt/107995862/1997914
> > Group Owner: openembedded-devel+owner@lists.openembedded.org
> > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> > -=-=-=-=-=-=-=-=-=-=-=-
> >
diff mbox series

Patch

diff --git a/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
new file mode 100644
index 000000000..5c0dbe963
--- /dev/null
+++ b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb
@@ -0,0 +1,69 @@ 
+SUMMARY = "drgn (pronounced dragon) is a debugger with an emphasis on  \
+programmability. drgn exposes the types and variables in a program for easy, \
+expressive scripting in Python."
+HOMEPAGE = "https://github.com/osandov/drgn"
+LICENSE = " LGPL-2.1-or-later"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7c83d30e99508d6b790eacdd3abab846"
+
+SRC_URI = "git://github.com/osandov/drgn.git;protocol=https;branch=main"
+SRCREV = "a8dfc9e31f551d4b3c3d4307fa19ab6b3bfafb1c"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "\
+    autoconf-native \
+    automake-native \
+    libtool-native \
+    elfutils \
+    "
+
+RDEPENDS:${PN} = "\
+    python3-crypt \
+    python3-io \
+    python3-logging \
+    python3-math \
+    python3-pickle \
+    python3-stringold \
+    python3-compression \
+    "
+
+RDEPENDS:${PN}:append:class-target = "\
+    libdw \
+    libelf \
+    libgomp \
+    "
+
+RDEPENDS:${PN}:append:class-native = "\
+    elfutils-native \
+    "
+
+RDEPENDS:${PN}:append:class-nativesdk = "\
+    nativesdk-elfutils \
+    "
+
+export CONFIGURE_FLAGS = "\
+    --build=${BUILD_SYS}, \
+    --host=${HOST_SYS}, \
+    --target=${TARGET_SYS}, \
+    --prefix=${prefix}, \
+    --exec_prefix=${exec_prefix}, \
+    --bindir=${bindir}, \
+    --sbindir=${sbindir}, \
+    --libexecdir=${libexecdir}, \
+    --datadir=${datadir}, \
+    --sysconfdir=${sysconfdir}, \
+    --sharedstatedir=${sharedstatedir}, \
+    --localstatedir=${localstatedir}, \
+    --libdir=${libdir}, \
+    --includedir=${includedir}, \
+    --oldincludedir=${includedir}, \
+    --infodir=${infodir}, \
+    --mandir=${mandir}, \
+    --with-libtool-sysroot=${STAGING_DIR_HOST} \
+    "
+
+export PYTHON_CPPFLAGS = "-I${STAGING_INCDIR}/${PYTHON_DIR}"
+
+inherit python3native pkgconfig setuptools3
+
+BBCLASSEXTEND = "native nativesdk"