Manual project creation is always an available option. It is more time-consuming, but it provides you more control over your project's contents and settings. Your  understanding of the project’s internals allows you to adjust settings of auto-created projects and to repair/reconfigure them in case of any trouble

Creating the Project

As mentioned at the start of Creating and Configuring Projects with Wind River Tornado, every C++test project is a CDT project; C++test just adds its own extensions/settings to every C/C++ project.

Configuring the Project

Next, you need to configure the appropriate build settings. This configuration is described in detail in Setting Project and File Options. Here, we will focus on those properties that are essential for configuring a Tornado-based project.

To review and modify settings:

  1. Right-click the project tree node for the project whose settings you want to review and modify, then choose Properties from the shortcut menu. The Properties dialog will open.
  2. Select Parasoft> C++test> Build Settings in the left pane.
  3. Review the following settings and modify them if needed. The settings are described below.

The first setting of concern is the Options Source setting. You can choose either Use options from Wind River Tornado project or Use options from a build system. The additional options available vary according to the selected option source.

Settings for "Use options from a build system"

When a project is first created, Use options from a build system is set by default as its options source. The following options are used to specify the project settings:

Settings for "Use options from Wind River Tornado project"

If you'd rather extract options directly from your Tornado project file, set the options source to Use options from Wind River Tornado project. The following options are used to specify the project settings:

Settings for Both Options Source Types

The remaining build settings are common to both types of option sources.

The Reset cache button lets you clear all scanned options and force rescanning on the next test action (see Accounting for Make Varieties for exceptions).

The Compiler settings area lets you specify the compiler set/tools used for compiling the project's sources and building the test executable (which we call the test relocatable, in the case of Tornado/VxWorks). Settings include:

The Options area lets you specify additional compilation and linking options; these are rarely used for regular host-based testing, but can be helpful for embedded testing. Settings include:

Accounting for Make Varieties

Every make tool is designed to interpret and execute Makefiles, but the features, options and behavior of different make versions may vary depending on the vendor, build, and even the direct application of the tool. When you use make, it’s important to be aware of its capabilities and drawbacks to avoid surprises. Often, it's difficult to diagnose problems by monitoring the make's output—especially when you know it works with another version.

The following two make options are used extensively in C++test, but may be unavailable in particular versions of make:

If your make doesn't support the -i option, then you must ensure that your build command will execute with no errors. Otherwise, you won't be able to scan options for all your project's files.

If the make doesn't support the -B option, then C++test will not rescan a previously-built project when one of the dependency files changes or when you click Reset cache—unless either you touch the appropriate source  (or all sources), or clean the project. The make is run, but it reports up-to-date kind of messages and doesn't execute anything. In this case, it might be useful to write special make targets that touch/clean things on the fly as scanning proceeds.

It is important to note that Tornado's GNU make-3.74 doesn't support the -B option!

Working with Tornado Projects' Rules

To build a project, Tornado executes special default or user-defined rules specified in it.

The default rules cannot be modified. Their names and number depend on the Tornado project type. For the downloadable application module (recommended for testing with C++test), there are three default rules:

Unlike the default rules, user-defined rules can be added, edited, or removed.

Rules exist independently from build configurations. Each build configuration has one rule selected to execute. Those rules are represented in Tornado-generated Makefiles.
You can build your project from the command line by executing "make <target>" from within the project's directory, where the target may come from a default or user-defined rule. (Remember that project Makefiles are regenerated when the Tornado environment executes the build command, so they may be outdated compared to the project ".wpj" file). The same applies to the C++test project build command. In most cases, you just need to append "<project_name>.out"