From patchwork Mon Jul 11 23:53:26 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Vivien Kraus X-Patchwork-Id: 40627 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id B282927BBEA; Tue, 12 Jul 2022 00:54:25 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,SPF_HELO_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 24D6C27BBE9 for ; Tue, 12 Jul 2022 00:54:25 +0100 (BST) Received: from localhost ([::1]:54298 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oB3EO-00076P-Au for patchwork@mira.cbaines.net; Mon, 11 Jul 2022 19:54:24 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43842) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oB3E5-000765-IN for guix-patches@gnu.org; Mon, 11 Jul 2022 19:54:06 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:47315) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oB3E1-0004wl-Vy for guix-patches@gnu.org; Mon, 11 Jul 2022 19:54:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oB3E1-0007DY-Tq for guix-patches@gnu.org; Mon, 11 Jul 2022 19:54:01 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#56504] [PATCH] Mingw support for zlib Resent-From: Vivien Kraus Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 11 Jul 2022 23:54:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 56504 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 56504@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.165758363327725 (code B ref -1); Mon, 11 Jul 2022 23:54:01 +0000 Received: (at submit) by debbugs.gnu.org; 11 Jul 2022 23:53:53 +0000 Received: from localhost ([127.0.0.1]:41212 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oB3Ds-0007D7-V1 for submit@debbugs.gnu.org; Mon, 11 Jul 2022 19:53:53 -0400 Received: from lists.gnu.org ([209.51.188.17]:52044) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oB3Dr-0007Cz-I6 for submit@debbugs.gnu.org; Mon, 11 Jul 2022 19:53:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43792) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oB3Do-00073Y-Uk for guix-patches@gnu.org; Mon, 11 Jul 2022 19:53:49 -0400 Received: from planete-kraus.eu ([2a00:5881:4008:2810::309]:42542) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_CHACHA20_POLY1305:256) (Exim 4.90_1) (envelope-from ) id 1oB3Di-0004uG-NT for guix-patches@gnu.org; Mon, 11 Jul 2022 19:53:46 -0400 Received: from planete-kraus.eu (localhost.lan [127.0.0.1]) by planete-kraus.eu (OpenSMTPD) with ESMTP id eb65ab18 for ; Mon, 11 Jul 2022 23:53:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=planete-kraus.eu; h= message-id:subject:from:to:date:content-type:mime-version; s= dkim; bh=1KCtiv7F/JEos3Bngy0rL2XNcV0=; b=dTyqTdGaBivGGfmGEOwzARe KzneCLbxyOm1wuZQ74seHTPRkPQ5ive4Nwd4FugdVLboX3Dvess0pnrg5xwaz2OT zC3wxGhYwW7+E3d3JJ71rboC8mGFSPQNQ0M487IAKX73l64CvXqgUEEqDNLRWjeT QE0G7CGDMWp0WtOK6NOU= Received: by planete-kraus.eu (OpenSMTPD) with ESMTPSA id 357b9666 (TLSv1.3:AEAD-CHACHA20-POLY1305-SHA256:256:NO) for ; Mon, 11 Jul 2022 23:53:27 +0000 (UTC) Message-ID: <9418154f0a4f8c2b06b1b5bbce8df570ec4028de.camel@planete-kraus.eu> Date: Tue, 12 Jul 2022 01:53:26 +0200 User-Agent: Evolution 3.42.1 MIME-Version: 1.0 Received-SPF: pass client-ip=2a00:5881:4008:2810::309; envelope-from=vivien@planete-kraus.eu; helo=planete-kraus.eu 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, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 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+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" Reply-to: Vivien Kraus X-ACL-Warn: , Vivien Kraus via Guix-patches X-Patchwork-Original-From: Vivien Kraus via Guix-patches via From: Vivien Kraus X-getmail-retrieved-from-mailbox: Patches Dear guix, zlib can be cross-compiled to mingw. It can be done by not running configure, but instead using the win32/Makefile.gcc makefile, with some tweaks for guix. I think it should not rebuild anything, but I’m not sure. What do you think? Best regards, Vivien From 956c0491ea489ceaafe951f40f49efe8733b2563 Mon Sep 17 00:00:00 2001 From: Vivien Kraus Date: Sat, 25 Jun 2022 16:33:44 +0200 Subject: [PATCH] gnu: zlib: Support mingw cross-compilation. * gnu/packages/compression.scm (zlib): Only run configure if not mingw. --- gnu/packages/compression.scm | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index d5bd3abf0f..5bce852523 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -125,8 +125,29 @@ (define-public zlib ,@(if (%current-target-system) `((setenv "CHOST" ,(%current-target-system))) '()) - (invoke "./configure" - (string-append "--prefix=" out))))) + ,@(if (and (%current-target-system) + (string-suffix? "-w64-mingw32" (%current-target-system))) + `((substitute* "win32/Makefile.gcc" + (("PREFIX =") + (string-append "PREFIX = " ,(%current-target-system) "-")) + (("prefix \\?= /usr/local") + (string-append "prefix ?= " out)) + (("# BINARY_PATH, INCLUDE_PATH and LIBRARY_PATH must be set.") + "\ +BINARY_PATH = $(prefix)/bin +INCLUDE_PATH = $(prefix)/include +LIBRARY_PATH = $(prefix)/lib")) + (rename-file "win32/Makefile.gcc" "Makefile")) + `((invoke "./configure" + (string-append "--prefix=" out))))))) + ,@(if (and (%current-target-system) + (string-suffix? "-mingw32" (%current-target-system))) + `(add-after 'install 'install-mingw-shared + (lambda* (#:key make-flags #:allow-other-keys) + (apply invoke "make" + (append make-flags + '("install" "SHARED_MODE=1"))))) + '()) (add-after 'install 'move-static-library (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) base-commit: 6ffb3ef4d61e47c39b9ee4d1dceeaeb9360094c0 prerequisite-patch-id: cb331cf7152091377b37baa313ba3a5a87b3143f prerequisite-patch-id: 92209f66b90c79d7bf060944906c869625b407dd prerequisite-patch-id: 5e408465a1d766662ee1c33a4b807a779a4c664b prerequisite-patch-id: eb8a798c6dc097419cb5bdf51641e3169e681e2e prerequisite-patch-id: ea2b7638049e23e80fe2716e78900ea14cf922cd prerequisite-patch-id: ca6164abf3d0287d49f726b3ae92b75ef94a8103 prerequisite-patch-id: 3265f90d5769feeed4b62de20c4f69c5a5e7a81d prerequisite-patch-id: f85ec750b9f798b9e41bb00d7edb82d421353b33 prerequisite-patch-id: 6b60605cbf22b6ad4eff2f0da74a74c30fe2a9c8 prerequisite-patch-id: d6051ad60e172c8f11ef40772e502d86f4333acb prerequisite-patch-id: 1dbff988e2360cb1ee029f64f300ce44c11d76e9 prerequisite-patch-id: 66ad9148ea45252dbef3037bd7a50a4ec32e2b5b prerequisite-patch-id: 0c3aa04452a6a1d3f56951aa177a174a032ff299 prerequisite-patch-id: 42948a36a16f9824c17b8e7b7294ea33e81eb238 prerequisite-patch-id: b1b2b2215d1a71bfac6239766067c34cfbb70ebb prerequisite-patch-id: 91f834615aed988f8f2d9b1655721debd65e0cdf prerequisite-patch-id: 4a5b6330f14470cc7688ba1ffabd38414d3d9860 prerequisite-patch-id: 86c9604f41fa8d1e0a02fdd1a0ac3fbed3ac37e2 prerequisite-patch-id: 4551ff825ddc78669180eaa1826e8b581e2726f7 prerequisite-patch-id: 0c89c6e62602aded309ea47143fea68aed8c1617 prerequisite-patch-id: 4ad64d116fb8674505d7411a296137046096c60c prerequisite-patch-id: 9939453dfc6bcac6f98aafdf60812b2bf884fb3a prerequisite-patch-id: 8c206238029371a28c49cd914d7aae780114b10c prerequisite-patch-id: f95b376c7e13855b8d3784a6cefc4800b945d502 prerequisite-patch-id: b39addb89db4cb5f5727a492411eae5ace52ad8b prerequisite-patch-id: d9bc7451845593d839c8921801d3db8ab58f14ad prerequisite-patch-id: 836dc57a4ee4aa788d05eed45b3804c139e4f995 prerequisite-patch-id: 0b4c563142f8f5ae6ca10e34b814266310be2686 -- 2.36.1