From patchwork Thu Aug 22 09:19:39 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jamin Lin X-Patchwork-Id: 48087 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id DC18BC5321D for ; Thu, 22 Aug 2024 09:19:50 +0000 (UTC) Received: from TWMBX01.aspeed.com (TWMBX01.aspeed.com [211.20.114.72]) by mx.groups.io with SMTP id smtpd.web11.9229.1724318383756609576 for ; Thu, 22 Aug 2024 02:19:44 -0700 Authentication-Results: mx.groups.io; dkim=none (message not signed); spf=pass (domain: aspeedtech.com, ip: 211.20.114.72, mailfrom: jamin_lin@aspeedtech.com) Received: from TWMBX01.aspeed.com (192.168.0.62) by TWMBX01.aspeed.com (192.168.0.62) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1258.12; Thu, 22 Aug 2024 17:19:40 +0800 Received: from localhost.localdomain (192.168.10.10) by TWMBX01.aspeed.com (192.168.0.62) with Microsoft SMTP Server id 15.2.1258.12 via Frontend Transport; Thu, 22 Aug 2024 17:19:40 +0800 From: Jamin Lin To: CC: , , Subject: [PATCH v2] drgn: add new recipe Date: Thu, 22 Aug 2024 17:19:39 +0800 Message-ID: <20240822091940.1512585-1-jamin_lin@aspeedtech.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Thu, 22 Aug 2024 09:19:50 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/111900 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 3. openmp a. clang toolchain should use libomp(openmp) from meta-clang b. gnu gcc toolchain should use libgomp(gcc-runtime) from openembedded-core The build requires: 1. setuptools 2. automake 3. autoconf 4. libtool 5. pkgconf Signed-off-by: Jamin Lin --- .../drgn/python3-drgn_0.0.27.bb | 80 +++++++++++++++++++ 1 file changed, 80 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..10d7c6ffd --- /dev/null +++ b/meta-oe/recipes-kernel/drgn/python3-drgn_0.0.27.bb @@ -0,0 +1,80 @@ +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 \ + " + +DEPENDS:append:toolchain-clang:class-target ="\ + openmp \ + " + +OPENMP_LIB = "libgomp" +OPENMP_LIB:toolchain-clang:class-target = "openmp" + +RDEPENDS:${PN} = "\ + python3-crypt \ + python3-io \ + python3-logging \ + python3-math \ + python3-pickle \ + python3-stringold \ + python3-compression \ + " + +RDEPENDS:${PN}:append:class-target = "\ + libdw \ + libelf \ + ${OPENMP_LIB} \ + " + +RDEPENDS:${PN}:append:class-native = "\ + elfutils-native \ + " + +RDEPENDS:${PN}:append:class-nativesdk = "\ + nativesdk-elfutils \ + " + +OPENMP_LIB_NAME = "gomp" +OPENMP_LIB_NAME:toolchain-clang:class-target = "omp" + +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}, \ + --enable-openmp=${OPENMP_LIB_NAME} \ + " + +export PYTHON_CPPFLAGS = "-I${STAGING_INCDIR}/${PYTHON_DIR}" + +inherit python3native pkgconfig setuptools3 + +BBCLASSEXTEND = "native nativesdk" +