Return-Path: <zertsekel@gmail.com> Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id C5D9F982 for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 23 Oct 2017 11:52:07 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-it0-f47.google.com (mail-it0-f47.google.com [209.85.214.47]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 5665E46F for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 23 Oct 2017 11:52:06 +0000 (UTC) Received: by mail-it0-f47.google.com with SMTP id c3so5538060itc.3 for <bitcoin-dev@lists.linuxfoundation.org>; Mon, 23 Oct 2017 04:52:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=gts3QIzwEEDrJXnQzPMNTem1Yf9FEpOQ6QMBL2Z7Rk8=; b=TkW1g4bFTMDwfFYx3XPKBOxvDxXDHunSkRb9k8aODl9Yjq5u+jeGSviljkUeIlk2jT 5tQgPQ4JVM/3pUPeNGp+97ZLGwaiy80HbanX2HZoFB/E7bknE9Db9gk2wVnqmmhqYOGR OJbF4OuD4bspSx1ZFTsvAIi4Am1A3tJa8wg8tax1/UIX5aHyWuRVCIpaIbatipn30LRH DPK/BkKkB2NjysAKq3tBoptIaVdwVseveSvJP2bVa31ixRsJztjYpctsvQ/z3asDWLdS n2HUTq3QPHBWy3VeRYbJw4S5jRDueN9U4qYYKXGjAOXtTlWim9l5Fq0DhbJGIiVtdAbc x7Ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=gts3QIzwEEDrJXnQzPMNTem1Yf9FEpOQ6QMBL2Z7Rk8=; b=DwYe9Fdy5nz8LFdR7q1Tclqeeh91wENdGhQliRLFh1+aKZRn4kS6MRXKAn6PBLqWOR nUI7nYjgzzCEnTbHlns6WWfnVy9QGH3Cwif7IMRwybmWBGkTy165/1Hf22SuNcyMrZId ihQ2O2VLTX6Aw80FmIwNcMV0yUa/RVIgTKo6nDmLYB4oMQ4mzZnR4Q2CPsAwGqNi7FHq YKeNLMS9QcQ7LXJtdtEVvTIkHEGdW11Jx5WtnlEKdRHGJ3qs6XoxskEpQTM5irFH85gh Sm2OssPL9iZ+d3uwccU2vpJOr2ZyuBs5Ic+5zaFaCPeNDv26pd3hK2h1rrMLiAFBlIEo kXfg== X-Gm-Message-State: AMCzsaVDu1sjU2UEsXgMvo7aOZZDpm05d7R+aVLYs11bvu3VmHR7oRT7 C1CLpFsLzJT4W8o18BNQBPgn2Enxh3H0+FJOybdH3A== X-Google-Smtp-Source: ABhQp+TkahCPATpLJmqpJa1PNzbuAuChZW9piUjdL1hqvBiyfFuG4fD/+BRDXzRCT23S1We8b+BZCp/L9csDqj6VVig= X-Received: by 10.36.82.1 with SMTP id d1mr8631095itb.115.1508759525582; Mon, 23 Oct 2017 04:52:05 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.185.215 with HTTP; Mon, 23 Oct 2017 04:52:04 -0700 (PDT) In-Reply-To: <FB8D6509-5C2E-4F4F-9D7F-6CFB90591FB0@eeqj.com> References: <CADxo8WLrKxkUHpQSYb-Yoq0Nzv9QP=k5qBmS2wiqhp0P8=rSMA@mail.gmail.com> <FB8D6509-5C2E-4F4F-9D7F-6CFB90591FB0@eeqj.com> From: Kosta Zertsekel <zertsekel@gmail.com> Date: Mon, 23 Oct 2017 04:52:04 -0700 Message-ID: <CADxo8WLk_Ttaa3-jXQXaCJ3E+tKH9J7uUFAN_pfvtWOx_77cAA@mail.gmail.com> To: Jeffrey Paul <jp@eeqj.com> Content-Type: multipart/alternative; boundary="001a1144819292ed1e055c357373" X-Spam-Status: No, score=0.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM autolearn=disabled version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org X-Mailman-Approved-At: Mon, 23 Oct 2017 14:21:19 +0000 Cc: bitcoin-dev@lists.linuxfoundation.org Subject: Re: [bitcoin-dev] Bitcoin Core build system (automake vs cmake) X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org> List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe> List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/> List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org> List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help> List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe> X-List-Received-Date: Mon, 23 Oct 2017 11:52:07 -0000 --001a1144819292ed1e055c357373 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable >> On Oct 22, 2017, at 13:11, Kosta Zertsekel wrote: >> I wonder why automake has become the build system for Bitcoin Core? >> I mean - why not cmake which is considered better? >> Can you please point to the relevant discussion or explanation? > On Mon, Oct 23, 2017 at 6:24 AM, Jeffrey Paul <jp@eeqj.com> wrote: > Considered by whom? Automake is the standard and I prefer it as it requires > no additional install on most systems. For that, I consider it better. Well, here are some quotes about CMake build tools... JetBrains (2014) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Our brief research showed that CMake and =E2=80=98make=E2=80=99 were the mo= st popular cross-platform tools, having ~30% of users each, while both Autotools and qmake had less than 7% of users. So we ended up with CMake and make. [https://blog.jetbrains.com/clion/2014/09/cmake-vs-the-others-round-1/] KDE Project (2006) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Now the next big change is happening: KDE is leaving the aging "autotool" build chain behind. Some developers, not only in KDE, like to nickname the autotools as "auto-hell" because of its difficult to comprehend architecture. So, KDE 4 will feature a completely different build system: CMake. [https://lwn.net/Articles/188693/] Also, there are more advanced build systems: =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D - Meson [http://mesonbuild.com] - Ninja [https://ninja-build.org/] All of them (CMake, Meson, Ninja) had a goal to replace automake. Was there any discussion about choosing the best build system for Bitcoin Core? Thanks, --- Kosta Z. --001a1144819292ed1e055c357373 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_default"><div class=3D"gmail_default">= <font face=3D"arial, helvetica, sans-serif">>> On Oct 22, 2017, at 13= :11, Kosta Zertsekel wrote:</font></div><div class=3D"gmail_default"><font = face=3D"arial, helvetica, sans-serif">>> I wonder why automake has be= come the build system for Bitcoin Core?</font></div><div class=3D"gmail_def= ault"><font face=3D"arial, helvetica, sans-serif">>> I mean - why not= cmake which is considered better?</font></div><div class=3D"gmail_default"= ><font face=3D"arial, helvetica, sans-serif">>> Can you please point = to the relevant discussion or explanation?</font></div><div class=3D"gmail_= default"><font face=3D"arial, helvetica, sans-serif"><br></font></div><div = class=3D"gmail_default"><font face=3D"arial, helvetica, sans-serif">> On= Mon, Oct 23, 2017 at 6:24 AM, Jeffrey Paul <<a href=3D"mailto:jp@eeqj.c= om">jp@eeqj.com</a>> wrote:</font></div><div class=3D"gmail_default"><fo= nt face=3D"arial, helvetica, sans-serif">> Considered by whom? Automake = is the standard and I prefer it as it requires</font></div><div class=3D"gm= ail_default"><font face=3D"arial, helvetica, sans-serif">> no additional= install on most systems. For that, I consider it better.</font></div><div = class=3D"gmail_default"><font face=3D"arial, helvetica, sans-serif"><br></f= ont></div><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans= -serif">Well, here are some quotes about CMake build tools...</font></div><= div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-serif"><br= ></font></div><div class=3D"gmail_default"><font face=3D"arial, helvetica, = sans-serif">JetBrains (2014)</font></div><div class=3D"gmail_default"><font= face=3D"arial, helvetica, sans-serif">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D</font></div><div class=3D"gmail_default"><font face=3D"arial, = helvetica, sans-serif">Our brief research showed that CMake and =E2=80=98ma= ke=E2=80=99 were the most popular</font></div><div class=3D"gmail_default">= <font face=3D"arial, helvetica, sans-serif">cross-platform tools, having ~3= 0% of users each, while both Autotools</font></div><div class=3D"gmail_defa= ult"><font face=3D"arial, helvetica, sans-serif">and qmake had less than 7%= of users. So we ended up with CMake and make.</font></div><div class=3D"gm= ail_default"><font face=3D"arial, helvetica, sans-serif">[<a href=3D"https:= //blog.jetbrains.com/clion/2014/09/cmake-vs-the-others-round-1/">https://bl= og.jetbrains.com/clion/2014/09/cmake-vs-the-others-round-1/</a>]</font></di= v><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-serif">= <br></font></div><div class=3D"gmail_default"><font face=3D"arial, helvetic= a, sans-serif">KDE Project (2006)</font></div><div class=3D"gmail_default">= <font face=3D"arial, helvetica, sans-serif">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D</font></div><div class=3D"gmail_default"><font fac= e=3D"arial, helvetica, sans-serif">Now the next big change is happening: KD= E is leaving the aging "autotool"</font></div><div class=3D"gmail= _default"><font face=3D"arial, helvetica, sans-serif">build chain behind. S= ome developers, not only in KDE, like to nickname</font></div><div class=3D= "gmail_default"><font face=3D"arial, helvetica, sans-serif">the autotools a= s "auto-hell" because of its difficult to comprehend</font></div>= <div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-serif">ar= chitecture. So, KDE 4 will feature a completely different build system:</fo= nt></div><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-= serif">CMake.</font></div><div class=3D"gmail_default"><font face=3D"arial,= helvetica, sans-serif">[<a href=3D"https://lwn.net/Articles/188693/">https= ://lwn.net/Articles/188693/</a>]</font></div><div class=3D"gmail_default"><= font face=3D"arial, helvetica, sans-serif"><br></font></div><div class=3D"g= mail_default"><font face=3D"arial, helvetica, sans-serif">Also, there are m= ore advanced build systems:</font></div><div class=3D"gmail_default"><font = face=3D"arial, helvetica, sans-serif">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D</font></div><div class=3D"gmail_default"><font face= =3D"arial, helvetica, sans-serif">=C2=A0- Meson [<a href=3D"http://mesonbui= ld.com">http://mesonbuild.com</a>]</font></div><div class=3D"gmail_default"= ><font face=3D"arial, helvetica, sans-serif">=C2=A0- Ninja [<a href=3D"http= s://ninja-build.org/">https://ninja-build.org/</a>]</font></div><div class= =3D"gmail_default"><font face=3D"arial, helvetica, sans-serif"><br></font><= /div><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-seri= f">All of them (CMake, Meson, Ninja) had a goal to replace automake.</font>= </div><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-ser= if">Was there any discussion about choosing the best build system for</font= ></div><div class=3D"gmail_default"><font face=3D"arial, helvetica, sans-se= rif">Bitcoin Core?</font></div><div class=3D"gmail_default"><font face=3D"a= rial, helvetica, sans-serif"><br></font></div><div class=3D"gmail_default">= <font face=3D"arial, helvetica, sans-serif">Thanks,</font></div><div class= =3D"gmail_default"><font face=3D"arial, helvetica, sans-serif">--- Kosta Z.= </font></div></div></div> --001a1144819292ed1e055c357373--