mirror of
https://github.com/rvtr/ctr_firmware.git
synced 2025-10-31 07:51:08 -04:00
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_firmware@4 b871894f-2f95-9b40-918c-086798483c85
100 lines
3.1 KiB
Makefile
100 lines
3.1 KiB
Makefile
#! make -f
|
|
#----------------------------------------------------------------------------
|
|
# Project: CtrBrom - modulerules - common rules for build system
|
|
# File: modulerules
|
|
#
|
|
# Copyright 2008 Nintendo. 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.
|
|
#
|
|
# $Log: $
|
|
# $NoKeywords: $
|
|
#----------------------------------------------------------------------------
|
|
ifndef BROMSDK_MODULERULES_
|
|
|
|
|
|
ifdef MAKEFIRM_ARM11
|
|
MAKEROM_ARM11 = $(MAKEFIRM_ARM11)
|
|
endif
|
|
ifdef MAKEFIRM_ARM9
|
|
MAKEROM_ARM9 = $(MAKEFIRM_ARM9)
|
|
endif
|
|
|
|
#----------------------------------------------------------------------------
|
|
### CTR-modulerules
|
|
#
|
|
include $(CTRFIRM_ROOT)/build/buildtools/modulerules
|
|
|
|
#----------------------------------------------------------------------------
|
|
|
|
#
|
|
# MAKENORFIRM / MAKENANDFIRM / MAKEGCDFIRM
|
|
#
|
|
|
|
MAKEFIRM_ARM9 ?= $(MAKEROM_ARM9)
|
|
MAKEFIRM_ARM7 ?= $(MAKEROM_ARM7)
|
|
|
|
MAKEFIRM_DEFS += -DFIRM_ROOT='$(BROM_CTRFIRM_ROOT)' \
|
|
-DMAKEFIRM_ARM11='$(basename $(MAKEFIRM_ARM11))' \
|
|
-DMAKEFIRM_ARM9='$(basename $(MAKEFIRM_ARM9))' \
|
|
-DMAKEFIRM_RSA_PRVKEY='$(MAKEFIRM_RSA_PRVKEY)' \
|
|
|
|
SDEPENDS_BIN += $(MAKEFIRM_RSA_PRVKEY)
|
|
|
|
|
|
.PHONY: bromtop bromlib bromdbg
|
|
|
|
bromtop:
|
|
@$(MAKE) -C $(CTRBROM_ROOT)
|
|
|
|
bromlib:
|
|
@$(MAKE) -C $(CTRBROM_ROOT)/build/libraries
|
|
|
|
bromdbg:
|
|
@$(TOUCH) $(BROM_LDEPENDS_DBG)
|
|
@$(MAKE) -C $(CTRBROM_ROOT)/build/libraries/os
|
|
@+$(REMAKE)
|
|
|
|
|
|
# .srl
|
|
# .nor
|
|
$(BINDIR)/%.srl $(BINDIR)/%.nor: $(SDEPENDS_BIN) $(FIRM_SPEC) $(LDEPENDS_BIN) $(EDEPENDS_BIN) $(MAKEFILE) $(MAKENORFIRM) $(MAKEFIRM_RSA_PRVKEY)
|
|
$(MAKENORFIRM) $(MAKEFIRM_FLAGS) $(MAKEFIRM_DEFS) $(FIRM_SPEC) $@
|
|
|
|
# .nand
|
|
$(BINDIR)/%.srl $(BINDIR)/%.nand: $(SDEPENDS_BIN) $(FIRM_SPEC) $(LDEPENDS_BIN) $(EDEPENDS_BIN) $(MAKEFILE) $(MAKENANDFIRM) $(MAKEFIRM_RSA_PRVKEY)
|
|
$(MAKENANDFIRM) $(MAKEFIRM_FLAGS) $(MAKEFIRM_DEFS) $(FIRM_SPEC) $@
|
|
|
|
# .gcd
|
|
$(BINDIR)/%.srl $(BINDIR)/%.gcd: $(SDEPENDS_BIN) $(FIRM_SPEC) $(LDEPENDS_BIN) $(EDEPENDS_BIN) $(MAKEFILE) $(MAKEGCDFIRM) $(MAKEFIRM_RSA_PRVKEY)
|
|
$(MAKEGCDFIRM) $(MAKEFIRM_FLAGS) $(MAKEFIRM_DEFS) $(FIRM_SPEC) $@
|
|
|
|
# .sbin
|
|
$(BINDIR)/$(TARGET_BIN_BASENAME).sbin: $(BINDIR)/$(TARGET_BIN_BASENAME).axf $(BINDIR)/$(TARGET_BIN_BASENAME).txt
|
|
objcopy -I elf32-little -O binary $< $@
|
|
|
|
# $(FROMELF) --bin -o $@ $<
|
|
|
|
|
|
# .padbin
|
|
$(BINDIR)/$(TARGET_BIN_BASENAME).padbin: $(BINDIR)/$(TARGET_BIN_BASENAME).sbin
|
|
objcopy -I binary -O binary --pad-to $(EXO_SBIN_SIZE) --gap-fill 0x00 $< $@
|
|
|
|
|
|
# .txt
|
|
$(BINDIR)/$(TARGET_BIN_BASENAME).txt: $(BINDIR)/$(TARGET_BIN_BASENAME).axf
|
|
$(FROMELF) --32x1 -cd -o $@ $<
|
|
|
|
# .exo
|
|
$(BINDIR)/$(TARGET_BIN_BASENAME).exo: $(BINDIR)/$(TARGET_BIN_BASENAME).sbin
|
|
objcopy -I binary -O srec $< $@
|
|
|
|
#----------------------------------------------------------------------------
|
|
BROMSDK_MODULERULES_ = TRUE
|
|
endif # BROMSDK_MODULERULES_
|
|
#----- End of modulerules -----
|