gccarch
is a tool to query information about architectures
supported by the GNU Compiler Collection (GCC), as described
in the GCC documentation under
"Status of Supported Architectures from Maintainers' Point of View".
gccarch
makes it easier to query the information presented
in the ASCII-art table on that page.
Note that gccarch
treats question marks in the original table
as equivalent to an empty entry, meaning it does not differentiate
between a feature not being present on an architecture and a
feature being of ambiguous status for an architecture.
gccarch
supports the following flags, which are exclusive of each other.
-a <NAME>
/--arch <NAME>
: print what features are supported by an architecture.-A
/--archs
: print all architectures supported by GCC.-f <NAME>
/--feat <NAME>
: print all architectures which support a feature.-F
/--feats
: print all features tracked by GCC.
gccarch
also supports the usual convenience commands:
-h
/--help
: print the help text.-V
/--version
: print the current version.
gccarch
can be installed using a Rust toolchain. First you'll need to
install Rust. Then run the following:
$ cargo install gccarch
gccarch
should now be installed. You can confirm this with
cargo install --list | grep gccarch
. Make sure your Cargo binary
directory is in your PATH
environment variable.
gccarch
was made mostly as an excuse to practice working with
nom
(for parsing the ASCII table data) and bitvec
(for storing
the data about feature support for each architecture).
gccarch
is dual-licensed with the MIT and Apache 2.0 licenses.