From patchwork Tue Jan 11 19:57:40 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 2312 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 CC34EC433EF for ; Tue, 11 Jan 2022 19:57:52 +0000 (UTC) Received: from mail-pj1-f44.google.com (mail-pj1-f44.google.com [209.85.216.44]) by mx.groups.io with SMTP id smtpd.web12.13179.1641931071608444014 for ; Tue, 11 Jan 2022 11:57:51 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=Vg3CbQrz; spf=pass (domain: gmail.com, ip: 209.85.216.44, mailfrom: ticotimo@gmail.com) Received: by mail-pj1-f44.google.com with SMTP id r16-20020a17090a0ad000b001b276aa3aabso7404697pje.0 for ; Tue, 11 Jan 2022 11:57:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=SVlyh3Vrie0Kx+2EksxkfyjIqoXsfTo5xYzOlpX2AYE=; b=Vg3CbQrz0FJPPiNDVt5Aec2WdOWSLViiFSLDym5hiXwVp5FzAe1vBNgizXmNeNbNDs iuhmbqkkLc2PLlMb8748d5pk+kJY7xLcZtMwvL74i0i8VzzRjzJUs2X7hfIAps3ghMv2 jtn86BohU81BZtXJj83ZFNNtL2ARqcvuACj9YOQN7hU+isepwYwUaViNnpo7Och8CVch K9fnFYWWjPss11tdgDebpVqd4gTH/A6kenNXJRE/d8sMTjBn0cMDVP1t6IyC5uvNzc2k JAJ/Wt6iIkFIwJUrVc7qp/kHcjpEcSDxgtPM2aFEPyfHfFfX6X6gzrtAScls9y+oO3jn bxgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=SVlyh3Vrie0Kx+2EksxkfyjIqoXsfTo5xYzOlpX2AYE=; b=jKxk/HjZG4r8r+uhXNvSdNO9jFM8PI+AxsQD7ef96ttyOvEluik18vJtzgWP1PH+sh o2SwZdPpai2jozzvBFOSg062fQvVkfQPiQrsxVHswJhAJHYiBlhPjvu1TuPf3GHivic5 TpjvMeenlc0FKHqMjmxo6YSP9lovxuWjrZZbkrQUdNbaLlBJfOrsaRdZGEQhy0WahBNX 3D9fbcGTUEkUdZIJDH0MH3HHQExPe76ffOeshcJEhrW9QnAakBF+zCByCs15NhL5utza dbE3ycQlhtCsFueuqJOgUR1S1YN429lKsimLz9EB7qpN0ckzXjk7LS2ZuT5mI4Er7cpu S17Q== X-Gm-Message-State: AOAM530FZtAa5u9Lvdy5MjykIT8vzGVMMn+6NiEkg1wrU6UolIkg5T21 VtXkD64AMnlzJXEu5hm7q/079xOIKKc= X-Google-Smtp-Source: ABdhPJx3pGKdZgYWc5m+HdesYFuqs2R4W7AdRWeD2NrJeY6sNE/7Nm9icDFACvX9lVRGs1AqDhCUvQ== X-Received: by 2002:a63:ab4a:: with SMTP id k10mr5323129pgp.105.1641931070859; Tue, 11 Jan 2022 11:57:50 -0800 (PST) Received: from nereus.hsd1.or.comcast.net ([2601:1c0:6000:1b20:9b84:60d5:95c9:ae8b]) by smtp.gmail.com with ESMTPSA id b4sm12029319pfl.101.2022.01.11.11.57.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jan 2022 11:57:50 -0800 (PST) From: Tim Orling X-Google-Original-From: Tim Orling To: docs@lists.yoctoproject.org Cc: Tim Orling Subject: [PATCH 1/3] ref-manual/variables.rst: add SETUPTOOLS_SETUP_PATH Date: Tue, 11 Jan 2022 11:57:40 -0800 Message-Id: <20220111195742.1921572-2-tim.orling@konsulko.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220111195742.1921572-1-tim.orling@konsulko.com> References: <20220111195742.1921572-1-tim.orling@konsulko.com> 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 ; Tue, 11 Jan 2022 19:57:52 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/2383 Add SETUPTOOLS_SETUP_PATH for setuptools3 class. Deprecate DISTUTILS_SETUP_PATH and drop mention of ref-classes-setuptools3 as that class has moved to new variable. [YOCTO #14610] Signed-off-by: Tim Orling --- documentation/ref-manual/variables.rst | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-) diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index be496161b..83ccda830 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -1985,8 +1985,7 @@ system and gives an overview of their function and contents. :term:`DISTUTILS_SETUP_PATH` When used by recipes that inherit the - :ref:`distutils3 ` or - :ref:`setuptools3 ` class, this variable should + :ref:`distutils3 ` class, this variable should be used to specify the directory in which the ``setup.py`` file is located if it is not at the root of the source tree (as specified by :term:`S`). For example, in a recipe where the sources are fetched from @@ -1995,6 +1994,13 @@ system and gives an overview of their function and contents. S = "${WORKDIR}/git" DISTUTILS_SETUP_PATH = "${S}/python/pythonmodule" + + .. note:: + + ``distutils`` has been deprecated in Python 3.10 and will be removed + in Python 3.12. For this reason, the use of :ref:`distutils3 ` + is deprecated. Instead use :ref:`setuptools3 ` and the + :term:`SETUPTOOLS_SETUP_PATH` variable. :term:`DL_DIR` The central download directory used by the build process to store @@ -6841,6 +6847,18 @@ system and gives an overview of their function and contents. EXTRA_IMAGE_FEATURES += "read-only-rootfs" + :term:`SETUPTOOLS_SETUP_PATH` + When used by recipes that inherit the + :ref:`setuptools3 ` class, this variable should + be used to specify the directory in which the ``setup.py`` file is + located if it is not at the root of the source tree (as specified by + :term:`S`). For example, in a recipe where the sources are fetched from + a Git repository and ``setup.py`` is in a ``python/pythonmodule`` + subdirectory, you would have this:: + + S = "${WORKDIR}/git" + SETUPTOOLS_SETUP_PATH = "${S}/python/pythonmodule" + :term:`SIGGEN_EXCLUDE_SAFE_RECIPE_DEPS` A list of recipe dependencies that should not be used to determine signatures of tasks from one recipe when they depend on tasks from From patchwork Tue Jan 11 19:57:41 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 2313 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 DB2BBC433F5 for ; Tue, 11 Jan 2022 19:57:53 +0000 (UTC) Received: from mail-pl1-f169.google.com (mail-pl1-f169.google.com [209.85.214.169]) by mx.groups.io with SMTP id smtpd.web12.13180.1641931073301884976 for ; Tue, 11 Jan 2022 11:57:53 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=TmlBb++8; spf=pass (domain: gmail.com, ip: 209.85.214.169, mailfrom: ticotimo@gmail.com) Received: by mail-pl1-f169.google.com with SMTP id w7so370295plp.13 for ; Tue, 11 Jan 2022 11:57:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=1eu1B8b3w5Wv8E13zlyYCWHJcsQ5g0Ni3SXFUqQScI4=; b=TmlBb++8SXBsQEjkYHZGH+qg8li59jCPlithDNP0IeD6h17/G1wCazTvdnL39f1HAT zoqAnIHQKH6sA4MjpvmVZq+7SexuVp8uQ/0QmnA3116DUnh9L88vWTypjJncX+c1iBQy YGnIvsG+FgT4wOBiuIKD3pLAIrsv0xIg00MEbQhhC1Uyaw61rw28wuUR9IgKmJE4XEe4 pXYLP8q3aDSg0NVp8FwJxCqSXW2PS+LcaFfDkvCa1Igdj+dGsG81OVtamJNS1qxXTl1P 4E4jhkdAus2DZZoh3oIguFBXLu6IyexqJzsKLQScHvLK+SnAWj5Rc7FsTYEmFeQ3rTDw vHhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=1eu1B8b3w5Wv8E13zlyYCWHJcsQ5g0Ni3SXFUqQScI4=; b=qBQD8dpbBHApS1nWRAHoY4uiumNsJE5YNRq0KOXUyVySZhrFEZuAV1ecNK8wPNij3l YoDqLNc4CTz93J/qy+GApCr3OAedxWyYt0ljaFRJuDhIJzK0xjD3FWo53i0fTLNAnhuV YRZtbB6S2jRTPrmKbA7oDZ4OKydsoozvx0LzI37Pd2afi8Pxdw301/rNA+rv649SGHhK KGS6DhwFQzT4o5vutktz0AygBt8Zg5opZgTfHdOKNLtNR7Gb57CbwdIOzOiq40dTJiMZ Y3fDkfsHHiJALrEWcaEV8c9RapZpDadR09lYjJDlMREiEbM9/ub/dxINNigZNaMVFvoY mFZw== X-Gm-Message-State: AOAM5325ZYMdPHrL7ldkam+bZjKafZ0CjyxKcyXkj8KMTI6bgkCl4TRQ 1UA+4nINr1gzYIUiPkhb45p4ATuSa6A= X-Google-Smtp-Source: ABdhPJzx3om4acHNqqEciFUmAVAnmi7p4sYV3oKkaEVGKCQzsKd3ytfXJzvNyrGQDuXRyFvfJHfSeQ== X-Received: by 2002:a63:470a:: with SMTP id u10mr5449323pga.346.1641931072629; Tue, 11 Jan 2022 11:57:52 -0800 (PST) Received: from nereus.hsd1.or.comcast.net ([2601:1c0:6000:1b20:9b84:60d5:95c9:ae8b]) by smtp.gmail.com with ESMTPSA id b4sm12029319pfl.101.2022.01.11.11.57.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jan 2022 11:57:52 -0800 (PST) From: Tim Orling X-Google-Original-From: Tim Orling To: docs@lists.yoctoproject.org Cc: Tim Orling Subject: [PATCH 2/3] ref-manual/variables.rst: add SETUPTOOLS_*_ARGS Date: Tue, 11 Jan 2022 11:57:41 -0800 Message-Id: <20220111195742.1921572-3-tim.orling@konsulko.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220111195742.1921572-1-tim.orling@konsulko.com> References: <20220111195742.1921572-1-tim.orling@konsulko.com> 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 ; Tue, 11 Jan 2022 19:57:53 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/2384 Add SETUPTOOLS_BUILD_ARGS variable which can be used to pass additional arguments to `setup.py build`. Add SETUPTOOLS_INSTALL_ARGS variable which can be used to pass additional arguments to `setup.py install`. [YOCTO #14610] Signed-off-by: Tim Orling --- documentation/ref-manual/variables.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst index 83ccda830..3011c1c83 100644 --- a/documentation/ref-manual/variables.rst +++ b/documentation/ref-manual/variables.rst @@ -6847,6 +6847,25 @@ system and gives an overview of their function and contents. EXTRA_IMAGE_FEATURES += "read-only-rootfs" + :term:`SETUPTOOLS_BUILD_ARGS` + When used by recipes that inherit the + :ref:`setuptools3 ` class, this variable can + be used to specify additional arguments to be passed to ``setup.py build`` + in the ``setuptools3_do_compile()`` task. By default, this variable is unset:: + + SETUPTOOLS_BUILD_ARGS ?= "" + + :term:`SETUPTOOLS_INSTALL_ARGS` + When used by recipes that inherit the + :ref:`setuptools3 ` class, this variable can + be used to specify additional arguments to be passed to ``setup.py install`` + in the ``setuptools3_do_install()`` task. By default, this variable is:: + + SETUPTOOLS_INSTALL_ARGS ?= "--root=${D} \ + --prefix=${prefix} \ + --install-lib=${PYTHON_SITEPACKAGES_DIR} \ + --install-data=${datadir}" + :term:`SETUPTOOLS_SETUP_PATH` When used by recipes that inherit the :ref:`setuptools3 ` class, this variable should From patchwork Tue Jan 11 19:57:42 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tim Orling X-Patchwork-Id: 2314 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 C6B70C433FE for ; Tue, 11 Jan 2022 19:57:55 +0000 (UTC) Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) by mx.groups.io with SMTP id smtpd.web11.13276.1641931075005529515 for ; Tue, 11 Jan 2022 11:57:55 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@gmail.com header.s=20210112 header.b=gTwzK1F/; spf=pass (domain: gmail.com, ip: 209.85.216.53, mailfrom: ticotimo@gmail.com) Received: by mail-pj1-f53.google.com with SMTP id rj2-20020a17090b3e8200b001b1944bad25so765145pjb.5 for ; Tue, 11 Jan 2022 11:57:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=51v2EJqexhGSHH01BZtisY43z/bUXwb2tP3rL/8uJWY=; b=gTwzK1F/ibEp1SOQ0FyYjjkfjRy1wQbI0dXwZhLTXjBBDBsNYo99+KN1fC+r4encK/ 4CNrt1Wdr/fRrFl3bFbu590bxeKeFVfQ0o7Y5aVtGEJK5Cq/TUXs30jmbZATsZTVgZSB CGjiI+CgXBgP4t+g6s5nneUZeRQAjmt3Fb+s7voOdF4h3caACNNf3CzFmKh45mj6rEWn aHZj7mFY+l/hUnO3hfAcvxAvQiJ2OUHLItT/TfLgy3x10jf3Oz0D8KAlKnFP9dDvnf65 kKteYrMuxWLCSFw621ESQRBoX0tFgAE0xF+80efuhari+BmDMeFjnoEbryuNpQdMcLbp mVgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=51v2EJqexhGSHH01BZtisY43z/bUXwb2tP3rL/8uJWY=; b=M6kBZoIPudPRKHe4Jc5U2S/zNke5EwbUC+kDY7XtyoLCVyIX99bdWLLZkCP/p95bAB W4ofEGNBgfBju9FxiiRx+DeqB3wzLtPWbld1xYGsG5nyVoEVMxOFFAQBAXcQQ9uK7k+I Tswuxpq57bd7wkfE1Hfb7Ryakg5o64E3RR/HpOzayrUgc3P4NWq/gjv324LtgAXECGA3 N1epeaK7jVY7+z0FlZwAt8yLBeLiC35zncsC2SCr3uHGeMiICIE61yI/XDJwtz6HO5gu +Z7cU/etxpKkibhIvkxAVSk2pFmQFJVyHm/FDpKIJuf9zKmGnuzq0fTZDvXLEq5od0cM aVTQ== X-Gm-Message-State: AOAM5328s2LaSUmIHJOU23dT/5sSD86ZpOx5cOeAgprQNvQFISI15dTU C8do+TFn1aXAGGONPgmGe6qUnflb8hk= X-Google-Smtp-Source: ABdhPJy1xrcyhLvxXNvUz9PO/V2qNKBJ3AxbyV0noL+FVpBudcHi2DGwczb/CVmI+fROUCnY05KGrw== X-Received: by 2002:a63:6f07:: with SMTP id k7mr5312034pgc.574.1641931074175; Tue, 11 Jan 2022 11:57:54 -0800 (PST) Received: from nereus.hsd1.or.comcast.net ([2601:1c0:6000:1b20:9b84:60d5:95c9:ae8b]) by smtp.gmail.com with ESMTPSA id b4sm12029319pfl.101.2022.01.11.11.57.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Jan 2022 11:57:53 -0800 (PST) From: Tim Orling X-Google-Original-From: Tim Orling To: docs@lists.yoctoproject.org Cc: Tim Orling Subject: [PATCH 3/3] ref-manual/classes.rst: add setuptools3-base Date: Tue, 11 Jan 2022 11:57:42 -0800 Message-Id: <20220111195742.1921572-4-tim.orling@konsulko.com> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20220111195742.1921572-1-tim.orling@konsulko.com> References: <20220111195742.1921572-1-tim.orling@konsulko.com> 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 ; Tue, 11 Jan 2022 19:57:55 -0000 X-Groupsio-URL: https://lists.yoctoproject.org/g/docs/message/2385 Add setuptools3-base class Deprecate distutils3* classes. [YOCTO #14610] Signed-off-by: Tim Orling --- documentation/ref-manual/classes.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst index 99d9a7a3e..41360c965 100644 --- a/documentation/ref-manual/classes.rst +++ b/documentation/ref-manual/classes.rst @@ -515,6 +515,14 @@ used. - Extensions that use ``distutils``-based build systems require the ``distutils`` class in their recipes. + .. note:: + + ``distutils`` has been deprecated in Python 3.10 and will be removed + in Python 3.12. For this reason the ``distutils3*`` classes are now + deprecated and will be removed from core in the near future. Instead, + use the ``setuptools3*`` classes. + + - Extensions that use build systems based on ``setuptools3`` require the :ref:`setuptools3 ` class in their recipes. @@ -2376,6 +2384,17 @@ The ``setuptools3`` class supports Python version 3.x extensions that use build systems based on ``setuptools``. If your recipe uses these build systems, the recipe needs to inherit the ``setuptools3`` class. +.. _ref-classes-setuptools3-base: + +``setuptools3-base.bbclass`` +============================ + +The ``setuptools3-base`` class provides a reusable base for other classes +that support building Python3 version 3.x extensions. If you need +functionality that is not provided by the ``setuptools3`` class, you may +want to ``inherit setuptools3-base``. Some recipes do not need the tasks +in the ``setuptools3`` class and inherit this class instead. + .. _ref-classes-sign_rpm: ``sign_rpm.bbclass``