1###############################################################################
2# Makefile for THP demo
3#
4# Copyright (C)2002-2006 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# $Log: makefile,v $
13# Revision 1.1  02/03/2006 10:00:44  aka
14# Imported from Dolphin tree.
15#
16#
17#   6	  03/11/25 11:24 Dante
18#   Japanese to English translation of comments and text strings
19#
20#   5	  03/10/01 9:19a Akagi
21#   Added checking whether MUSYX_ROOT is defined or not.
22#
23#   4	  02/05/31 9:08a Suzuki
24#   add EXTRASAMPLE flag
25#
26#   3	  02/05/14 11:58a Suzuki
27#   Added the description for THPPlayerStrmAX and THPPlayerStrmMX.
28#
29#   2	  02/02/28 6:32p Akagi
30#   enabled to use with MusyX/AX by Suzuki-san (IRD).
31#
32#   1	  02/01/16 10:50a Akagi
33#   Initial revision made by Suzuki-san (IRD).
34#
35# $NoKeywords: $
36#
37###############################################################################
38
39##################################
40# QUICK START INSTRUCTIONS
41# Type "make" at /revolution/build/tests/gx to build DEBUG versions of all tests.
42# Type "make NDEBUG=TRUE" to build OPTIMIZED versions of all tests
43# Type "make lit-basicD.bin" to build DEBUG version of just lit-basic
44# Type "make NDEBUG=TRUE lit-basic.bin" to build OPTIMIZED version of
45# just lit-basic
46#
47# To add another test
48# 1. Add the .c files to CSRCS to make sure they are built
49# 2. Add the binary name (no suffix) to BINNAMES
50# 3. Add a dependency rule for this executable at the bottom of this file
51##################################
52
53
54# All modules have "setup" and "build" as targets.  System libraries
55# and demo programs also have an "install" target that copies the compiled
56# binaries to the binary tree (/revolution/$(ARCH_TARGET)).
57# tests are NOT installed into the binary release directory.
58
59all:	setup build install
60
61# commondefs must be included near the top so that all common variables
62# will be defined before their use.
63
64include $(REVOLUTION_SDK_ROOT)/build/buildtools/commondefs
65
66# Module name should be set to the name of this subdirectory
67# DEMO = TRUE indicates that this module resides under the "demos" subtree.
68# The list of selectable paths can be found in modulerules.
69
70MODULENAME	= thpdemo
71DEMO		= TRUE
72
73# Add thp(D).a into REVOLUTION_LIBS
74
75REVOLUTION_LIBS	+= $(INSTALL_ROOT)/lib/thp$(LIBSUFFIX)
76
77# Common sources built for both EPPC and MAC
78# CSRCS lists all C files that should be built
79# The makefile determines which objects are linked into which binaries
80# based on the dependencies you fill in at the bottom of this file
81
82CSRCS =		THPSimple/main.c			\
83		THPSimple/THPSimple.c			\
84		THPSimple/THPDraw.c			\
85		THPSimple/axseq.c			\
86		THPPlayer/main.c			\
87		THPPlayer/THPPlayer.c			\
88		THPPlayer/THPVideoDecode.c		\
89		THPPlayer/THPAudioDecode.c		\
90		THPPlayer/THPRead.c			\
91		THPPlayer/THPDraw.c			\
92		THPPlayerStrmAX/main.c			\
93		THPPlayerStrmAX/THPPlayer.c		\
94		THPPlayerStrmAX/THPVideoDecode.c	\
95		THPPlayerStrmAX/THPAudioDecode.c	\
96		THPPlayerStrmAX/THPRead.c		\
97		THPPlayerStrmAX/THPDraw.c
98
99# Common binaries linked for both EPPC and MAC
100# BINNAMES lists all binaries that will be linked.  Note that no suffix is
101# required, as that will depend on whether this is a DEBUG build or not.
102# The final name of the binaries will be $(BINNAME)$(BINSUFFIX)
103
104BINNAMES =	THPSimple				\
105		THPPlayer				\
106		THPPlayerStrmAX
107
108# Defining a linker command file will have the build system generate it
109# automatically and include it on the linker invocation line
110
111LCF_FILE	= $(INC_ROOT)/revolution/eppc.$(ARCH_TARGET).lcf
112
113# modulerules contains the rules that will use the above variables
114# and dependencies below to construct the binaries specified.
115
116include $(REVOLUTION_SDK_ROOT)/build/buildtools/modulerules
117
118# Dependencies for the binaries listed in BINNAMES should come here
119# They are your typical makefile rule, with extra variables to ensure
120# that the names and paths match up.
121# $(FULLBIN_ROOT) is the location of the local bin directory
122# $(BINSUFFIX) depends on whether this is a debug build or not
123# $(REVOLUTION_LIBS) includes all the Revolution libraries.
124
125$(FULLBIN_ROOT)/THPSimple$(BINSUFFIX):	THPSimple/main.o		\
126					THPSimple/THPSimple.o		\
127					THPSimple/THPDraw.o		\
128					THPSimple/axseq.o		\
129					$(REVOLUTION_LIBS)
130
131$(FULLBIN_ROOT)/THPPlayer$(BINSUFFIX):	THPPlayer/main.o		\
132					THPPlayer/THPPlayer.o		\
133					THPPlayer/THPVideoDecode.o	\
134					THPPlayer/THPAudioDecode.o	\
135					THPPlayer/THPRead.o		\
136					THPPlayer/THPDraw.o		\
137					THPSimple/axseq.o		\
138					$(REVOLUTION_LIBS)
139
140$(FULLBIN_ROOT)/THPPlayerStrmAX$(BINSUFFIX): THPPlayerStrmAX/main.o		\
141					     THPPlayerStrmAX/THPPlayer.o	\
142					     THPPlayerStrmAX/THPVideoDecode.o	\
143					     THPPlayerStrmAX/THPAudioDecode.o	\
144					     THPPlayerStrmAX/THPRead.o		\
145					     THPPlayerStrmAX/THPDraw.o		\
146					     $(REVOLUTION_LIBS)
147
148#======== End of makefile ========#
149