Systemize¶
Systemize is used for converting existing local
type repositories into system-type repositories.
Note
This command is not yet implemented.
Warning
Systemize, like the system
repository type, is experimental. It is increasingly possible that this feature will be either removed or completely re-worked in the future.
Usage¶
aura systemize [-repo-add/show] [-debug] [-assertions] [-optimize-1/2/3/size/debug] destination_path
The systemize
command builds a system repository subsystem, and installs it at a directory specified by destination_path
. This directory shall be a subdirectory of a repository that is designated as a system
type repository.
The systemize
command will ultimately create an Ada-specific shared library and a set of specifications (and in the case of GNAT, .ali
files) for each subsystem in the project, which will be installed into the matching subdirectories at destination_path
.
The systemize
command implicitly invokes compile.
Warning
Users of a system
repository cannot use configuration units for subsystems contained in that repository.
Note
The shared library objects generated by systemize
do not contain Ada elaboration code, or an Ada runtime. These libraries are intended to be used exclusively by Ada applications, and by a compiler that knows how to use these types of shared libraries.
When using a system library, the Ada compiler will generate the appropriate elaboration code to elaborate the the subsystems.
Options¶
- -repo-add
This causes a new repository configuration unit, pointing to the newly created system repository, to be added to the project.
- -repo-show
This causes the contents needed to create a repository configuration unit to be output to STDOUT.
This is the default.
- -debug, -assertions -optimize-(1/2/3/size/debug)
These options are passed to the
compile
invocation. See compile