From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.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 QHYWLnQIuGI21QAAbAwnHQ (envelope-from ) for ; Sun, 26 Jun 2022 09:19:16 +0200 Received: from aspmx1.migadu.com ([2001:41d0:8:6d80::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id 6CHhLXQIuGLNNwEAauVa8A (envelope-from ) for ; Sun, 26 Jun 2022 09:19:16 +0200 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 65FCAD58E for ; Sun, 26 Jun 2022 09:19:16 +0200 (CEST) Received: from localhost ([::1]:35554 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o5MY6-0004NJ-UK for larch@yhetil.org; Sun, 26 Jun 2022 03:19:14 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:35028) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o5MXv-0004Ki-0N for guix-patches@gnu.org; Sun, 26 Jun 2022 03:19:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:52716) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o5MXu-0002hc-NR for guix-patches@gnu.org; Sun, 26 Jun 2022 03:19:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o5MXu-0004bQ-HD for guix-patches@gnu.org; Sun, 26 Jun 2022 03:19:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#55606] [PATCH 2/2] gnu: Add hare. Resent-From: Liliana Marie Prikler Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 26 Jun 2022 07:19:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55606 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Antero Mejr , 55606@debbugs.gnu.org Cc: "\(" , Tobias Geerinckx-Rice , Maxime Devos Received: via spool by 55606-submit@debbugs.gnu.org id=B55606.165622793717680 (code B ref 55606); Sun, 26 Jun 2022 07:19:02 +0000 Received: (at 55606) by debbugs.gnu.org; 26 Jun 2022 07:18:57 +0000 Received: from localhost ([127.0.0.1]:46613 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o5MXo-0004b5-Op for submit@debbugs.gnu.org; Sun, 26 Jun 2022 03:18:57 -0400 Received: from mail-ed1-f67.google.com ([209.85.208.67]:35549) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o5MXk-0004aq-J5 for 55606@debbugs.gnu.org; Sun, 26 Jun 2022 03:18:55 -0400 Received: by mail-ed1-f67.google.com with SMTP id e40so8961936eda.2 for <55606@debbugs.gnu.org>; Sun, 26 Jun 2022 00:18:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:subject:from:to:cc:date:in-reply-to:references :user-agent:mime-version:content-transfer-encoding; bh=AgySP8psQ+QWnw2lYZCyUFJZgSczcgjz8OBVwRB7yYQ=; b=QjJakrWp4SUCVMlz8BF2RkWh37sDK6Khoy3SSNoAZk+iEOutqLq/ygbcQ4DjyUnC1j s9LL14gTkFZx2l3ess5bJoyWlpiX7zLA323Mq5P3JcJZPka5wzB0xsXriP/HuDgJREgF AKZ6tauX8K1U5qYPFrSK0ccMHZmguefe1bvHlMLUcg/IhsXWUMhyAlc275aOjVAxFq+V E35uNzzoUPMIGhGMy3m05s2KzwK/RsXtgeWr1WJLfXzIe3ElhVR5SQ5t9oWySec+5TiD AP6XkSHyYMUguM1RNibvl9OvB9j7vjBbBa1C01ojV4OAqfZcoTUTDAxIVnyw61cllqLi bJPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:user-agent:mime-version:content-transfer-encoding; bh=AgySP8psQ+QWnw2lYZCyUFJZgSczcgjz8OBVwRB7yYQ=; b=jMyy9Ihgiv7zAITjGUVhE+7NkaWbrUBaakQrDUEjOe5L1SAcrZN0GCPITUdSaiD/Nb 3BQs+RU9Acghs6MCp+mTfG1fYLGA3RyD8XCCHTfAz/0W1ulAUYs+eLlIzCUCMkk0xlMu E94JH6C1KBIfRBxyiAE+v0BkORIMlb4qlutaZ/31uSGPzFzTtpT899AkOlWWLn4iRBCW nCejJAT0u+3uAa+WHVuBeVxtOqi6dWDXg+FAbP24ejU6OpFrHBlyWmKhJmEuvYEeyHWT I/c1dxUGxVeRSD7CJYBLFM3PtQqp3pdOroUNRq4/WJPanuyFf6W3fpwG94Zh5YBKuE0r jCRg== X-Gm-Message-State: AJIora+wxLISh8M1LoElTOpFLKnSlocs9jKqIl1d5fFz5GeyHIAsEXmi JIN0Shdfa12VAox59IAhGOY= X-Google-Smtp-Source: AGRyM1sxDsBuyMQh6vhAcj+0z5ClkiykLkFTLrN/7SewIgkZhoFI6Lycx8goEJwHfBWv40B7m7A0vA== X-Received: by 2002:aa7:d94a:0:b0:435:75bf:48a0 with SMTP id l10-20020aa7d94a000000b0043575bf48a0mr9358531eds.187.1656227926548; Sun, 26 Jun 2022 00:18:46 -0700 (PDT) Received: from nijino.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id q10-20020a170906940a00b006fe8bf56f53sm3509887ejx.43.2022.06.26.00.18.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 26 Jun 2022 00:18:46 -0700 (PDT) Message-ID: <415a5fd68a5540c6ba45bdd69edbbf8fb39335d9.camel@gmail.com> From: Liliana Marie Prikler Date: Sun, 26 Jun 2022 09:18:45 +0200 In-Reply-To: <20220626043902.3076-2-antero@mailbox.org> References: <20220626043902.3076-1-antero@mailbox.org> <20220626043902.3076-2-antero@mailbox.org> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.42.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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 X-Migadu-To: larch@yhetil.org X-Migadu-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1656227956; 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: content-transfer-encoding:content-transfer-encoding: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=AgySP8psQ+QWnw2lYZCyUFJZgSczcgjz8OBVwRB7yYQ=; b=jBqoSu8VhtUxq1OTrLNcBSn01Mzj/l1N0tFp+Bub+3kshtySTvoKD0gElBqGiJlqfEAC2F x26qhPOdMtEXAHOh+cAhDPXWKdJT8NnobNdbMM+vUWnvmfbbnhpMi23Hj2VzZW1TTPOGYd vqFo7wQUIaguQ/x2pqbv215fxy/ziRVv8gPJuFUcAungh4UpVpfGWSUjNIlvkfsp8jEmkv dMRY46eHoFV7lrnFub5+JGWIOmdOhB+cbKsBB/qhOQxxobf2dlh1h00899aJWzA+FpT1gI /CVm82HglcgBiLPZDtbwxUUdXJ129Kn4XOIHL36QSYRRUUlXOXLBhABM4tG6Bw== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1656227956; a=rsa-sha256; cv=none; b=One+98WqUTW0gs8ltXchSllOrVJRRfF0uobuawUDMsu3YSqyeXi13PMqFNA2ad+4KUy8X2 ucWoK6aytoJYDtGGhTcDFwpeVvNerDNYZC9mC8etwZjoZR9Wx9PGMvpfq2EuT7Mz7+TxwU 4fKxLBB8WjEj+Bcaab9o3xROd4Wugf22CK+mroTwizYffoZ6Wg9Lk6oqUBwqbME3BFJqv1 11H/ALB5EOVmAdcBxP1FFND7Q11rgtfTqNLG9nZFbIXN8DQa/7ftoJOLU9cAErONkF7cFw osThJMa3DP/RXXKYtELJtXCBaffKzBFKybsUI8vKT5wWNGg1GMVTL1twfgE3Cg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=QjJakrWp; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); 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" X-Migadu-Spam-Score: 7.24 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b=QjJakrWp; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); 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" X-Migadu-Queue-Id: 65FCAD58E X-Spam-Score: 7.24 X-Migadu-Scanner: scn0.migadu.com X-TUID: 3DyRsYZRa4Hr Hi, Am Sonntag, dem 26.06.2022 um 00:39 -0400 schrieb Antero Mejr: > * gnu/packages/hare.scm (hare): New variable. > --- >  gnu/packages/hare.scm | 73 > +++++++++++++++++++++++++++++++++++++++++++ >  1 file changed, 73 insertions(+) > > diff --git a/gnu/packages/hare.scm b/gnu/packages/hare.scm > index a1149499d5..16c7d8e2dd 100644 > --- a/gnu/packages/hare.scm > +++ b/gnu/packages/hare.scm > @@ -64,3 +64,76 @@ (define-public harec >  bootstrap written in C.  Currently, the self-hosting @code{harec} > rewrite is >  incomplete, so this is used as the default compiler in the build > driver.") >        (license license:gpl3)))) > + > +(define-public hare > +  (let ((commit "19e380ccb7dfe2bcab5f94e6bd03004e3e2c6005") > (revision "0")) As with harec. > +    (package > +      (name "hare") > +      (version (git-version "0.0.0" revision commit)) > +      (source (origin > +                (method git-fetch) > +                (uri (git-reference > +                      (url "https://git.sr.ht/~sircmpwn/hare") > +                      (commit commit))) > +                (file-name (git-file-name name version)) > +                (sha256 > +                 (base32 > +                  > "04fk3akj3410f8fxw2ixp6l6f9x54pnnk00c0hx0297p7hdzzzq4")))) > +      (build-system gnu-build-system) > +      (arguments > +       (list #:make-flags > +             #~(list (string-append "BINDIR=" #$output "/bin") > +                     (string-append "MANDIR=" #$output "/share/man") > +                     (string-append "SRCDIR=" #$output "/src") > +                     (string-append "LOCALSRCDIR=" #$output > "/src/hare") > +                     (string-append "HAREC=" #$harec "/bin/harec") Should have a (this-package-input) or (this-package-native-input) for harec. If it's the latter, (which "harec") might also be acceptable. > +                     (string-append "PLATFORM=" "linux") > +                     (string-append "HAREPATH=" > +                                    #$output "/src/hare/stdlib:" > +                                    #$output "/src/hare/third- > party") > +                     (string-append "ARCH=" > +                                    #$(platform-linux-architecture > +                                       (lookup-platform-by-target- > or-system > +                                        (or (%current-target-system) > +                                            (%current-system))))) > +                     (string-append "AR=" #$(ar-for-target)) > +                     (string-append "AS=" #$(as-for-target)) > +                     (string-append "LD=" #$(ld-for-target)) > +                     (string-append "QBE=" #$qbe "/bin/qbe") As with harec. > +                     (string-append "SCDOC=" #$scdoc "/bin/scdoc") As with harec. > +                     "HARECACHE=.cache" > +                     "BINOUT=.bin") I suppose neither of those ought to be installed? > +             #:phases > +             #~(modify-phases %standard-phases > +                 (add-after 'unpack 'patch-failing-tests > +                   (lambda _ > +                     ;; These tests fail due to a NaN-related bug in > QBE when > +                     ;; used on glibc. > +                     (substitute* "math/complex/+test.ha" > +                       (("@test (fn (cos|cosh|exp)\\(\\) void =)" _ > func) > +                        func)))) > +                 (add-after 'unpack 'patch-makefile > +                   (lambda _ > +                     (substitute* "Makefile" > +                       (("include config.mk") "")))) > +                 (delete 'configure)))) Why delete configure here, but not in harec? I'm pretty sure we can use the same hack for both packages. > +      (native-inputs (list scdoc)) > +      (inputs (list tzdata)) > +      (propagated-inputs (list binutils harec qbe)) > +      (supported-systems (list "x86_64-linux" "aarch64-linux" > "riscv64-linux")) > +      (native-search-paths > +       (list (search-path-specification > +              (variable "HAREPATH") > +              (files '("src/hare/stdlib" "src/hare/third-party"))))) Is there a need to split HAREPATH like that? From a functionality perspective, a singular "include/hare" or similar ought to be enough. I'd specifically avoid "src" since it exists "only for reference purposes" in the FHS. Other distros mandate that the linux kernel source code be put there. > +      (home-page "https://harelang.org") > +      (synopsis "Systems programming language") > +      (description "Hare is a systems programming language that aims > to improve > +on C while retaining its core philosophy. Its principles are: > +@itemize > +@item Trust the programmer. > +@item Provide tools the programmer may use when they don't trust > themselves. > +@item Prefer explicit behavior over implicit behavior. > +@item A good program must be both correct and simple. > +@end itemize") > +      (license (list license:gpl3 ;compiler and build driver > +                     license:mpl2.0))))) ;standard library Cheers