Project Home
Project Home
Wiki
Wiki
Project Information
Project Info
wiki2895: Packaging_BSP_640 (Version 4)

Packaging 6.4.0 BSP#

This page provides details on how to package a BSP for use with QNX Software Development Platform 6.4.0.

The BSP packaging has been greatly simplified for 6.4.0. If you based your work on a previously released BSP - there should not much to do, other than archiving and testing.

Manual Packaging#

Layout#

The BSP layout should be as described in the ''Building Embedded Systems'' guide.

module.tmpl files #

Ensure that each component has a module.tmpl file. These files are used by the IDE during BSP import.

The module.tmpl file format is defined here (Coming Soon!).

source.xml#

The root directory should have a source.xml file. The source.xml file is used by the IDE to import the BSP.

The format of the source.xml is documented here.

Edit this file to taste.

common.mk files#

Ensure that each common.mk file has INSTALL_ROOT_nto and USE_INSTALL_ROOT variables defined. The INSTALL_ROOT_nto variable needs to set to the relative path from the directory containing common.mk to the install sub-directory. The USE_INSTALL_ROOT variable needs to be set to 1.

For example in the src/hardware/i2c/common.mk makefile the variables will be defined as follows:

 INSTALL_ROOT_nto = $(PROJECT_ROOT)/../../../install
 USE_INSTALL_ROOT=1

$(PROJECT_ROOT) refers to the directory that contains the common.mk makefile.

Packaging the BSP#

The following is an overview of the steps required to create a BSP archive.

First run make clean from the root of the BSP development tree.

Make a copy of the BSP development tree using cp -r on Linux and self-hosted, on Windows use explorer or cp.

Delete any files from the copy that should not ship with the BSP, such as binary build output under the src sub directory, temporary files created during development, any build files under images, and any revision control files (such as .svn directories).

Also remove the source from the copy for any components for which the source is not being included.

If prebuilt binaries are required, build the master BSP, and copy the required prebuilt binaries from the development tree's install directory to the equivalent location under the copy's prebuilt directory.

Then archive the BSP using the following command from the root directory of the copy:

zip -r ../<bsp_packge_name>.zip . 

Test the BSP#

After creating a BSP package, test the resulting zip file:

  • by unzipping the archive in a temporary directory, building it, and loading it onto the target platform, and,
  • by importing and building the BSP with the IDE.

If there are any problems, fix the issue, and create a new archive following the steps above.

Automated Packaging #

In Progress ... we are in the process of porting the packagebsp to 6.4.0 ...