#---------------------------------------------------------------------------- # Project: Horizon # File: CTR.commondefs.om # # Copyright (C)2009-2011 Nintendo Co., Ltd. All rights reserved. # # These coded instructions, statements, and computer programs contain # proprietary information of Nintendo of America Inc. and/or Nintendo # Company Ltd., and are protected by Federal copyright law. They may # not be disclosed to third parties or copied or duplicated in any form, # in whole or in part, without the prior written consent of Nintendo. # # $Rev: 47349 $ #---------------------------------------------------------------------------- #---------------------------------------------------------------------------- # Global constant definition #---------------------------------------------------------------------------- # Application type setting global.APPTYPE_CARD = CARD global.APPTYPE_NAND = NAND global.APPTYPE_SD = SD global.APPTYPE_IMPORT = IMPORT global.APPTYPE_BOTH = BOTH global.APPTYPE_LIST = LIST global.APPTYPE_PATCH = PATCH global.CTR_APPTYPE = $(APPTYPE_CARD) # Extension settings global.EXT_CCI = .cci global.EXT_CXI = .cxi global.EXT_CIA = .cia global.EXT_CFA = .cfa global.EXT_BANNER = .bnr global.EXT_ICON = .icn global.EXT_CCL = .ccl global.EXT_CCL_E = .e.bin global.EXT_CCL_R = .r.bin private.EXT_EDIT = .edit private.EXT_RO = .cro private.EXT_RLT = .cro.rlt private.EXT_RR = .crr private.EXT_RS = .crs private.EXT_XRL = .xrl private.EXT_UAE = .uae private.EXT_FIL = .fil private.EXT_ELF2 = .axg # Tool path setting global.MAKEROM = $(ROOT_COMMANDS)$(DIRSEP)ctr_makerom32.exe global.MAKECIA = $(ROOT_COMMANDS)$(DIRSEP)ctr_makecia32.exe global.MAKEBANNER = $(ROOT_COMMANDS)$(DIRSEP)ctr_makebanner32.exe global.MAKECIAARCHIVE = $(ROOT_COMMANDS)$(DIRSEP)ctr_makeciaarchive32.exe private.MAKECRO = $(makePath $(ROOT_COMMANDS) ctr_makecro32.exe) private.MAKECRR = $(makePath $(ROOT_COMMANDS) ctr_makecrr32.exe) private.FROMELF = $(makePath $(RVCT_BINDIR) fromelf.exe) global.MAKEMETADATACONTENT = $(ROOT_COMMANDS)$(DIRSEP)ctr_makeMetaDataContent32.exe global.MAKEROMFLAGS = global.MAKECIAFLAGS = global.ROM_SPEC_FILE = $(makePath $(ROOT_RESOURCES) specfiles Application.rsf) global.BUILD_APPLICATION = false global.BUILD_KERNEL = false global.DEFAULT_FILTER = CTR-TS*MPCore* private.ORIGINAL_Elf = $(Elf) private.ORIGINAL_ExecutableElf = $(ExecutableElf) public.ELF_FLAGS_HOOK = $(EMPTY) # SYMBOL/INDEX/OFFSET public.MODULE_EXPORT_TYPE = SYMBOL # DEFAULT/RSO/REL/PLUGIN/LIBRARY public.MODULE_BUILD_TYPE = DEFAULT public.MODULE_ENABLE_OFFSET = true public.MODULE_CUSTOM_XRL = $(EMPTY) public.MODULE_ADD_DEBUG_INFO = true if $(not $(defined TRACE_PRODUCTCODE)) global.TRACE_PRODUCTCODE = export include $(makePlatformDefsPath commondefs.func) include $(makePlatformDefsPath commondefs.gl) #Load test rules if $(test -f $(makePlatformDefsPath commondefs.test)) include $(makePlatformDefsPath commondefs.test) export global.PROGRAM_BUILDER_MAP = $(Map) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_CARD),$(ProgramCard)) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_LIST),$(ProgramList)) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_NAND),$(ProgramImport)) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_SD),$(ProgramImport)) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_IMPORT),$(ProgramImport)) PROGRAM_BUILDER_MAP = $(PROGRAM_BUILDER_MAP.add $(APPTYPE_PATCH),$(ProgramPatch)) public.HORIZON_ADDITIONAL_RULES += fun() export DEFAULT_TARGETS SHADER_BINARY = $(EMPTY) export SHADER_BINARY # The full path of the vertex shader object file generated from .vsh is stored. if $(not $(defined SHADER_OBJECTS)) SHADER_OBJECTS = export SHADER_OBJECTS export SHADER_OBJECTS # The path to the built vertex shader object file is stored as a relative path from resources/shaders. if $(not $(defined SHADER_OBJECTS_PREBUILT)) SHADER_OBJECTS_PREBUILT = export SHADER_OBJECTS_PREBUILT export SHADER_OBJECTS_PREBUILT # The vertex shader source file (.vsh) is stored if $(defined SHADER_SOURCES) # Assemble the specified source file with SHADER_SOURCES in OMakefile, and get the full path to the .obj file # SHADER_OBJECTS = $(VertexShaderObjects $(SHADER_SOURCES), $(SHADER_ASFLAGS)) $(SHADER_OBJECTS) # If the shader binary name is not specified, use the default if $(not $(defined TARGET_SHADER)) TARGET_SHADER = shader export # Check whether the shader binary name was explicitly made a blank if $(TARGET_SHADER) # Link the object generated with OMakefile to a built object # Also copy the binary to under ROMFS_ROOT as necessary SHADER_BINARY = $(VertexShaderBinary $(TARGET_SHADER), $(SHADER_OBJECTS), $(SHADER_OBJECTS_PREBUILT), $(SHADER_LDFLAGS)) DEFAULT_TARGETS += $(SHADER_BINARY) else # If explicitly made blank, it is not linked DEFAULT_TARGETS += $(SHADER_OBJECTS) if $(defined CTR_BANNER_SPEC) foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS))) DEFAULT_TARGETS += $(Banner $(TARGET), $(CTR_BANNER_SPEC)) public.HORIZON_ADDITIONAL_RULES += fun() export DEFAULT_TARGETS export ExecutableElf export Elf ExecutableElf = $(ExecutableElfUsingRo) Elf = $(ElfUsingRo) if $(defined TARGET_MODULE) foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS))) private.list2nd = if $(IsModuleListValid) value $(if $(defined MODULE_LIST),$`(CollectXrl2nd $(TARGET), $`(MODULE_LIST))) $(if $(defined MODULE_LIST_XRL),$`(MODULE_LIST_XRL)) else value $(EMPTY) private.list4th = if $(IsModuleListValid) value $(if $(defined MODULE_LIST),$`(CollectXrl4th $(TARGET), $`(MODULE_LIST))) $(if $(defined MODULE_LIST_XRL),$`(MODULE_LIST_XRL)) else value $(EMPTY) private.flags = $(GetExportTypeOption $(MODULE_EXPORT_TYPE)) DEFAULT_TARGETS += $(BuildRo $(TARGET), $(TARGET_MODULE), $(SOURCES) $(OBJECTS), $(list2nd), $(list4th), $(flags)) if $(defined TARGET_PROGRAM) foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS))) if $(IsModuleListDefined) private.axf = $(file $(TARGET.getImageDirectory false)/$(TARGET_PROGRAM).axf) private.xrl3rd = $(file $(TARGET.getImageDirectory false)/$(TARGET_PROGRAM).3.xrl) private.list4th = if $(IsModuleListValid) value $(if $(defined MODULE_LIST),$`(CollectXrl4th $(TARGET), $`(MODULE_LIST))) $(if $(defined MODULE_LIST_XRL),$`(MODULE_LIST_XRL)) else value $(EMPTY) if $(IsModuleListValid) DEFAULT_TARGETS += $(BuildRr $(TARGET), $(TARGET_PROGRAM), $(MODULE_LIST), $(MODULE_ADD_DEBUG_INFO)) DEFAULT_TARGETS += $(BuildRs $(TARGET), $(TARGET_PROGRAM), $(axf), $(xrl3rd), $(list4th)) if $(defined TARGET_CRR) foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS))) DEFAULT_TARGETS += $(BuildRr $(TARGET), $(TARGET_CRR), $(MODULE_LIST), $(MODULE_ADD_DEBUG_INFO))