// -*- mode:doc; -*-
// vim: set syntax=asciidoc:

About OpenADK
=============

OpenADK is a tool that simplifies and automates the process of
building a complete Linux system for an embedded system, using
cross-compilation. ADK stands for appliance development kit.

In order to achieve this, OpenADK is able to generate a
cross-compilation toolchain, a root filesystem, a Linux kernel image
and a bootloader for your target. 

OpenADK is useful mainly for people working with embedded systems,
but can be used by people playing with emulators or small netbooks
needing a fast and small Linux system.

OpenADK can also be used to generate a cross-toolchain for any kind
of architecture and C library combination. It supports uClibc-ng, musl,
GNU libc and newlib. With newlib support you can build bare-metal toolchains
without need for Linux as operating system.

Embedded systems often use processors that are not the regular x86
processors everyone is used to having in his PC. 

OpenADK supports 44 different architectures:
AARCH64, Alpha, ARC, ARM, AVR32, Blackfin, C6X, CR16, CRIS, C-SKY, Epiphany, FR-V, FT32,
H8/300, HPPA, IA64, LM32, M32C, M32R, M68K, METAG, Microblaze, MIPS, MIPS64, MN10300,
Moxie, MSP430, NDS32, NIOS2, OR1K, PPC, PPC64, RISCV32, RISCV64, RX, S/390, SH, SPARC, SPARC64, Tile,
V850, X86, X86_64 and Xtensa.

OpenADK supports numerous processors and their variants; it also comes
with sample configurations for many embedded systems and emulators.

OpenADK is not a Linux distribution and there are no releases or binary
packages available. If you need something like that, better switch to
something else. OpenADK builds everything from source. There are only a
few exceptions to this rule (f.e. some bootloaders and firmware files for
wireless network cards).
