This project implements tools to make working with Ada projects easier. The main goal is project management and building. This is done through a BASH script called
adaprj. Another tool
adasrc exists for getting information from specific source files, not entire projects.
adasrc to do most of its work. These tools assume a few standard UNIX tools, some GCC tools, and GNAT, are installed. These are
adaprj should not seek to replace
adaprj is designed to require as little configuration as possible, and as of this writing, is not configurable in any way. It might seem strange to have a project manager that offers no configuration; how could this work? It largely has to do with a few assumptions, and the fact that nearly everything that would be configured, is already done so elsewhere. This would not be possible with most other languages.
- The directory is the project. Source files of the project may be present inside of subdirectories, but none will be present outside of the directory.
- Dependencies are installed in standard system paths. For UNIX systems, the libraries and ali files are located in
/usr/lib/and the source files are located in
- The project source files should all be built with the same flags. (This does not assume that every file has the same configuration pragmas however)
- It is desirable to build (almost) every package into a separate shared library. Explaination
- Binder code should be generated, compiled, and linked into the respective library, automatically.