From patchwork Tue Sep 9 08:05:26 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christoph Steiger X-Patchwork-Id: 4338 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Tue, 09 Sep 2025 10:05:56 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-lf1-f55.google.com (mail-lf1-f55.google.com [209.85.167.55]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 58985sgR007129 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 9 Sep 2025 10:05:54 +0200 Received: by mail-lf1-f55.google.com with SMTP id 2adb3069b0e04-55f5f436648sf3339885e87.2 for ; Tue, 09 Sep 2025 01:05:54 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1757405148; cv=pass; d=google.com; s=arc-20240605; b=Tzomrf8xAypf9Gqx6HpCLnJg9YwLFKXl4f7kJ2XWIR7hdQbHXi9vLQdfW/hOZ1yrju WS3fdkzTlzmJpowfnTOY7k98k/+5/IORxnJozLQ23+WXzsjyu0FWDsLtdJAE7SEsawwj 6lrZEM2ew3xyqhJRCEC6I06ULrpUb+Ou5l5MysITKPO8lUem0TAIhvp0CfZBj/Mugk9o lN77iNzjrx2hc/sld9cN635w7N58+mo7A4Qw1deg4in9MQcEOWVf9Y7oL+z9ZQOWecR+ RfpQH5ZHHXeWhARJ8cVBfXdXbMqBDjtaIH5gwVJYQ1mP6a0tC6TxaIaJlJrkT+x2GyQn 7Blw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to:feedback-id:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ZBUUBgwk8xQsvIZeRFNcLQPyeAulBoaaM6DCTkCuqA4=; fh=AMc9hmR1B3S2sDupbOsfSyeWtjDDmhY/oG52qAVvA1o=; b=Ho1qvPEyzurXsLhid04VyiNYGu8sRGMZWCxIZr87XLycWkTv56FJfsjmceCcdJ2YpC uAQt7BF0YqL3i4FO52N3Pi82v4xqV8ydAhfUjoTsYzTzInT0jfO7PJkZID6BtSWIiA0O c9whHJpFoWk47HK486Nj/e85Tqkw2a+duICVVTrXHMwb26vaPzWolttMaaz/hDQPN8q/ lLU2gGlLI0fRbvPF593VCHloJOfg07r1d07EqwBTHsg58z8YSrxJOjBTX9mL1ytoR/1A Wu5qelX5gAD0IU3oNQxffA+sitPNcZPm8c8OPDHHAaLrlV4vKyQCacYkv3xv4lXhN/Zn lxrQ==; darn=isar-build.org ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=K2SjM05V; spf=pass (google.com: domain of fm-1328957-20250909080542db814985a800020766-ojywve@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328957-20250909080542db814985a800020766-oJywvE@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1757405148; x=1758009948; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:from:to:cc:subject:date:message-id:reply-to; bh=ZBUUBgwk8xQsvIZeRFNcLQPyeAulBoaaM6DCTkCuqA4=; b=aRWrFzASlSoLhlphqrno1OiObetdD3Wd8YpJ+TgRiIn7L+Sngsn1Fzt1ObxMM0vljX 0fRHsrR1U6YHmf8fc/fgczirVupl7/Nj6hvGJok54pgHWUnuCqqdDOT2IjzmE9DsqjFl UtOyPe/cRBhm9zmshVgJDbmGkdy9M4ovjJkHJ4+KyHKtIOxeM4p1ydOdKa//MXH39qbC O8A9I+P7sBj1+2m8d7oas4ehZY8L1R3A0f5cEoapgxyJe8Dgo1BXWBXD9oAEZKr6cn65 JS4YC02Itb+rv0i/j/w915ul8TA99dFlK/x6yNgaX/XnA+y8JyESdZH/f1t3aKr60DnQ ZRUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1757405148; x=1758009948; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:feedback-id :mime-version:references:in-reply-to:message-id:date:subject:cc:to :from:x-beenthere:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=ZBUUBgwk8xQsvIZeRFNcLQPyeAulBoaaM6DCTkCuqA4=; b=RWOTSiUgd95PD/4jbDkrumBkaOqWdzFsi7Ds/e74XfBT9e2jNh10COULy/OFYK5AvO zVLL4xSZ6K8Rs57NYHVsYcsyA4/YI0EjKsekCfBDud0lV9H/NIOYTmkYHK46swzXxmcx NCVmHQuXfMXJnknI5+P/HJNLAzEOQeRTE02M8InK6aFQG5NskDnkaZHz+rMJjblNPbFu yLUrrfhM4heKb/yJSJB68Uqi0oJbUCmVfo3eH9pLQkH0Nds4GT1I/HALSnS3dd2BL20D d7ZmfXurB5c0RNE2Mv35FWqfh1703I+OURQbovT9pKM77A4BfiKXdJJ6gFxMQu1pQAfx 6TDA== X-Forwarded-Encrypted: i=2; AJvYcCUJ2s2GvvYgI9wWu3HtA5T8v10A4SWBoUy/oHRGTFdInozPLDk4SvF5d0SqfwG9lAn1Za1S81c=@isar-build.org X-Gm-Message-State: AOJu0Yz4azdh/DRIPRiDrqcJdwc7c77/DSLidnOddc2eOTs7nG+7hS96 yeMJlemBLpXHUo8hEcJbBao4WQCNo11vfDfkbfxWmfxOd3VybX9Q71zU X-Google-Smtp-Source: AGHT+IHBq1aO5oTacgEUPyQY6J2b6g1GsprmlPnIsKWZEbIm8hVsUciRFOUzXTiKCwnmvw80t9JV9A== X-Received: by 2002:a05:6512:234f:b0:55f:4f46:9f2a with SMTP id 2adb3069b0e04-56260e42664mr3488902e87.19.1757405147501; Tue, 09 Sep 2025 01:05:47 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com; h=AZMbMZfzeXpGCFUgjgYWS9fmNQ9INl6z2a801z9ttk/Llb8FLw== Received: by 2002:a05:6512:6409:b0:55f:48d5:149e with SMTP id 2adb3069b0e04-5615bad373bls1262102e87.2.-pod-prod-04-eu; Tue, 09 Sep 2025 01:05:44 -0700 (PDT) X-Received: by 2002:a05:6512:3e1e:b0:55f:43ba:9410 with SMTP id 2adb3069b0e04-56260e3b841mr3725610e87.15.1757405144337; Tue, 09 Sep 2025 01:05:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1757405144; cv=none; d=google.com; s=arc-20240605; b=SLhlIq86d3HTR1frIdGmvkBEoDsHIJmyw+vLU3x3gVruP18G2X39HB1fASdkq5z2xL 2wQy53xWXEZYZKFZNv+cXz5SR99emNPZFzPhcOLSMJ7vcDW4gBLAl/qibyE4H1/YFcX+ r3kRDr4MDQyCy8j0zSVdiMDPGUI7CR2qf0vOiSpG6eFC33heeUArYr4+dCQWpaZUd+3+ xC8sUpz0drufy/i7qgsqwlqIHquoROoW/zdjiwAO8jBbfdjrtMbpUsHHQ5n7w0GscEio tusFaSsw8waX/QSL+0KCCBGOoGnc2SICgiKvl5XJKByI2dxMPwf7Pm47cnNccznBqqW8 8T8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=W+5CzJBogpGcXM178ONuO9dCYRV7LGkpVahVK92yZJE=; fh=eiYcjuc0Ff+maEd84O/+qg+73FB83bid0hUx0HldS7s=; b=ig8Uj4SsjzwkTvdtXdOrhMMtgE7f5RSp5hsTGn1T7MqH13erWezHsblxIffjrfv2Dp RViON3EDPblv1YFp0DKFAiHJC0ADyaDCyw5ha/kIo6hwVxs09pKfrKBX2zqdGXPO5TDS GqceAcQYyBK5yhVLzo7BanVMnznjaoRWvT7DZSuCfl6PF0rlS4fuTKYvI8AirfF9puvn 8NzgHJfdge7G2x6pTy3ijTFUaMvAHBqXs8mbz7OY9UP4/h2ZLS1QouNGafcs4M34+ajQ xS7RHk6b5/w5HC6QtECKXBIoMn257+npQAf2q2eDTPnf0hCu5VU/xhGDKzzTeq/ONgCi LwbQ==; dara=google.com ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=K2SjM05V; spf=pass (google.com: domain of fm-1328957-20250909080542db814985a800020766-ojywve@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328957-20250909080542db814985a800020766-oJywvE@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from mta-64-225.siemens.flowmailer.net (mta-64-225.siemens.flowmailer.net. [185.136.64.225]) by gmr-mx.google.com with ESMTPS id 2adb3069b0e04-5680ecf93e4si23163e87.7.2025.09.09.01.05.43 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 09 Sep 2025 01:05:43 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-1328957-20250909080542db814985a800020766-ojywve@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) client-ip=185.136.64.225; Received: by mta-64-225.siemens.flowmailer.net with ESMTPSA id 20250909080542db814985a800020766 for ; Tue, 09 Sep 2025 10:05:43 +0200 X-Patchwork-Original-From: "'Christoph Steiger' via isar-users" From: Christoph Steiger To: isar-users@googlegroups.com Cc: jan.kiszka@siemens.com, felix.moessbauer@siemens.com, gernot.hillier@siemens.com, cedric.hombourger@siemens.com, Christoph Steiger Subject: [PATCH 1/3] meta: package python libraries for SBOM generation Date: Tue, 9 Sep 2025 10:05:26 +0200 Message-Id: <20250909080528.95765-2-christoph.steiger@siemens.com> In-Reply-To: <20250909080528.95765-1-christoph.steiger@siemens.com> References: <20250909080528.95765-1-christoph.steiger@siemens.com> MIME-Version: 1.0 X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-1328957:519-21489:flowmailer X-Original-Sender: christoph.steiger@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=K2SjM05V; spf=pass (google.com: domain of fm-1328957-20250909080542db814985a800020766-ojywve@rts-flowmailer.siemens.com designates 185.136.64.225 as permitted sender) smtp.mailfrom=fm-1328957-20250909080542db814985a800020766-oJywvE@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Christoph Steiger Reply-To: Christoph Steiger Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_DNSWL_BLOCKED,RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED, RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= Package python libraries for SBOM generation in isar. The packages are unfortunately not (yet) packaged in Debian, thats why we need to do it here. With these libraries it is now possible to easily create CDX and SPDX SBOMs in different file formats. Signed-off-by: Christoph Steiger --- .../python3-beartype/files/rules | 8 +++ .../python3-beartype_0.19.0.bb | 29 ++++++++++ .../files/pybuild.testfiles | 1 + .../python3-cyclonedx-python-lib/files/rules | 8 +++ .../python3-cyclonedx-python-lib_9.1.0.bb | 56 +++++++++++++++++++ .../python3-packageurl-python/files/rules | 8 +++ .../python3-packageurl-python_0.16.0.bb | 33 +++++++++++ .../python3-py-serializable/files/rules | 8 +++ .../python3-py-serializable_2.0.0.bb | 42 ++++++++++++++ .../python3-spdx-tools/files/rules | 25 +++++++++ .../python3-spdx-tools_0.8.3.bb | 56 +++++++++++++++++++ 11 files changed, 274 insertions(+) create mode 100644 meta/recipes-support/python3-beartype/files/rules create mode 100644 meta/recipes-support/python3-beartype/python3-beartype_0.19.0.bb create mode 100644 meta/recipes-support/python3-cyclonedx-python-lib/files/pybuild.testfiles create mode 100644 meta/recipes-support/python3-cyclonedx-python-lib/files/rules create mode 100644 meta/recipes-support/python3-cyclonedx-python-lib/python3-cyclonedx-python-lib_9.1.0.bb create mode 100644 meta/recipes-support/python3-packageurl-python/files/rules create mode 100644 meta/recipes-support/python3-packageurl-python/python3-packageurl-python_0.16.0.bb create mode 100644 meta/recipes-support/python3-py-serializable/files/rules create mode 100644 meta/recipes-support/python3-py-serializable/python3-py-serializable_2.0.0.bb create mode 100644 meta/recipes-support/python3-spdx-tools/files/rules create mode 100644 meta/recipes-support/python3-spdx-tools/python3-spdx-tools_0.8.3.bb diff --git a/meta/recipes-support/python3-beartype/files/rules b/meta/recipes-support/python3-beartype/files/rules new file mode 100644 index 00000000..0ca517a1 --- /dev/null +++ b/meta/recipes-support/python3-beartype/files/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE = 1 +export PYBUILD_NAME = beartype +export PYBUILD_SYSTEM = pyproject + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/meta/recipes-support/python3-beartype/python3-beartype_0.19.0.bb b/meta/recipes-support/python3-beartype/python3-beartype_0.19.0.bb new file mode 100644 index 00000000..34f56b30 --- /dev/null +++ b/meta/recipes-support/python3-beartype/python3-beartype_0.19.0.bb @@ -0,0 +1,29 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens, 2025 +# +# SPDX-License-Identifier: MIT + +inherit dpkg + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +S = "${WORKDIR}/beartype-${PV}" + +MAINTAINER = "Christoph Steiger " +DPKG_ARCH = "all" +DEBIAN_BUILD_DEPENDS = "debhelper (>= 11~), dh-python, python3-all, python3-setuptools, pybuild-plugin-pyproject, python3-hatchling" +DEBIAN_DEPENDS = "python3" +# this is 01/01/1980, any earlier and zip in the wheel building process will not accept it +DEBIAN_CHANGELOG_TIMESTAMP = "315532800" +DESCRIPTION = "Unbearably fast near-real-time hybrid runtime-static type-checking in pure Python." + +SRC_URI = "\ + https://github.com/beartype/beartype/archive/refs/tags/v0.19.0.tar.gz \ + file://rules \ + " +SRC_URI[sha256sum] = "e7ad00eebf527d60f30e0b391209b561dabd2074b608c50e26c94c2d8250a6cd" + +do_prepare_build[cleandirs] += "${S}/debian" +do_prepare_build() { + deb_debianize +} diff --git a/meta/recipes-support/python3-cyclonedx-python-lib/files/pybuild.testfiles b/meta/recipes-support/python3-cyclonedx-python-lib/files/pybuild.testfiles new file mode 100644 index 00000000..cc736a36 --- /dev/null +++ b/meta/recipes-support/python3-cyclonedx-python-lib/files/pybuild.testfiles @@ -0,0 +1 @@ +pyproject.toml diff --git a/meta/recipes-support/python3-cyclonedx-python-lib/files/rules b/meta/recipes-support/python3-cyclonedx-python-lib/files/rules new file mode 100644 index 00000000..fe72dd1a --- /dev/null +++ b/meta/recipes-support/python3-cyclonedx-python-lib/files/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE = 1 +export PYBUILD_NAME = cyclonedx-python-lib +export PYBUILD_SYSTEM = pyproject + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/meta/recipes-support/python3-cyclonedx-python-lib/python3-cyclonedx-python-lib_9.1.0.bb b/meta/recipes-support/python3-cyclonedx-python-lib/python3-cyclonedx-python-lib_9.1.0.bb new file mode 100644 index 00000000..62c23476 --- /dev/null +++ b/meta/recipes-support/python3-cyclonedx-python-lib/python3-cyclonedx-python-lib_9.1.0.bb @@ -0,0 +1,56 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens, 2025 +# +# SPDX-License-Identifier: MIT + +inherit dpkg + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +DEPENDS = "python3-packageurl-python python3-py-serializable" + +S = "${WORKDIR}/cyclonedx_python_lib-${PV}" + +MAINTAINER = "Christoph Steiger " +DPKG_ARCH = "all" +DEBIAN_BUILD_DEPENDS = "debhelper (>= 11~), \ + dh-python, \ + python3-all, \ + python3-setuptools, \ + pybuild-plugin-pyproject, \ + python3-poetry, \ + python3-py-serializable, \ + python3-packageurl-python, \ + python3-sortedcontainers, \ + python3-ddt, \ + python3-defusedxml, \ + python3-license-expression, \ + python3-jsonschema, \ + python3-lxml, \ + " + +DEBIAN_DEPENDS = "python3, \ + python3-py-serializable, \ + python3-packageurl-python, \ + python3-sortedcontainers, \ + python3-ddt, \ + python3-defusedxml, \ + python3-license-expression, \ + python3-jsonschema, \ + python3-lxml, \ + " + +DESCRIPTION = "Library for serializing and deserializing Python Objects to and from JSON and XML." + +SRC_URI = "\ + https://github.com/CycloneDX/cyclonedx-python-lib/releases/download/v9.1.0/cyclonedx_python_lib-9.1.0.tar.gz \ + file://rules \ + file://pybuild.testfiles \ + " +SRC_URI[sha256sum] = "86935f2c88a7b47a529b93c724dbd3e903bc573f6f8bd977628a7ca1b5dadea1" + +do_prepare_build[cleandirs] += "${S}/debian" +do_prepare_build() { + cp "${WORKDIR}"/pybuild.testfiles "${S}"/debian + deb_debianize +} diff --git a/meta/recipes-support/python3-packageurl-python/files/rules b/meta/recipes-support/python3-packageurl-python/files/rules new file mode 100644 index 00000000..50e1b74c --- /dev/null +++ b/meta/recipes-support/python3-packageurl-python/files/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE = 1 +export PYBUILD_NAME = packageurl-python +export PYBUILD_SYSTEM = distutils + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/meta/recipes-support/python3-packageurl-python/python3-packageurl-python_0.16.0.bb b/meta/recipes-support/python3-packageurl-python/python3-packageurl-python_0.16.0.bb new file mode 100644 index 00000000..773fd93b --- /dev/null +++ b/meta/recipes-support/python3-packageurl-python/python3-packageurl-python_0.16.0.bb @@ -0,0 +1,33 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens, 2025 +# +# SPDX-License-Identifier: MIT + +inherit dpkg + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +S = "${WORKDIR}/packageurl_python-${PV}" + +MAINTAINER = "Christoph Steiger " +DPKG_ARCH = "all" +DEBIAN_BUILD_DEPENDS = "debhelper (>= 11~), \ + dh-python, \ + python3-all, \ + python3-setuptools, \ + " + +DEBIAN_DEPENDS = "python3" + +DESCRIPTION = "A purl aka. Package URL parser and builder" + +SRC_URI = "\ + https://github.com/package-url/packageurl-python/releases/download/v0.16.0/packageurl_python-0.16.0.tar.gz \ + file://rules \ + " +SRC_URI[sha256sum] = "69e3bf8a3932fe9c2400f56aaeb9f86911ecee2f9398dbe1b58ec34340be365d" + +do_prepare_build[cleandirs] += "${S}/debian" +do_prepare_build() { + deb_debianize +} diff --git a/meta/recipes-support/python3-py-serializable/files/rules b/meta/recipes-support/python3-py-serializable/files/rules new file mode 100644 index 00000000..0cf845dd --- /dev/null +++ b/meta/recipes-support/python3-py-serializable/files/rules @@ -0,0 +1,8 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE = 1 +export PYBUILD_NAME = py-serializable +export PYBUILD_SYSTEM = pyproject + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/meta/recipes-support/python3-py-serializable/python3-py-serializable_2.0.0.bb b/meta/recipes-support/python3-py-serializable/python3-py-serializable_2.0.0.bb new file mode 100644 index 00000000..9e75062a --- /dev/null +++ b/meta/recipes-support/python3-py-serializable/python3-py-serializable_2.0.0.bb @@ -0,0 +1,42 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens, 2025 +# +# SPDX-License-Identifier: MIT + +inherit dpkg + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +S = "${WORKDIR}/py_serializable-${PV}" + +MAINTAINER = "Christoph Steiger " +DPKG_ARCH = "all" +DEBIAN_BUILD_DEPENDS = "debhelper (>= 11~), \ + dh-python, \ + python3-all, \ + python3-setuptools, \ + pybuild-plugin-pyproject, \ + python3-poetry, \ + python3-defusedxml, \ + python3-lxml, \ + xmldiff \ + " + +DEBIAN_DEPENDS = "python3, \ + python3-defusedxml, \ + python3-lxml, \ + xmldiff \ + " + +DESCRIPTION = "Library for serializing and deserializing Python Objects to and from JSON and XML." + +SRC_URI = "\ + https://github.com/madpah/serializable/releases/download/v2.0.0/py_serializable-2.0.0.tar.gz \ + file://rules \ + " +SRC_URI[sha256sum] = "e9e6491dd7d29c31daf1050232b57f9657f9e8a43b867cca1ff204752cf420a5" + +do_prepare_build[cleandirs] += "${S}/debian" +do_prepare_build() { + deb_debianize +} diff --git a/meta/recipes-support/python3-spdx-tools/files/rules b/meta/recipes-support/python3-spdx-tools/files/rules new file mode 100644 index 00000000..ac87528a --- /dev/null +++ b/meta/recipes-support/python3-spdx-tools/files/rules @@ -0,0 +1,25 @@ +#!/usr/bin/make -f + +#export DH_VERBOSE = 1 +export PYBUILD_NAME = spdx-tools +export PYBUILD_SYSTEM = distutils + +# skip tests that require hard-to-package dependencies and tests that rely on relative file paths +# TODO: figure out a way to make these tests work +export PYBUILD_TEST_ARGS=--ignore tests/spdx3/validation/json_ld/test_shacl_validation.py \ + -k 'not test_examples \ + and not test_parse_from_file \ + and not test_annotation_parser \ + and not test_snippet_parser \ + and not test_creation_info_parser \ + and not test_json_ld_writer \ + and not test_extracted_licensing_info_parser \ + and not test_parse_file \ + and not test_package_parser \ + and not test_relationship_parser \ + and not test_graph_parsing_function \ + and not test_license_expression_parser \ + ' + +%: + dh $@ --with python3 --buildsystem=pybuild diff --git a/meta/recipes-support/python3-spdx-tools/python3-spdx-tools_0.8.3.bb b/meta/recipes-support/python3-spdx-tools/python3-spdx-tools_0.8.3.bb new file mode 100644 index 00000000..2b81d6fe --- /dev/null +++ b/meta/recipes-support/python3-spdx-tools/python3-spdx-tools_0.8.3.bb @@ -0,0 +1,56 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens, 2025 +# +# SPDX-License-Identifier: MIT + +inherit dpkg + +FILESEXTRAPATHS:prepend := "${THISDIR}/files:" + +S = "${WORKDIR}/tools-python-${PV}" + +DEPENDS = "python3-beartype" + +MAINTAINER = "Christoph Steiger " +DPKG_ARCH = "all" +DEBIAN_BUILD_DEPENDS = "debhelper (>= 11~), \ + dh-python, \ + python3-all, \ + python3-setuptools, \ + python3-beartype, \ + python3-semantic-version, \ + python3-license-expression, \ + python3-pytest, \ + python3-rdflib, \ + python3-uritools, \ + python3-ply, \ + python3-click, \ + python3-xmltodict, \ + python3-yaml, \ + " + +DEBIAN_DEPENDS = "python3, \ + python3-beartype, \ + python3-semantic-version, \ + python3-license-expression, \ + python3-pytest, \ + python3-rdflib, \ + python3-uritools, \ + python3-ply, \ + python3-click, \ + python3-xmltodict, \ + python3-yaml, \ + " + +DESCRIPTION = "SPDX parser and tools." + +SRC_URI = "\ + https://github.com/spdx/tools-python/archive/refs/tags/v0.8.3.tar.gz \ + file://rules \ + " +SRC_URI[sha256sum] = "17cb0140adbaefb58819c9d5d56060dc6a70c673a854fa9bd882ecfa4e062a7f" + +do_prepare_build[cleandirs] += "${S}/debian" +do_prepare_build() { + deb_debianize +}