############################################################################### # Makefile for sampledemo # # Copyright 2005 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. # # $Id: makefile,v 1.4 2008/05/19 08:43:11 nakano_yoshinobu Exp $ ############################################################################### # All modules have "setup" and "build" as targets. System libraries # and demo programs also have an "install" target that copies the compiled # binaries to the binary tree (/$(ARCH_TARGET)). all: setup build install # commondefs must be included near the top so that all common variables # will be defined before their use. include $(REVOLUTION_SDK_ROOT)/build/buildtools/commondefs # module name should be set to the name of this subdirectory # DEMO = TRUE indicates that this module resides under the "demos" subtree. # The list of selectable paths can be found in modulerules. MODULENAME = osdemo DEMO = TRUE # CSRCS lists all C files that should be built # The makefile determines which objects are linked into which binaries # based on the dependencies you fill in at the bottom of this file CSRCS = stopwatchdemo.c \ allocdemo1-gettingmemory.c \ allocdemo2-oneheap.c \ allocdemo3-multipleheaps.c \ cachedemo.c \ timerdemo.c \ idlefunctiondemo.c \ threaddemo1.c \ threaddemo2.c \ threaddemo3.c \ threaddemo4.c \ threaddemo5.c \ fontdemo1.c \ fontdemo2.c \ report.c \ panic.c \ errordemo.c \ fpe.c \ lockedcachedemo1.c \ lockedcachedemo2.c \ crcdemo.c \ alarm.c CPPSRCS = cppsetupdemo.cpp # BINNAMES lists all binaries that will be linked. Note that no suffix is # required, as that will depend on whether this is a DEBUG build or not. # The final name of the binaries will be $(BINNAME)$(BINSUFFIX) BINNAMES = stopwatchdemo \ allocdemo1-gettingmemory \ allocdemo2-oneheap \ allocdemo3-multipleheaps \ cachedemo \ timerdemo \ idlefunctiondemo \ threaddemo1 \ threaddemo2 \ threaddemo3 \ threaddemo4 \ threaddemo5 \ fontdemo1 \ fontdemo2 \ report \ panic \ errordemo \ fpe \ cppsetupdemo \ lockedcachedemo1 \ lockedcachedemo2 \ crcdemo \ alarm # defining a linker command file will have the build system generate it # automatically and include it on the linker invocation line LCF_FILE = $(INC_ROOT)/revolution/eppc.$(ARCH_TARGET).lcf # modulerules contains the rules that will use the above variables # and dependencies below to construct the binaries specified. include $(REVOLUTION_SDK_ROOT)/build/buildtools/modulerules # Dependencies for the binaries listed in BINNAMES should come here # They are your typical makefile rule, with extra variables to ensure # that the names and paths match up. # $(FULLBIN_ROOT) is the location of the local bin directory # $(BINSUFFIX) depends on whether this is a debug build or not # $(REVOLUTION_LIBS) includes all the Revolution libraries. $(FULLBIN_ROOT)/cachedemo$(BINSUFFIX): cachedemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/timerdemo$(BINSUFFIX): timerdemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/stopwatchdemo$(BINSUFFIX): stopwatchdemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/allocdemo1-gettingmemory$(BINSUFFIX): \ allocdemo1-gettingmemory.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/allocdemo2-oneheap$(BINSUFFIX): \ allocdemo2-oneheap.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/allocdemo3-multipleheaps$(BINSUFFIX): \ allocdemo3-multipleheaps.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/idlefunctiondemo$(BINSUFFIX): idlefunctiondemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/threaddemo1$(BINSUFFIX): threaddemo1.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/threaddemo2$(BINSUFFIX): threaddemo2.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/threaddemo3$(BINSUFFIX): threaddemo3.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/threaddemo4$(BINSUFFIX): threaddemo4.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/threaddemo5$(BINSUFFIX): threaddemo5.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/fontdemo1$(BINSUFFIX): fontdemo1.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/fontdemo2$(BINSUFFIX): fontdemo2.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/report$(BINSUFFIX): report.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/panic$(BINSUFFIX): panic.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/errordemo$(BINSUFFIX): errordemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/fpe$(BINSUFFIX): fpe.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/lockedcachedemo1$(BINSUFFIX): lockedcachedemo1.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/lockedcachedemo2$(BINSUFFIX): lockedcachedemo2.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/alarm$(BINSUFFIX): alarm.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/crcdemo$(BINSUFFIX): crcdemo.o \ $(REVOLUTION_LIBS) $(FULLBIN_ROOT)/cppsetupdemo$(BINSUFFIX): cppsetupdemo.o \ $(REVOLUTION_LIBS) #======== End of makefile ========#