12.1.8. Makefiles

Makefiles are used to describe the relationships between files in your application program and provide commands for building these files. They provide a database of rules detailing information about files and specifying how they are used in a build. Makefiles are used, therefore, to automate the build process. Projects can wrap user-defined makefiles, or you can edit RealView Debugger templates to customize your build process, for example to use specific source control.

Standard and Library project makefiles

Creating a Standard or Library project means that makefiles are built for you using RealView Debugger templates.

When you configure and save your project settings file, RealView Debugger uses a template file named gen_***.mk to generate the required makefile for your project. Different templates are installed depending on the installation type, that is Custom or Typical, and the licenses you possess.

The template name is chosen based on the toolchain you specify when you create the project, that is the target processor and build tools. For example, the template gen_arx.mk is used for building executable files and libraries with ARM compilation tools to run on ARM architecture-based processors. This template provides the ARM-C2 specific makefile layouts for the genmake utility used by RealView Debugger.

You can copy and edit the template file to add details specific to your requirements. If you do this, you can then specify the new template file in your project BUILD group.

The file program_directory\etc\startup.mk is used by the make utility when working with projects on Windows to define default settings.

A makefile is created in your project directory for each build target configuration. The following makefiles are created for the default build target configurations, where projectname is the name of your project:

  • projectname_Debug.mk

  • projectname_DebugRel.mk

  • projectname_Release.mk.

Custom project makefiles

Creating a Custom project means that you can use your own makefiles. RealView Debugger does not automatically generate makefiles for a Custom project.

See Steps for creating a Custom project for instructions on creating Custom projects.


When you create a Custom project, RealView Debugger specifies a default make command, that includes the control character $e. To successfully build your Custom project, remove the $e control character, and use your own arguments as required. See Using your own make command.

Copyright © 2003, 2004 ARM Limited. All rights reserved.ARM DUI 0234B