From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id iMq/JCixPGCdFwAA0tVLHw (envelope-from ) for ; Mon, 01 Mar 2021 09:17:28 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:bcc0::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id wCmWICixPGB8HwAAB5/wlQ (envelope-from ) for ; Mon, 01 Mar 2021 09:17:28 +0000 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 978FD27812 for ; Mon, 1 Mar 2021 10:17:27 +0100 (CET) Received: from localhost ([::1]:42698 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lGegA-0001ug-RJ for larch@yhetil.org; Mon, 01 Mar 2021 04:17:26 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54956) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lGefm-0001o6-Bp for guix-patches@gnu.org; Mon, 01 Mar 2021 04:17:02 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:36552) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lGefm-0004fn-3i for guix-patches@gnu.org; Mon, 01 Mar 2021 04:17:02 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lGefl-0003PE-Vl for guix-patches@gnu.org; Mon, 01 Mar 2021 04:17:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#46806] [PATCH] gnu: ocaml-4.07: Bootstrap. Resent-From: pukkamustard Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 01 Mar 2021 09:17:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46806 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Julien Lepiller Cc: 46806@debbugs.gnu.org Received: via spool by 46806-submit@debbugs.gnu.org id=B46806.161459018613034 (code B ref 46806); Mon, 01 Mar 2021 09:17:01 +0000 Received: (at 46806) by debbugs.gnu.org; 1 Mar 2021 09:16:26 +0000 Received: from localhost ([127.0.0.1]:48098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lGefB-0003O8-GI for submit@debbugs.gnu.org; Mon, 01 Mar 2021 04:16:26 -0500 Received: from mout02.posteo.de ([185.67.36.66]:44983) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lGef9-0003Nq-DW for 46806@debbugs.gnu.org; Mon, 01 Mar 2021 04:16:24 -0500 Received: from submission (posteo.de [89.146.220.130]) by mout02.posteo.de (Postfix) with ESMTPS id ABC5F2400FC for <46806@debbugs.gnu.org>; Mon, 1 Mar 2021 10:16:16 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.net; s=2017; t=1614590176; bh=Yz8PoYk9s6ZoeJT6CKHtPVgRn7m/mROxcVIvBhx1eZo=; h=From:To:Cc:Subject:Date:From; b=Ifi1KYHWHwRbnUsL6Sy716BINmimId3+s/g/ZAPWjMwRe88Eki/w4RpdnhxiCBbH8 eqmpkfNjIvZK2Sx6Zhjtv4YhekCn9zX43EuAy8hD/cDLk8RZ3uETeVVdqjOFMpUgqA dRN9YwquDJdc78uOrNbKp9+8rORYrLqFTs9QsHfzmQIV+oVfeFPCt4AW6WP4alP0z9 ej+V2LiGQlXAIVrqNHEihXU7eiTKz8TQ2yPH43U50zYo6NuOT/y5C1wuchF5HgIJ+C AReTtNkPGC4CF08TJpfNl7OJpVA+kt3enVp28JAPvJc6+eaS+G3vBWPArB4Bhxa9gZ mX86BidWCl41w== Received: from customer (localhost [127.0.0.1]) by submission (posteo.de) with ESMTPSA id 4Dpvl34J57z6tmc; Mon, 1 Mar 2021 10:16:15 +0100 (CET) References: <20210227001244.17cc3833@tachikoma.lepiller.eu> <86r1l0ft2q.fsf@posteo.net> <66443FC4-A5EB-44F2-BCA3-E35962DC2FE0@lepiller.eu> User-agent: mu4e 1.4.14; emacs 27.1 From: pukkamustard In-reply-to: <66443FC4-A5EB-44F2-BCA3-E35962DC2FE0@lepiller.eu> Date: Mon, 01 Mar 2021 10:16:14 +0100 Message-ID: <86lfb7fd41.fsf@posteo.net> MIME-Version: 1.0 Content-Type: text/plain; format=flowed 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" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1614590247; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:in-reply-to:in-reply-to:references:references: list-id:list-help:list-unsubscribe:list-subscribe:list-post: dkim-signature; bh=OdETeew9i5civuC42WMBGppZLVjXNDyzf1/NWryinzY=; b=BQn1JBeRQe0vK+pL+SPEwNlwSLsVt0w/LBnB+mH0sGLr4aq8cm0+pLGKNh56N/tL/BL6aW MQvyuLmbPy+sKgphkZu5ftpJ+yJd1VEAkB+FyjNntpiUkeP6q4bNurUcBcLUDVpVfRK5Ur DTO2piklZ5Dt6b1QhyczEw7klPMEQN2UpQTkoild5gFvIo/NJllR0fTn6A1CUkWZ+Liuox nMz7iiOJSHLVvnklyJPFADeQY9RR46dAjZz+xnyC8BQFHWNFiSbKNkVZfuFBtXUXTavBpf pTA9X8bbA0bkz+L+oNi0Zl58Xie1E8ss0yqCSPqNlYmU/l8VASMh9WRgA+MNIw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1614590247; a=rsa-sha256; cv=none; b=VqEhyCR76ok/XxRHLF4T0flBsJXQc98IYmVC0LDACdfILS0uQcTI0qzCXyOovVhjFfozyZ 0YJWUcn8U45YqwlpMRQTGekFBBmw5x0gmCYuThRzBqmXiL9c43o4bIuyM+WJvcafjztqyo jBVTiMsBt+sqAbNCeQn33o8M/8cZfT6JP97hdjRzUfone94e+2cX0VcsJWos8TKWTv2qvE 20IpFAYk9B+g+SmTUEEf7z6NlX0s5diujExe6srdo0ME3O5wwy7ywuHBEWm/iZFpv3cbz4 DgyHx4c6wHGjxb3JIjMkUHTNyCjfj1ZA7v6AfrTR7yM5+qPQlaj9XLFw6RGwAQ== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=Ifi1KYHW; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Spam-Score: -1.27 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=posteo.net header.s=2017 header.b=Ifi1KYHW; dmarc=fail reason="SPF not aligned (strict)" header.from=posteo.net (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Migadu-Queue-Id: 978FD27812 X-Spam-Score: -1.27 X-Migadu-Scanner: scn0.migadu.com X-TUID: i0XdzPrQlCq2 I managed to build camlboot and ocaml@4.07 with your patches. > Would be fantastic if you could report build time for camlboot > too :). Build time (on a quad-core i7 laptop): ``` $ time ./pre-inst-env guix build camlboot --no-offload . . . successfully built /gnu/store/ddi5n28hsrgvb89r8vjs0rfvapxfbaj2-camlboot-0.0.0-0.506280c.drv /gnu/store/79bqayhrc6qfr2k7pfk7fn6lim0f8cfx-camlboot-0.0.0-0.506280c real 322m35.119s user 0m1.523s sys 0m0.140s ``` ocaml@4.07 with your patches applied: ``` $ time ./pre-inst-env guix build ocaml@4.07 --no-offload successfully built /gnu/store/sdxybpxzjhib5ijn3fx3r29ycp5vvafd-ocaml-4.07.1.drv /gnu/store/cniid9xi3dck7kdpfm77h56h1s0701fm-ocaml-4.07.1 real 17m52.923s user 0m9.268s sys 0m1.013s ``` ocaml@4.07 at master: ``` $ time ./pre-inst-env guix build ocaml@4.07 --no-offload --check successfully built /gnu/store/v599h0bhpyh2rq4nrnqqf56lwbsf0f71-ocaml-4.07.1.drv successfully built /gnu/store/v599h0bhpyh2rq4nrnqqf56lwbsf0f71-ocaml-4.07.1.drv /gnu/store/s7j0vl88zakkdcyvw1jw8cypfzi6ljnd-ocaml-4.07.1 real 21m44.000s user 0m14.546s sys 0m1.217s ``` > The result should be almost identical to our current ocaml-4.07, > though there are some due to different output directory being > embedded. Checked some random files in both ocaml's with diffoscope and can confirm that differences seem to be mostly different output directories. Haven't run diffoscope on everything as that would take quite some time... -pukkamustard >> >>Fantastic! Thank you and thanks to the camlboot project! I will >>try and >>build this tonight. >> >>Julien Lepiller writes: >> >>> Hi Guix! >>> >>> This small series adds camlboot, a project to reimplement a >>> bootstrap >>> for OCaml, which lets us remove the pre-built >>> boot/ocaml{c,lex} >>> :) >>> >>> The first patch builds the bootstraped ocamlc and ocamllex. >>> This >>> takes >>> around 4 hours to build. The second patch rebuilds them using >>> the source >>> code for ocaml 4.07.1, instead of the modified sources used in >>> camlboot, and reuse them to run the main Makefile (make >>> world.opt). >>> >>> As a result, we have identical files for this bootstrap and >>> the >>> unbootstrapped OCaml (up to output store paths and hash of >>> some >>> files >>> that get embedded in native files, which differ because of the >>> different output path).