1###############################################################################
2# VcmvTest makefile
3#
4# Copyright (C) 2001-2009 Nintendo.  All rights reserved.
5#
6# These coded instructions, statements, and computer programs contain
7# proprietary information of Nintendo of America Inc. and/or Nintendo
8# Company Ltd., and are protected by Federal copyright law.  They may
9# not be disclosed to third parties or copied or duplicated in any form,
10# in whole or in part, without the prior written consent of Nintendo.
11#
12#
13#
14# How to use
15#  - If you have changed the root directory name of VCMV library (default vcmc),
16#    MODULENAME should be modified to correspond to it.
17#
18#  - To create and execute a disc application:
19#    $ make dvdrun
20#	 Note: setndenv command may not be needed since dvd root is specified in a ddf file.
21#
22#  - To create and execute a NAND application:
23#    $ make nandrun
24#    Note: set DvdRoot to $(REVOLUTION_SDK_ROOT)/dvddata in advance using setndenv command.
25#
26#  - To buid release versions:
27#    $ make NDEBUG=TRUE dvdrun
28#    $ make NDEBUG=TRUE nandrun
29#    Defaults to DEBUG version
30#
31#  - To change content region:
32#    $ make REGION=us dvdrun
33#    Defaults to REGION=jp
34#
35#  - *Note*
36#    In the following two cases, you should type
37#    $ make clean
38#    before running.
39#    1. You changed the region.
40#    2. You changed the app type from DISC to NAND, or vice versa.
41#
42#���g�p���@
43#
44#�EVCMV���C�u�����̃��[�g�f�B���N�g���� vcmv ��ύX�����ꍇ�́A�����
45#  ���킹�āAMODULENAME ���C�����ĉ������B
46#
47#�E�f�B�X�N�A�v���P�[�V�������쐬���A���s����
48#  $ make dvdrun
49#  (����) ddf�t�@�C����dvdroot���w�肵�Ă��܂��̂ŁAsetndenv�R�}���h��
50#         ���s���Ȃ��Ă����삷��͂��ł��B
51#
52#�ENAND�A�v���P�[�V�������쐬���A���s����
53#  $ make nandrun
54#  (����) �\�߁Asetndenv�R�}���h��DvdRoot��$(REVOLUTION_SDK_ROOT)/dvddata��
55#         ���Ă����ĉ������B
56#
57#�E�����[�X�o�[�W�������r���h����ꍇ�́A
58#  $ make NDEBUG=TRUE dvdrun
59#  $ make NDEBUG=TRUE nandrun
60#  �Ƃ��ĉ������B�f�t�H���g�ł̓f�o�b�O�o�[�W�������r���h���܂��B
61#
62#�E�R���e���c�̃��[�W�����ݒ��ς���ꍇ�́A
63#  $ make REGION=us dvdrun
64#  �̂悤�ɂ��ĉ������B�f�t�H���g�ł� REGION=jp �ɂȂ��Ă��܂��B
65#
66#�E(����)
67#  �O��ƈقȂ郊�[�W�����Ŏ��s����ۂ�A�f�B�X�N�A�v���P�[�V������
68#  �r���h�������NAND�A�v���P�[�V�������r���h����ۂ́i�t�̏ꍇ���j
69#  $ make clean
70#  �����s����������
71#
72###############################################################################
73all:    setup build install
74
75
76PROJ_ROOT   = ..
77MODULENAME  = vcmv
78REGION      = jp
79
80
81include $(REVOLUTION_SDK_ROOT)/build/buildtools/commondefs
82
83ADDITIONAL_LIBS = \
84	$(INSTALL_ROOT)/lib/rso$(LIBSUFFIX) \
85	$(INSTALL_ROOT)/lib/cnt$(LIBSUFFIX) \
86	$(INSTALL_ROOT)/lib/tpl$(LIBSUFFIX) \
87	$(INSTALL_ROOT)/lib/homebuttonLib.vcmv$(LIBSUFFIX)
88
89HBM_RES = $(REVOLUTION_SDK_ROOT)/data/hbm/cnt/HomeButton.arc
90HBM_SE_RES = $(REVOLUTION_SDK_ROOT)/data/hbm/cnt/HomeButtonSe.arc
91
92OUTLINE_FNT = ./dvdroot/wad/WiiOutlineUniversalFont.arc
93
94ifdef NANDBUILD
95VCMV_LIB	= ./lib/vcmv_nandapp$(LIBSUFFIX)
96else
97VCMV_LIB	= ./lib/vcmv$(LIBSUFFIX)
98endif
99
100
101LINCLUDES += -I./include
102
103# CPPSRCS = vcmv_test.cpp
104CSRCS = vcmv_test.c
105
106ifdef NANDBUILD
107CCFLAGS += -DNANDAPP
108endif
109
110ifeq ($(REGION),jp)
111CCFLAGS += -DREGION_JPN
112else
113  ifeq ($(REGION),eu)
114  CCFLAGS += -DREGION_EUR
115  else
116    ifeq ($(REGION),kr)
117    CCFLAGS += -DREGION_KOR
118    HBM_RES = $(REVOLUTION_SDK_ROOT)/data/hbm/cnt/HomeButtonKOR.arc
119    OUTLINE_FNT = ./dvdroot/wad/WiiOutlineUniversalFont_KOR.arc
120    else
121      ifeq ($(REGION),cn)
122      CCFLAGS += -DREGION_CHN
123      HBM_RES = $(REVOLUTION_SDK_ROOT)/data/hbm/cnt/HomeButtonCHN.arc
124      OUTLINE_FNT = ./dvdroot/wad/WiiOutlineUniversalFont_CHN.arc
125      else
126      CCFLAGS += -DREGION_USA
127      endif
128    endif
129  endif
130endif
131
132BINNAMES =  VcmvTest
133TARGETS  = $(FULLBIN_ROOT)/$(BINNAMES)$(BINSUFFIX)
134
135LCF_FILE    = $(INC_ROOT)/revolution/eppc.$(ARCH_TARGET).lcf
136
137include $(REVOLUTION_SDK_ROOT)/build/buildtools/modulerules
138
139$(TARGETS): vcmv_test.o \
140                    $(REVOLUTION_LIBS) \
141                    $(ADDITIONAL_LIBS) \
142                    $(VCMV_LIB)
143
144
145
146#----------------------------------------------------------------------------
147# �f�B�X�N�A�v�����r���h���Ď��s����ɂ́A
148# $ make dvdrun
149# �Ƃ��܂��B
150dvdrun:
151	setcountrycode $(REGION)
152	$(MAKE)
153	$(MAKE) setupddf
154	export MY_PATH=`cygpath -aw .` ; ndrun $(TARGETS) ;
155
156
157setupddf:
158	cp ./sample.ddf $(TARGETS:.elf=.ddf)
159
160
161#----------------------------------------------------------------------------
162# NAND�A�v���Ƃ��ăr���h���Ď��s����ɂ́A
163# $ make nandrun
164# �Ƃ��܂��B
165nandapp:
166	$(MAKE) NANDBUILD=TRUE
167	makedol -f $(TARGETS) -d $(TARGETS:.elf=.dol)
168	ndstop ;
169	@if [ -d dvdroot/content5 ] ; then \
170		cd dvdroot/content5 ; \
171		darchD -c * content.arc ; \
172		mv content.arc ../wad/ ; \
173	fi
174	makewad -n $(TARGETS:.elf=) -l $(TARGETS:.elf=.dol),./dvdroot/wad/wwwlib-rvl_no_font.arc,$(OUTLINE_FNT),$(HBM_RES),./dvdroot/wad/content.arc,$(HBM_SE_RES)  -T 0,1,1,1,0,1 -m ./dvdroot/title.met
175	$(MAKE) nandinstall
176
177
178nandinstall:
179	@if [ -f $(TARGETS:.elf=.wad) ] ; then \
180		cp $(TARGETS:.elf=.wad) $(ROOT)/dvddata/viewer/ ; \
181	fi
182
183
184#----------------------------------------------------------------------------
185# setndenv�R�}���h��DvdRoot��$(REVOLUTION_SDK_ROOT)/dvddata�ɂȂ��Ă���
186# ���Ƃ�O��ɂ��Ă��܂��I
187nandrun:
188	setcountrycode $(REGION)
189	$(MAKE) nandapp
190	ndrun $(ROOT)/RVL/bin/tools/Nmenu.elf -a -il $(BINNAMES)$(WADSUFFIX)
191
192
193menurun:
194	setcountrycode $(REGION)
195	ndrun $(ROOT)/RVL/bin/tools/Nmenu.elf
196
197
198#----------------------------------------------------------------------------
199# NDEV���~���܂��B
200stop:
201	ndstop
202
203
204#----------------------------------------------------------------------------
205# CVS�ɃC���|�[�g����ꍇ�ɁA�]���Ȓ��Ԑ����t�@�C����f�B���N�g����|��
206# ���܂��B
207srconly:
208	@if [ -d bin ] ; then \
209		rm -rf bin ; \
210	fi
211	@if [ -d depend ] ; then \
212		rm -rf depend ; \
213	fi
214	@if [ -d obj ] ; then \
215		rm -rf obj ; \
216	fi
217	@if [ -f ./dvdroot/wad/content.arc ] ; then \
218		rm -f ./dvdroot/wad/content.arc ; \
219	fi
220
221
222#======== End of makefile ========#
223