GnTools

GN meta-build system parser, static code model and navigable code browser (by rochus-keller)

GnTools Alternatives

Similar projects and alternatives to GnTools

  • oil

    236 GnTools VS 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!

  • BUSY

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

  • 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.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better GnTools alternative or higher similarity.

GnTools reviews and mentions

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.

Stats

Basic GnTools repo stats
2
12
10.0
almost 2 years ago

rochus-keller/GnTools is an open source project licensed under GNU General Public License v3.0 only which is an OSI approved license.

The primary programming language of GnTools is C++.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com