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 4BVMNj87M2M/aAEAbAwnHQ (envelope-from ) for ; Tue, 27 Sep 2022 20:04:47 +0200 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 KCdcNj87M2PXpQAA9RJhRA (envelope-from ) for ; Tue, 27 Sep 2022 20:04:47 +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 A4AF2B1C3 for ; Tue, 27 Sep 2022 20:04:47 +0200 (CEST) Received: from localhost ([::1]:42678 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1odEwo-0007Hm-Kz for larch@yhetil.org; Tue, 27 Sep 2022 14:04:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:46560) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1odEw6-0007GP-SK for guix-patches@gnu.org; Tue, 27 Sep 2022 14:04:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:57682) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1odEw6-0007ES-KC for guix-patches@gnu.org; Tue, 27 Sep 2022 14:04:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1odEw6-0002U1-Ev for guix-patches@gnu.org; Tue, 27 Sep 2022 14:04:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#58100] [PATCH] gnu: cbqn: factor out singeli into derivative package. Resent-From: Christopher Rodriguez Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 27 Sep 2022 18:04:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 58100 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: Liliana Marie Prikler Cc: Christopher Rodriguez , 58100@debbugs.gnu.org Received: via spool by 58100-submit@debbugs.gnu.org id=B58100.16643018209514 (code B ref 58100); Tue, 27 Sep 2022 18:04:02 +0000 Received: (at 58100) by debbugs.gnu.org; 27 Sep 2022 18:03:40 +0000 Received: from localhost ([127.0.0.1]:56760 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1odEvj-0002TN-FL for submit@debbugs.gnu.org; Tue, 27 Sep 2022 14:03:40 -0400 Received: from mail-qt1-f177.google.com ([209.85.160.177]:45693) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1odEvg-0002T8-Ja for 58100@debbugs.gnu.org; Tue, 27 Sep 2022 14:03:37 -0400 Received: by mail-qt1-f177.google.com with SMTP id r20so6512601qtn.12 for <58100@debbugs.gnu.org>; Tue, 27 Sep 2022 11:03:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:message-id:in-reply-to:date:subject:cc:to:from :user-agent:references:from:to:cc:subject:date; bh=nj+VR3YBv5zdlVFaF2MJzwEcdv2W2eTFIUeLA6N1ZHM=; b=mm+g/8cnmslUfl+yRnOBQrzlo6lZ9Y/prjSefE9P4ACFUhDdbkFfUs80a6zH0o122i fb1/XrFEQyHDLAoeQd8GBmcAE/zFddfbke+O3C8TnEHYR+Y76f5Ys7ssIUB8S+FgWKr4 x2yRtECVsaQIX5djYaSpte0ntqnekCfE+N3ALIRAoQNFDSCFIFhb0J295Fe0Er73v76L bmUFoVTHLOhnH1T9rze7fVZpvDbXVA0RdBIPkcprndD3EiHU7xBBVr1WTv2/HPa8kqcx DE60sU5RZtC6KOhgjXLhcA02brIw6jIvsznmzcHKOLGjJGuHWkiiKtDBA3wm3V3pgJHw nJ+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=mime-version:message-id:in-reply-to:date:subject:cc:to:from :user-agent:references:x-gm-message-state:from:to:cc:subject:date; bh=nj+VR3YBv5zdlVFaF2MJzwEcdv2W2eTFIUeLA6N1ZHM=; b=dZ2i3aFaq1g0K0SIy0i6QGmLbfPFq3jTRZnFY91Onu93U+nf2AoRIaFwB54m+v2JUs N5hSqlr4ATfbbsZeP3djPa/GGKvAo1t1I9NQveWZDPnwupleRdVmZ0bcOvNlxAqVaTqj oeWEPt9BBbH4U55AsxOw/CMk1XVTV86HtLlT7oH303GOuz5yWnHJvUHKYjp8V6HtN2rz BVpC95FZruVyKidTzgKceCFw81P39lyTRev7vZXTVXy6cfilH2DsFfCJI/PJ1Suogpo2 /IkwWYfYqDfyjX1ttpiSnrxyEs8NGDt6PKvjGW3P2SlGpUGZV68drEwdaN+umcBL87d9 XnlA== X-Gm-Message-State: ACrzQf0uuZAFr260DdscdR9xwHA9kNtnDB6npQYmFqjcdmkF5CpTZ0tx VhD3wNz6KZbqJB7bh8vNhS0= X-Google-Smtp-Source: AMsMyM7oALJF/6VKkuikyEI01lla6Xj94stNpgUCbTYqVQsPW+ngLluUDlPUX2dODnIppwGxmDVRVg== X-Received: by 2002:ac8:59d5:0:b0:35b:ae59:c944 with SMTP id f21-20020ac859d5000000b0035bae59c944mr23787917qtf.474.1664301810913; Tue, 27 Sep 2022 11:03:30 -0700 (PDT) Received: from gmail.com (ec2-44-193-142-136.compute-1.amazonaws.com. [44.193.142.136]) by smtp.gmail.com with ESMTPSA id t17-20020a05622a01d100b0035bbb0fe90bsm1355718qtw.47.2022.09.27.11.03.29 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 27 Sep 2022 11:03:30 -0700 (PDT) References: <20220926191212.30609-1-yewscion@gmail.com> <982732ff807d152d4e8c181e3c33ca03ea72ac4b.camel@ist.tugraz.at> User-agent: mu4e 1.8.9; emacs 28.1 From: Christopher Rodriguez Date: Tue, 27 Sep 2022 13:27:23 -0400 In-reply-to: <982732ff807d152d4e8c181e3c33ca03ea72ac4b.camel@ist.tugraz.at> Message-ID: <87r0zwhez2.fsf@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" 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-Country: US ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1664301887; 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=nj+VR3YBv5zdlVFaF2MJzwEcdv2W2eTFIUeLA6N1ZHM=; b=jXRrBPg3N+hDq6pBL7hJMR/IfBAI8RheFK4F4FuLbXFPne9PzGEZWSiE/4kT+3yyb3v4cp 0Qp4zzAKvxtPaGu4Zofnk5nokGkfuXIsK9lgUuRI5/7CoJo6ErgfhCnKQ65v279ertpF7h n+NOp5p5u9EnrsoUkIgG41mnoPL8edn2vsJiHJGwwNIygrjYsEWyijcMSj7QhYjbnmOaoW YkbfFctBjhLuKrOODV6T2BBwwWIaF5gzkuRN9xU6G9nI0W7XNTRo69wxfbeLG41A4cx0cu nqzxzEdh5QXCvJrhxgA9rdsJi6Ciflj8sBo4M8t2geNUSkqlLgny3+HY3aFcHg== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1664301887; a=rsa-sha256; cv=none; b=hJ4pw5oo5VcnIdTHGOKGC2MKpQPsh0goTk5FFc2ebLONquX9z5P5uf02RpvD9XW5YkcNJc apHWCZN2wqpJsCeiQn7z8LfKUo6ylniAmD4AQ4bUvNT9V3O3Er22REE8b5V1uNr3JbdSVc jumzOd9fFC4Qi2DbUelXKFE2Pg33giTHSZnuACuKiDWs0LDbputoD46ZN0MxwtzZs4qzp9 fxjm7HT7cOpIa/86LUwgi1X6hS8UKPdY1lR3FzUXssNw1zvUELhvvgpZgevZVOV2xg3W6A y4epU8k+Yo/zAXV6o6hz2djEXdwO2PKRyfrV65IqkX4BkLPDEEdB5bRYM1hmlg== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b="mm+g/8cn"; 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: 5.56 Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20210112 header.b="mm+g/8cn"; 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: A4AF2B1C3 X-Spam-Score: 5.56 X-Migadu-Scanner: scn1.migadu.com X-TUID: HVGTeBSOM7wq --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Liliana Marie Prikler writes: > This is not how to write a ChangeLog. See [1] or infer from other > commits. Thank You for pointing me in the right direction; I will ensure a standardized changelog in my revised patch after reading all of the linked info. >> -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit "9c1cbdc99863b= 1da0116df61cd832137b196dc5c")) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (commit "bd823839feaf4= 2af4013e5a245981f58f563e659")) > Why are you changing the bootstrap commit? This looks suspicious. I am bumping the commit from 9c1cbdc99863b1da0116df61cd832137b196dc5c to 46501ac819c8f21c69d7d2ba4b0457a7356f5e42 (another commit was made when closing the above-linked issue) as the new commit is the most recent one for this un-tagged project. There is no 'release' to package, and so in order to stay up to date regular updates of this package's commit will likely be necessary. I can see why the bootstrap commit might stay the same, however. Would it be better to solely amend the commit on the actual installable package instead? >> =C2=A0=C2=A0=C2=A0=C2=A0 (arguments >> -=C2=A0=C2=A0=C2=A0=C2=A0 (list #:make-flags '(list "shared-o3" "o3n-sin= geli") >> +=C2=A0=C2=A0=C2=A0=C2=A0 (list #:make-flags '(list "shared-o3" "o3") > Okay I have actually just re-read the documentation after the abovementioned most recent commit, and noticed a surviving line in the upstream `README.md`[1]: `make PIE=3D""` on ARM CPUs (incl. Android & M1) Perhaps I can incorporate this into the package to allow it to build on aarch64 as well as x86_64? Though as mentioned in the original upstream issue, I think there is a problem with a dependent package=E2=80=A6 perhaps= this should be saved for a separate issue, then. > Instead of providing a singeli variant, would just tuning the package > suffice? This was actually my biggest question when making the patch. I chose a singeli variant because there is no architecture detection at all in the makefile; it relies entirely on the specified targets ("o3", "c", etc) to decide what to build for. As an example: Switching the target from "o3n-singeli" to "o3" immediately changed the entire build, preventing it from looking at all for Singeli sources, even though I had yet to unlink them from the source directory. Is there a preferred method for this kind of build structure in a Guix package? I suppose I could do a (cond *) in the make flags=E2=80=A6 maybe referencing a variable for the target? I don't know what variable that might be, though, as we would not only be looking for an x86_64 target, but specifically that the underlying system supports AVX2=E2=80=A6 In general, I would much prefer to keep it as one package. I think it is much easier to maintain that way, and makes the user experience much easier as well. But I'm sorry to report that I'm unaware of how best to implement this, and would greatly appreciate some advice. > If not, I think we should try to properly unbundle singeli (as in > build an actual singeli package) before adding another package > variant. Then, you could use existing patterns to decide whether to > use singeli by making it an input or not. As for unbundling singeli: Running singeli requires a version of cbqn built with or without singeli support. Building a version of cbqn with singeli support requires the /source/ for singeli to be present in the build directory at build time, not a precompiled binary. Singeli itself is actually just a BQN script[2], and not a compiled binary at all, and is a transpiler from BQN to IR/C. It's used in the optimized version to transpile/compile the SIMD algorithms (sic, I am unfamiliar with this concept). In short, to unbundle singeli, we can just avoid including singeli in the build, as in the revised cbqn package in the patch. We could make a package for singeli that uses an installed bqn binary from any cbqn package, but we would still need the sources present at build time due to the way they are used and called in the build script. Fully decoupling the optimized cbqn from singeli would require rewriting the parts of the build that locate and run the singeli script, and (I think) is more suited to an upstream patch than a package definition. I have opened an issue regarding this possibility with upstream as of this email[3]. (FWIW, I've also opened an issue regarding release tagging[4], though from my previous correspondence with upstream I'm fairly certain a release tag is not yet something they are comfortable with). > > Cheers Thank You (as always) for Your guidance, Liliana. Sorry for these issues, I am still learning best practices and standards for this project and those of GNU in general. I hope You have a great day! [1]: https://github.com/dzaima/CBQN/commit/46501ac819c8f21c69d7d2ba4b0457a7= 356f5e42 [2]: https://github.com/mlochbaum/Singeli/blob/master/singeli [3]: https://github.com/dzaima/CBQN/issues/46 [4]: https://github.com/dzaima/CBQN/issues/47 =2D-=20 Christopher Rodriguez () ascii ribbon campaign - against html e-mail /\ www.asciiribbon.org - against proprietary attachments --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEJMQbvYVxvZ0eF/84XZ6FgaGVz3sFAmMzOvEACgkQXZ6FgaGV z3vUthAAlX0NKqeaIi40GSuvVfH16hwbHJhP9Cnzaw192e3LZPeoDfF/U03ydUcR nOkk2ZSxUhv6Ptrkw6wCdpBtm4zTe1ZKj0Q5+h6UCxWpWtYRgyHTnSYBauonibas wk831wvM1WnUVEnrPvS2pH/OjkP+01K0perOPq01O/SJJIwvhEJ0sOLk58gYX8Mi pIX36R4aAXckAGEQnd3ruun+276EliTjjeG7iKJGelQReHWSvA0bKrr3bShQxYOG hNHx4L+cIwQbpZdyWgsiCLkxJXmVmBQrRGQ7PLZmXLLGJGNgHcUpCb305uu7WD/i agW9vGpH8wU2wCE7hkMnVVWHWmOt9PyaBgMLlBI1EiJm6MHUiAi5PNW9zkzjWzDj 1Twv21cNwpJuQj60JYE4BCosU7Dd8I8bWIvNBrisqoTCKSD1Qwe8GKxedHg1Seaz arSh2GbaHnQoOHY09kmhj6zzfv4f+hNhFaWQ25PneuEHUM+60Qm0n7RKEK+O5cId ltG/hx0ku3bRY6FCB8sv/mOssdAFxBdPlP7/Jm83xFIUFLOJgqr2QUusQxZmRo/i fXT+MGoyvUtGqxFutTwqVYLnPm4o1cqMjAqmRCvrcpZLU6+zuoSyP+C+n2k1Bjpa aQcmKVdLjLiBY9rMPy9vUxPQr1fpJlG8gYNox0uL2ht4UVJAILk= =gVvX -----END PGP SIGNATURE----- --=-=-=--