1############################################################################### 2# Makefile for cxdemo 3# 4# Copyright 2005 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# $Id: makefile,v 1.3 2008/09/05 09:40:33 nrs_buildsystem Exp $ 13############################################################################### 14 15# All modules have "setup" and "build" as targets. System libraries 16# and demo programs also have an "install" target that copies the compiled 17# binaries to the binary tree (/$(ARCH_TARGET)). 18 19all: 20 $(MAKE) setup 21 $(MAKE) build 22 $(MAKE) install 23 24# module name should be set to the name of this subdirectory 25# DEMO = TRUE indicates that this module resides under the "demos" subtree. 26# The list of selectable paths can be found in modulerules. 27 28MODULENAME = cxdemo 29DEMO = TRUE 30 31 32# commondefs must be included near the top so that all common variables 33# will be defined before their use. 34 35include $(REVOLUTION_SDK_ROOT)/build/buildtools/commondefs 36 37 38# additional libraries not defined as REVOLUTION_LIBS 39TPL_LIB = $(INSTALL_ROOT)/lib/tpl$(LIBSUFFIX) 40CX_LIB = $(INSTALL_ROOT)/lib/cx$(LIBSUFFIX) 41 42 43# CSRCS lists all C files that should be built 44# The makefile determines which objects are linked into which binaries 45# based on the dependencies you fill in at the bottom of this file 46 47CSRCS = \ 48 cx_uncompress.c \ 49 cx_uncompress_stream.c 50 51 52# BINNAMES lists all binaries that will be linked. Note that no suffix is 53# required, as that will depend on whether this is a DEBUG build or not. 54# The final name of the binaries will be $(BINNAME)$(BINSUFFIX) 55 56BINNAMES = \ 57 cx_uncompress \ 58 cx_uncompress_stream 59 60 61# defining a linker command file will have the build system generate it 62# automatically and include it on the linker invocation line 63 64LCF_FILE = $(INC_ROOT)/revolution/eppc.$(ARCH_TARGET).lcf 65 66 67# modulerules contains the rules that will use the above variables 68# and dependencies below to construct the binaries specified. 69 70include $(REVOLUTION_SDK_ROOT)/build/buildtools/modulerules 71 72 73# Dependencies for the binaries listed in BINNAMES should come here 74# They are your typical makefile rule, with extra variables to ensure 75# that the names and paths match up. 76# $(FULLBIN_ROOT) is the location of the local bin directory 77# $(BINSUFFIX) depends on whether this is a debug build or not 78# $(REVOLUTION_LIBS) includes all the Revolution libraries. 79 80$(FULLBIN_ROOT)/cx_uncompress$(BINSUFFIX): cx_uncompress.o \ 81 $(REVOLUTION_LIBS) $(TPL_LIB) $(CX_LIB) 82 83$(FULLBIN_ROOT)/dvddemo2$(BINSUFFIX): dvddemo2.o \ 84 $(REVOLUTION_LIBS) $(TPL_LIB) $(CX_LIB) 85 86$(FULLBIN_ROOT)/cx_uncompress_stream$(BINSUFFIX): cx_uncompress_stream.o \ 87 $(REVOLUTION_LIBS) $(TPL_LIB) $(CX_LIB) 88 89#======== End of makefile ========# 90