When a program needs to work on multiple hardware platforms, often times the source files are identical except for one or more assembly language routines that vary from processor to processor. In cases like this, you can create Select One subprojects that contain the processor-specific files so you can build the same program for multiple target processors.
Consider the following example. Suppose a program for SH processors depends on the following files:
indprogram.c
indprogram.h
traps.sh ;SH assembly language file
Suppose the same program compiled for Alpha depends on these files:
indprogram.c
indprogram.h
traps.alp ; Alpha assembly language file
You can use a Select One subproject, traps.bld, to build a program that uses only the processor-specific file, traps.sh or traps.alp, for the specified target processor.
If you have multiple files that are specific to a single processor, create multiple Select One subprojects. Suppose the program in the above example also uses bdriver.sh and bdriver.alp. In this case, you would need another Select One subproject, bdriver.bld.
Once you have defined your project for multiple platforms using a Select One subproject:
When you start the build and each time the Builder reaches a Select One subproject, it chooses the first file in the list that matches one of the extensions specified in the Select: field of the program. The other files in the Select One subproject are ignored.