| Build Variable |
Description |
Default Value |
SUPPORTED_TARGETS ►IMPORTANT |
Sets the targets supported by the program. The only specifiable hardware is TS, and the specifiable optimization options are fast and small.
*.fast |
Optimized for speed |
*.small |
Optimized for size |
Example (to support only speed-optimized builds on TS boards):
SUPPORTED_TARGETS = CTR-TS.Process.MPCore.fast |
Example (to support both fast and small builds on TS boards):
SUPPORTED_TARGETS = CTR-TS.Process.MPCore.* |
|
None. |
CTR_APPTYPE |
Sets the type of CTR application to create. You can specify multiple types by delimiting them with spaces.
CARD |
Creates a CCI file for card-based software. |
NAND |
Creates a CIA file for DLP child devices. |
| SD |
Creates a CIA file for downloadable applications. |
| LIST |
Creates a CCL file. |
| CARD |
SOURCES |
Enumerates the source files to be compiled/assembled. The build system attempts to generate object files using the compiler or assembler that is appropriate for a given file extension (for example, .c, .cpp, or .s).
|
None. |
INCLUDES |
Specifies the directory if there are any include files specific to this program. By default, this variable is set to the $CTR-SDK/include and $OMAKEROOT/include directories, so any additional settings must be specified using the += operator.
|
$CTR-SDK/include $OMakeroot/include |
LIBS |
Specifies the libraries to link. The filename extension is not needed. The build system automatically links several standard libraries, but any special libraries required for a specific program must be explicitly specified here. Usually, a fast build will have the libnn_xxx.fast library linked in as the library matching the optimization option, but it is also possible to explicitly specify the optimization option, as for libnn_xxx.fast. This variable is set by default to the standard library, so any additional settings must be specified using the += operator.
Example (to link against the additional library libnn_xxx):
|
Standard library |
LIBFILES |
Specifies additional libraries to link to this program.
Example (to link the additional library $TMP/libraries/CTR-TS.Process.MPCore/[noopt|release|verbose]/libnn_xxx.[fast|small].a):
LIBFILES = $`(addprefix $(TMP)$(DIRSEP)libraries$(DIRSEP)$(config.getTargetSubDirectory true)$(DIRSEP), libnn_xxx) |
|
None. |
TARGET_PROGRAM |
Specifies the name of the image to generate. The filename extension is not needed. Links the object files created by compiling/assembling the source files specified in SOURCES, and creates the target file. The extension of the created target file is normally cci.
|
None. |
TARGET_LIBRARY |
Specifies the names of the library to build. The filename extension is not needed. Concatenates the object files created by compiling/assembling the source files specified in SOURCES, creating a library.
|
None. |
CCFLAGS |
Set this variable when you want to change the options passed to the compiler when compiling source files or creating linker script files. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
CCFLAGS_WARNING ►CAUTION |
Set this variable when you want to change the warning options passed to the compiler. The warning options should be set always using this variable, not CCFLAGS. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
CCFLAGS_DEV_OPT |
Use this variable to set the optimization level of a development build of an application, when you want the level to be different for development builds. The specified optimization level does not affect release or debug builds.
|
See commondefs.cctype.RVCT.om for more information. |
CFLAGS |
Set this variable when you want to change the options passed to the compiler only when compiling C files. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
CXXFLAGS |
Set this variable when you want to change the options passed to the compiler only when compiling C++ files. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
ASFLAGS |
Set this variable when you want to change the options passed to the compiler only when compiling assembler files. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
LDFLAGS |
Set this variable when you want to change the options passed to the linker. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
LDFLAGS_WARNING |
Set this variable when you want to change the warning options passed to the linker.
This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.cctype.RVCT.om for more information. |
ROM_SPEC_FILE |
Specifies a file describing the contents of a ROM file (RSF:RomSpecFile). The file specified here is passed to ctr_makerom, and the CCI files are created based on the settings in this file.
|
$CTR-SDK/resource/specfiles/Application.rsf |
DESCRIPTOR |
Specifies the DESC file. The file specified here is passed to ctr_makerom, and the CCI files are created based on the settings in this file.
|
$CTR-SDK/resource/specfiles/Application.desc |
MAKEROMFLAGS |
Set this variable when you want to change the options passed to ctr_makerom. This variable is set to the required options by default, so any additional options must be specified using the += operator.
|
See commondefs.om for more information. |
ROMFS_ROOT |
Specifies the value passed to ctr_makerom in -DROMFS_ROOT=. The value can be referenced in RSF by using $(ROMFS_ROOT).
|
None. |
TITLE |
Specifies the value passed to ctr_makerom in -DTITLE=. The value can be referenced in RSF by using $(TITLE).
|
CtrApp |
CTR_BANNER |
Specifies the banner file. The value specified here is passed to ctr_makerom by using the -banner option. CTR_NO_BANNER = true or CTR_NO_BANNER_ICON must be specified if not using banners, because a default value is used even if this specification is omitted. You cannot specify both this setting and CTR_BANNER_SPEC.
|
$CTR-SDK/resources/banner/Default.bnr |
CTR_ICON |
Specifies the icon file. The value specified here can be passed to ctr_makerom by using the -icon option. CTR_NO_BANNER_ICON = true must be specified if not using icons, because a default value is used even if this specification is omitted. You cannot specify both this setting and CTR_BANNER_SPEC.
|
$CTR-SDK/resources/banner/Default.icn |
CTR_NO_BANNER |
This variable must be set to true if not using banners.
|
None. |
CTR_NO_BANNER_ICON |
This variable must be set to true if not using banners or icons.
|
None. |
CTR_BANNER_SPEC |
Specifies the spec file to use as input to ctr_makebanner. Data generated by ctr_makebanner can be input as is to ctr_makerom. This variable cannot be used at the same time as CTR_BANNER or CTR_ICON.
|
None. |
SHADER_SOURCES |
Enumerates the vertex shader assembler files (.vsh) to be compiled/assembled.
|
None. |
SHADER_INCLUDES |
Specifies the directory containing include files referenced when compiling vertex shader assembler files. By default, this variable is set to the $CTR-SDK/resources directory, so any additional settings must be specified using the += operator.
|
$CTR-SDK/resources |
SHADER_OBJECTS |
Enumerates the object files to be added during the shader binary build.
|
None. |
SHADER_OBJECTS_PREBUILT |
Enumerates the object files to be added during the shader binary build. This variable is only used for reserved geometry shaders. Specify the object files using paths relative to $CTR-SDK/resources/shader.
|
None. |
TARGET_SHADER |
Specifies the names of the shader binary (.shbin) files that are ultimately output. The filename extension is not needed. If you explicitly specify an empty name, the build system will assemble without linking.
|
shader |
SHBIN_INSTALL_ROOT |
Specifies the installation root for the shader binary file.
|
Value of ROMFS_ROOT |
SHADER_BINARY |
Sets the full path of the shader binary file. To use, reference after referencing modulerules.
|
Full path to .shbin file |
SHADER_ASFLAGS |
Set this variable to change the options assigned to the assembler when assembling vertex shader assembly language files (VSH files). If you specify the -I or -O options, however, use the respective build options. Specify this before referencing modulerules. Although currently nothing is set by default, use the "+=" operator to specify additional options.
|
None. |
SHADER_LDFLAGS |
Set this variable when you want to change the options passed to the vertex shader linker. If you specify the -I or -O options, however, use the respective build options. Specify this before referencing modulerules. An option is set in this variable by default. Use the "+=" operator to specify additional options.
|
-M |
INSTALL_ROOT ►CAUTION |
Specifies the absolute or relative path to the directory to which results should be installed. Use to change the installation directory for libraries and target files. This variable must be set before the commondefs file is referenced. (Setting the variable within OMakeroot is one way of ensuring this.)
Example (to change the installation directory to .tmp):
|
None. |
HOST_IO |
If set to true, HostIO is enabled regardless of build type.
|
For release builds: false. Otherwise: true. |
TARGET_BUILDTYPES |
Specifies the build type specified on the command line. Use after referencing commondefs, such as to exclude a specific build type.
Example (excluding the debug build):
TARGET_BUILDTYPES = $(filter Release Development, $(TARGET_BUILDTYPES)) |
|
None. |
CHILD_APPS |
Specifies the child program to use for Download Play distribution.
Input Example (From SampleDemos/dlp/SimpleServer/OMakefile. This example specifies a child program matching the target and the build type.)
CHILD_APPS[] =
../Child_0/images/$(BUILD_TARGET_DIR)/$(BUILD_TYPE_DIR)/Child_0.cia
../Child_1/images/$(BUILD_TARGET_DIR)/$(BUILD_TYPE_DIR)/Child_1.cia |
|
None. |
MANUAL_DIR |
Use this to add an e-manual to the application. Whether it is necessary to add an e-manual to the application depends on the application.
For MANUAL_DIR, specify the directory where the e-manual is stored. Place one file in this directory and name the file Manual.bcma.
Input Example (From SampleDemos/demo1/OMakefile.)
|
None. |