unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Greg Hogan <code@greghogan.com>
To: Liliana Marie Prikler <liliana.prikler@gmail.com>
Cc: guix-devel <guix-devel@gnu.org>,
	"Efraim Flashner" <efraim@flashner.co.il>,
	"Ludovic Courtès" <ludo@gnu.org>
Subject: Re: Creating a C/C++ team?
Date: Thu, 5 Dec 2024 18:35:40 -0500	[thread overview]
Message-ID: <CA+3U0Zkt3zLggyu=bUKDdr_OjK-NfrZoSvb_HzG4+J+dB8mBYQ@mail.gmail.com> (raw)
In-Reply-To: <dff5dd1983939f295f1c1fd481e2e7950f409ce5.camel@gmail.com>

On Fri, Nov 29, 2024 at 4:35 AM Liliana Marie Prikler
<liliana.prikler@gmail.com> wrote:
>
> Hi Greg,
>
> Am Montag, dem 25.11.2024 um 13:27 -0500 schrieb Greg Hogan:
> > Guix,
> >
> > Should we have a C++ team? I think project contributions regarding C
> > and C++ compilers, libraries, tools, and programs would benefit from
> > a tag to flag, discuss, and triage issues and a team branch to
> > manage, test, and pre-build patches.
> >
> > This team would of course be distinct from the core-packages team,
> > which manages the most fundamental packages and challenging updates.
> I think there is a risk that this still overlaps with core-packages on
> the account of GCC being our main C/C++ toolchain.

The core-packages team scope includes commencement.scm, gcc.scm, and
gnu-build-system so contributors using etc/teams.scm will be properly
directed. I do share this concern, but I also think there is enough
delay in collecting and building patches on a team branch that someone
would flag a patchset needing core-packages handling and review.

> Note: while I'm already swamped with work on gnome and emacs, I would
> be interested in joining a hypothetical c++ team.

Excellent!

> > diff --git a/etc/teams.scm b/etc/teams.scm
> > index fe3291f914..e257650a04 100755
> > --- a/etc/teams.scm
> > +++ b/etc/teams.scm
> > @@ -611,0 +612,14 @@ (define-team zig
> > +(define-team c++
> > +  (team 'c++
> > +        #:name "C/C++ team"
> > +        #:description
> > +        "C and C++ compilers, libraries, tools, and programs"
> I would limit the scope to "libraries and tools".  That programs happen
> to be written in C/C++ is almost always incidental :)
>
> > +        #:scope (list "gnu/packages/c.scm"
> > +                      "gnu/packages/cpp.scm"
> Of course.
>
> > +                      "gnu/packages/llvm.scm"
> > +                      "gnu/packages/llvm-meta.scm"
> Not sure about these two.  Since our main use for LLVM is in
> Rust/Zig/Mesa, all of which have their own teams, maybe we should leave
> a broader LLVM team with members from all of that open for folks who
> are not necessarily interested in the rest of C/C++.
>
> > +                      "gnu/packages/ninja.scm"
> > +                      "gnu/packages/valgrind.scm"
> If we add these, I would also suggest adding build-tools.scm,
> check.scm, debug.scm etc.
>
> > +                      "gnu/build/cmake-build-system.scm"
> > +                      "gnu/build-system/cmake.scm")))
> These are under guix/ and belong to the core team IIRC.
>
> Cheers

v2 below. Removed compiler (llvm[-meta].scm) scope and removed
"compilers" from description.

+1 to an LLVM team or llvm[-meta].scm in the core-packages scope.

I think cmake-build-system belongs in the C++ team scope. Our use of
cmake is rather simple, even with the enhancements collected in #70031
(which began with a desire to parallelize tests). We should keep cmake
up-to-date without bothering core-packages.

ninja.scm and valgrind.scm are essentially single package modules. The
suggested build-tools.scm, check.scm, and debug.scm are a mix. For
example, check.scm includes python-pytest among other python packages.
Not sure why these are not in python-check.scm unless there would be
circular dependencies. Given the success of the teams workflow, should
we look to divide these mixed modules by team rather than grouping by
theme?

$ ./etc/teams.scm show c++
id: c++
name: C/C++ team
description: C and C++ libraries and tools and the CMake build system.
+ Note that updates to fundamental packages are the competency of the
+ core-packages team.
scope:
+ gnu/build-system/cmake.scm
+ gnu/build/cmake-build-system.scm
+ gnu/packages/c.scm
+ gnu/packages/cmake.scm
+ gnu/packages/cpp.scm
+ gnu/packages/ninja.scm
+ gnu/packages/valgrind.scm


  parent reply	other threads:[~2024-12-05 23:36 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-25 18:27 Creating a C/C++ team? Greg Hogan
2024-11-28  8:26 ` Ludovic Courtès
2024-11-29  9:36 ` Liliana Marie Prikler
2024-11-30 15:19   ` Ludovic Courtès
2024-12-01 10:02   ` Efraim Flashner
2024-12-05 23:35   ` Greg Hogan [this message]
2024-12-06  8:27     ` indieterminacy
2024-12-06  9:39       ` Andreas Enge
2024-12-06 19:45     ` Liliana Marie Prikler

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CA+3U0Zkt3zLggyu=bUKDdr_OjK-NfrZoSvb_HzG4+J+dB8mBYQ@mail.gmail.com' \
    --to=code@greghogan.com \
    --cc=efraim@flashner.co.il \
    --cc=guix-devel@gnu.org \
    --cc=liliana.prikler@gmail.com \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).