From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp11.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id QNnDBADNxGO2zwAAbAwnHQ (envelope-from ) for ; Mon, 16 Jan 2023 05:05:20 +0100 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp11.migadu.com with LMTPS id 8MK7BADNxGPORQEA9RJhRA (envelope-from ) for ; Mon, 16 Jan 2023 05:05:20 +0100 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id B81251B1F8 for ; Mon, 16 Jan 2023 05:05:19 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pHGkA-0002Bq-Kc; Sun, 15 Jan 2023 23:05:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pHGk6-00024O-PG for guix-patches@gnu.org; Sun, 15 Jan 2023 23:05:08 -0500 Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pHGk2-0002Mb-SZ for guix-patches@gnu.org; Sun, 15 Jan 2023 23:05:04 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pHGk2-0002o5-MZ for guix-patches@gnu.org; Sun, 15 Jan 2023 23:05:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#60847] [PATCH 0/5] Enable cross-compilation for the pyproject-build-system Resent-From: Maxim Cournoyer Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 16 Jan 2023 04:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 60847 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 60847@debbugs.gnu.org Cc: Maxim Cournoyer X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.167384185610722 (code B ref -1); Mon, 16 Jan 2023 04:05:02 +0000 Received: (at submit) by debbugs.gnu.org; 16 Jan 2023 04:04:16 +0000 Received: from localhost ([127.0.0.1]:60110 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pHGjI-0002mr-7H for submit@debbugs.gnu.org; Sun, 15 Jan 2023 23:04:16 -0500 Received: from lists.gnu.org ([209.51.188.17]:32872) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pHGjG-0002mk-IT for submit@debbugs.gnu.org; Sun, 15 Jan 2023 23:04:15 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pHGjG-0001x6-9c for guix-patches@gnu.org; Sun, 15 Jan 2023 23:04:14 -0500 Received: from mail-qv1-xf2b.google.com ([2607:f8b0:4864:20::f2b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pHGjE-0002IG-Kd for guix-patches@gnu.org; Sun, 15 Jan 2023 23:04:13 -0500 Received: by mail-qv1-xf2b.google.com with SMTP id h10so18891993qvq.7 for ; Sun, 15 Jan 2023 20:04:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=0/gwamCB0n8pU62hU32wtr7xNnAi86qaUQ1NZsc6BQI=; b=Pc9Tq95hGfCpKBERBddGK75VbYoaRHBGE+WPV2dT7hfLK8FjyxnPu+w8RK/zpWGUlw 8xZYhO9g51XomU8ButZC1YZAP60KoJfxUwPoibgrXOKtUZoLQy9qZc7a2ewCIl95wvbe iX+EE+VWYDDs54pXnxMBJ8wedF1t//D31u7H1AKCpJeQsw0KIXTZ/vqCQq0RY4zfe47D qJKUMMpxapVWOOKImxz6Ou+ewCAFqnZ4capMg1lXWi7ffHKIStJyV1Ogngqoram9g8Tf XLVcE/beLcYKWYqDh2gV8kUVm3qPZEk7PyRGhtIM/FX/rfMiZdfmTfYPaCW2Sc53ghsw /Tqw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=0/gwamCB0n8pU62hU32wtr7xNnAi86qaUQ1NZsc6BQI=; b=qYOTc1vopN58prCzvpy0FuQ4+Duqva7vDKmEBrAGzbM8GgXbrf+f40wjxrlIhzewKE lSRvOnOb/UxrRh/gOHs8hU99j1K98NNfVbj0w398zJA+HIdCeavSxMABZA5/6bINw7mN aJyOSOHK1/Efw8P5VU0uNYlASPgEm704QQp9wVb3eBBWPbXZjzLs0snJSwr7biOZweeJ hWHYBwrUzZedsNqPUCS5Te1ns0nRfaSREl3hqBN/sgckCSlbWMk6AMHWSqT/cVBcShND 6zVu1rc/MyKFVy6WWR606atZKiicQZyu6x1urJmC+4MyrWBMKUgTS0ZM6K8lfKgCiOsp qSJg== X-Gm-Message-State: AFqh2kqZfJ6tvWog/P3Ti1ukrKxr7KkWuOpePAstGD/Xm4Q4HQLQfasz ngkeYQKFONUaZ8U36iSvFzICSpHTVsdzTV9+ X-Google-Smtp-Source: AMrXdXuMSb6TzbMb3YKSsNPR7I71hi0WSdWhmJKMmiFvvcNFLtxAqDtPdpDJCBM8BPvBgQA2/eU9zg== X-Received: by 2002:a05:6214:2d13:b0:534:80c0:6b64 with SMTP id mz19-20020a0562142d1300b0053480c06b64mr15136175qvb.1.1673841851277; Sun, 15 Jan 2023 20:04:11 -0800 (PST) Received: from localhost.localdomain (dsl-10-130-209.b2b2c.ca. [72.10.130.209]) by smtp.gmail.com with ESMTPSA id f23-20020ac84657000000b003b62d1ccd85sm1919175qto.40.2023.01.15.20.04.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 15 Jan 2023 20:04:10 -0800 (PST) From: Maxim Cournoyer Date: Sun, 15 Jan 2023 23:04:02 -0500 Message-Id: <20230116040402.7350-1-maxim.cournoyer@gmail.com> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::f2b; envelope-from=maxim.cournoyer@gmail.com; helo=mail-qv1-xf2b.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN ARC-Seal: i=1; s=key1; d=yhetil.org; t=1673841919; a=rsa-sha256; cv=none; b=FwRqxKjihAm5b0IZvXJMGosBTP+w7cWQhuHyjNWPYbig/3zHtIHorNLK7emP2/FmGQUdVs Fl27Yak03/RcCDWYBiMwusVyOOMbzukm+nZsI89EdTWL11XjNYdXWPca20UkJ8MxP0cpv1 yQZS7E7svJZA8YjdQK4g333o3DMoZZjTERANPs34LQ21ivPaNW4YpZ0+FS/dJYTQhgK4BC BhJNvkvdNzsNCfsVFW+WaoUEk2tJelQyqPXEvYeO5LhlT0hFdioiLX3JBXvdWtAp02D43Z oT3x89nJCyFFNezaBfXq4wR/cW97gaG0LrU4q/ElGDIDvG8I3foEI6eibqqAcg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=Pc9Tq95h; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1673841919; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:list-id:list-help: list-unsubscribe:list-subscribe:list-post:dkim-signature; bh=0/gwamCB0n8pU62hU32wtr7xNnAi86qaUQ1NZsc6BQI=; b=kHips+dT48ULHvLKaXp/bLU/3ri8dY91Uib1lnLX6xFXsRp1taod8krndMaQn9lmhclrkh FMS6JPi0CwUhNk8baULUDipl56cbyavkL7vi0snLDesi4eqpnQ6cKsTx51VEKV2mZQ/rC2 033GCPq352oyk+uogmYDgM1hZ6qnCB53CTJm1s3UtDoFeQp1ibObAYLdxACfnaNvNHLR0D joNoR4uuFNydjf1tgJRvQ/0pOx2CJYHGUtKAoVryXK9KE1b9dPQJGjhkY3FgMm9uSghBDs ly3CdP0gGMbjlmrj+7ZpZildnUrh7vO275RUz35bEOc/MGZGwulzYCoNl3ofMw== X-Migadu-Spam-Score: -1.72 X-Spam-Score: -1.72 X-Migadu-Queue-Id: B81251B1F8 X-Migadu-Scanner: scn1.migadu.com Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=Pc9Tq95h; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) X-TUID: j+/evNctd896 This change enables cross-compilation for the pyproject-build-system, at the same time paving the way to fix the longstanding bug #25235 (Wrapped python programs get native-inputs in PYTHONPATH), by keeping the distinction between native and host (regular) inputs even when not cross-compiling. A unified builder is used, which departs from the other build systems (which use one builder for the native build and another one for the cross build, where implemented). If this change is accepted, there would be adjustments needed to some of the ~150 Python packages using pyproject (looking for a native inputs now needs to be done using the 'native-inputs' instead of 'inputs' argument even in the native compilation mode). Over time I think it'd make sense to migrate more build systems to use this scheme, since it gives more control as to what inputs go into the wrapper. A demo package, python-pycryptodome, that contains C extensions is adjusted so that it can be cross-compiled using this new build system. Maxim Cournoyer (5): gnu: libtommath: Update to 1.2.0-0.03de03d. gnu: libtomcrypt: Update to 1.18.2-0.29986d0. build: Enable cross-compilation for pyproject-build-system. gnu: python-pycryptodome: Fix build and enable cross-compilation. gnu: python-coverage: Switch to pyproject-build-system. gnu/packages/check.scm | 2 +- gnu/packages/multiprecision.scm | 179 +++++++++----------------- gnu/packages/python-crypto.scm | 20 ++- guix/build-system/pyproject.scm | 115 ++++++++++------- guix/build/pyproject-build-system.scm | 126 ++++++++++++++++-- guix/packages.scm | 46 +++---- 6 files changed, 288 insertions(+), 200 deletions(-) base-commit: 5c921977179489caef4a9e54ada6696fc86d2f0b -- 2.38.1