BUSY VS GnTools

Compare BUSY vs GnTools and see what are their differences.

BUSY

BUSY is a lean, statically typed, cross-platform, easily bootstrappable build system for GCC, CLANG and MSVC inspired by Google GN (by rochus-keller)

GnTools

GN meta-build system parser, static code model and navigable code browser (by rochus-keller)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
BUSY GnTools
24 2
80 12
- -
3.7 10.0
about 1 year ago almost 2 years ago
C C++
GNU General Public License v3.0 only GNU General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

BUSY

Posts with mentions or reviews of BUSY. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-22.

GnTools

Posts with mentions or reviews of GnTools. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-11-22.
  • New build system for C/C++
    2 projects | news.ycombinator.com | 22 Nov 2023
    Thanks. It's far from perfect, but at least it made it possible to build the Oberon IDE with toolchain and LeanQt all in one batch with no other requirements than a C89 and C++98 compiler.

    > Even with big builds we don't have to much variables hammering

    Have e.g. a look at the Chromium or Dart VM build; it's huge and very complex; understanding the build system given that most of the relevant information is only available during the build is frightening; I even built my own tool to at least get some orientation using best-effort cross-referencing, see https://github.com/rochus-keller/GnTools.

  • BUSY build specification language and interpreter MVP release
    3 projects | /r/ProgrammingLanguages | 21 Oct 2022
    BUSY has inherited a lot of ideas from GN, which itself has inherited ideas from Blaze (i.e. Bazel). GN improves over Blaze in different aspects, e.g. in that it has explicit conditionals and also configs (see e.g. https://gn.googlesource.com/gn/+/main/docs/language.md#Differences-and-similarities-to-Blaze). BUSY has both conditionals as well as configs, and it also has a few other concepts not present in GN or Bazel. The most obvious is static typing, which makes it possible to statically analyze and better understand build systems. I did quite some research in this respect and even implemented tools alone for this purpose (see e.g. https://github.com/rochus-keller/GnTools). Then it has an explicit path type with dedicated operators (instead of arbitrary strings), an explicit module concept with control of visibility, enumeration types with explicit member checks (instead of arbitrary string comparisons), mutable and immutable variables, and more flexible result handling over dependency chains, just to name a few. Well possible that Bazel has improved in these respects since I last looked at it.

What are some alternatives?

When comparing BUSY and GnTools you can also consider the following projects:

scratch - Personal scratch code

oil - Oils is our upgrade path from bash to a better language and runtime. It's also for Python and JavaScript users who avoid shell!

remake - Enhanced GNU Make - tracing, error reporting, debugging, profiling and more

shellb - Simple Shell based build tool

gtec-demo-framework

nappgui - SDK for building cross-platform desktop apps in ANSI-C

coalton - Coalton is an efficient, statically typed functional programming language that supercharges Common Lisp.

Rake - A make-like build utility for Ruby.

rabs - General purpose imperative build system.

tup - Tup is a file-based build system.

LeanQt - LeanQt is a stripped-down Qt version easy to build from source and to integrate with an application.