Received: from mail-40132.protonmail.ch (mail-40132.protonmail.ch [185.70.40.132]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id B22AB7819C2 for <~alpine/devel@lists.alpinelinux.org>; Sun, 15 Dec 2019 11:13:14 +0000 (UTC) Date: Sun, 15 Dec 2019 11:13:12 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=default; t=1576408393; bh=mvQbJ5NBl/Wge37xTIoPlOMwAfREn2jsEpgymQeAQyU=; h=Date:To:From:Cc:Reply-To:Subject:In-Reply-To:References: Feedback-ID:From; b=GbsfvWRc8sbrIoUyaFGLYF7sYN8N6KgGyhALI6pm30TAR/5mkicX9Ur38Bai9V7Bw 1ARGU05IjtFggTCNEUCU8C/RufBQSgNl7QsNfqIBfuRE06BtQLIg6Tc2SlQhxBIaKe LS28m5z2jtk8klKVNSEUhyEhP/uBwQ0vY5Ap/KsI= To: Natanael Copa From: ecsx Cc: Drew DeVault , "~alpine/devel@lists.alpinelinux.org" <~alpine/devel@lists.alpinelinux.org> Reply-To: ecsx Subject: Re: Proposal: replace ninja with samurai Message-ID: In-Reply-To: <20191211094116.4908c616@ncopa-desktop.copa.dup.pw> References: <20191211094116.4908c616@ncopa-desktop.copa.dup.pw> Feedback-ID: rfqEyWCqWp1raYnSrQM7wRmLaD8V0x-8nfFhjPo0Xf4EctzPnMsu1XXI2RUPT3HPiFWcIJFwPnnZyvTgi9-DmQ==:Ext:ProtonMail MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Spam-Status: No, score=-1.2 required=7.0 tests=ALL_TRUSTED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on mail.protonmail.ch > Does chromium developers support builds with samurai? I think if we start asking that for packages, we will end up just like all = other distros and use the most common (but not the best) dependencies. What I like about Alpine is the use of smaller and simpler solutions. =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 Original Me= ssage =E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90=E2=80=90 On Wednesday, December 11, 2019 5:41 AM, Natanael Copa wrote: > On Sat, 07 Dec 2019 12:37:56 -0500 > "Drew DeVault" sir@cmpwn.com wrote: > > > Ninja is a build tool which fills the same niche as Make, and samurai i= s > > a third-party implementation on of Ninja. > > https://github.com/ninja-build/ninja > > https://github.com/michaelforney/samurai > > samu is much simpler than ninja, clocking in at around ~3,000 lines of > > C, compared to Ninja's ~20,000 lines of C++. samu also supports a > > SAMUFLAGS environment variable which we can use to tune the -j flag in > > abuild, similar to Make. Samurai is a drop-in replacement, but is not > > bug-for-bug compatible with Ninja. > > What I think is nice with ninja compared to make, is that we don't need > set -j to make it use all cores. Will samurai not use all detected > cores without setting -j? > > > Ninja upstream has been hostile to appeals from distros and users > > alike to add a similar environment variable. Their argument seems to > > boil down to being proud to only support one environment variable, > > which can change the format string their progress meter is printed > > with. Their attitude is non-cooperative towards distros, and I would > > rather use an implementation which plays more nicely with others. > > Do you have any example with hostility or non-cooperative against > Alpine? > > I am against this change if it is purely for political reasons. > > > I've been using samu as my daily driver for a few years now, and I've > > yet to meet a project it couldn't compile. Its performance is also > > comparable to ninja. A samurai package is available in community on edg= e > > if you would like to try it for yourself. > > Does chromium build with samurai? Does chromium developers support > builds with samurai? > > > I propose dropping the ninja package and adding provides=3Dreplaces=3Dn= inja > > to the samurai package, as well as a symlink from /usr/bin/ninja to > > /usr/bin/samu. > > I'd like to have them both available so we can easily pick one > depending on which works or is supported. > > I also saw that there was a comparison with pkg-config vs pkgconf on > IRC. The main motivator for pkgconf switch was that pkg-config > introduced a circular dependency (pkg-config -> glib -> pkg-config). > The pkgconf author is also an Alpine developer so any issues we had > with pkgconf were fixed very quick upstream. > > Do we have similar problems with ninja? > > Can we expect the same level of support from samurai that we have with > pkgconf? > > -nc