Visit the National Instruments web site
Click on the advert above to visit the company web site

Product category: Design and Development Software
News Release from: AdaCore | Subject: GPRbuild
Edited by the Electronicstalk Editorial Team on 26 September 2007

Software automates multi-language
construction

Request your FREE weekly copy of the Electronicstalk email newsletter. News about Design and Development Software and more every issue. Click here for details.

GPRbuild allows developers to quickly and easily compile and link software written in a combination of languages including Ada, assembler, C, C++ and Fortran.

AdaCore has released GPRbuild, a software tool designed to help automate the construction of multi-language systems It removes complexity from multi-language development by allowing developers to quickly and easily compile and link software written in a combination of languages including Ada, assembler, C, C++ and Fortran

Easily extendable by users to cover new toolchains and languages, it is primarily aimed at projects of all sizes organised into subsystems and libraries and is particularly well-suited to compiled languages.

Designed to work both with any version of AdaCore's GNAT Pro development environment, GPRbuild features a built in knowledge base that understands the characteristics of compilers across a wide variety of languages.

Rather than having to maintain complex rules for building each component of a system, developers simply specify a source's location and compiler options.

GPRbuild automatically manages their integration into a complete system.

"With more and more projects becoming multi-language there is a growing need for a generic build utility that can make integration a less complex and more automatic process", according to Cyrille Comar, Managing Director, AdaCore.

"Developed following customer feedback, GPRbuild is simple and straightforward to operate, enabling users to concentrate on development rather than needing to worry about bringing multi-language applications together into a single system".

Previously developers needed to manually link components of multi-language applications, which relied on in-depth knowledge of each compiler involved as well as how they interact with each other.

This process had to be repeated if new versions of compilers were used as there was no simple way of collecting and sharing integration data.

GPRbuild's inherent knowledge base covers most commonly used toolchains and languages but also allows developers to add their own information to standardise native and cross-platform configuration.

GPRbuild manages a three-step build process - compilation, post-compilation (binding) and linking.

Each compilation unit of every subsystem is examined in turn, checked for consistency and compiled or recompiled when necessary by the appropriate compiler.

The recompilation decision is based on dependency information usually automatically captured by a former compilation.

Compiled units of a given language are passed to a language specific post-compilation tool where it exists.

It is also during this phase that objects are grouped into static or dynamic libraries as specified.

All units or libraries from all subsystems are passed to a linker tool specific to the set of toolchains used together.

GPRbuild takes as its main input a project file defining the build characteristics of the system under construction such as: which sources to use, where to find them, where to store the objects produced by the compiler and which options the various tools should be invoked with.

While GPRbuild is generic in the sense that it provides equivalent build features for all supported languages, it also allows the addition of new languages and new toolchains and provides a means of configuring aspects including: language characteristics (such as source naming conventions); toolchain characteristics (such as compiler invocation); subsystem characteristics (such as compiler default options); and source file characteristics (such as file specific compilation options).

GPRbuild is immediately available from October 2007 in beta, as part of the GNAT Pro subscription.

It runs on all GNAT Pro supported configurations.

AdaCore: contact details and other news
Email this article to a colleague
Register for the free Electronicstalk email newsletter
Electronicstalk Home Page

Search the Pro-Talk network of sites

Visit the National Instruments web site