1#!/usr/bin/env omake
2#----------------------------------------------------------------------------
3# Project:  NintendoWare
4# File:     OMakefile
5#
6# Copyright (C)2009-2010 Nintendo Co., Ltd./HAL Laboratory, Inc.  All rights reserved.
7#
8# These coded instructions, statements, and computer programs contain
9# proprietary information of Nintendo of America Inc. and/or Nintendo
10# Company Ltd., and are protected by Federal copyright law.  They may
11# not be disclosed to third parties or copied or duplicated in any form,
12# in whole or in part, without the prior written consent of Nintendo.
13#
14# $Revision:$
15#----------------------------------------------------------------------------
16
17NW_LIBRARIES += libnw_demo
18NW4C_LAYOUT_ARCHIVER = $(NW4C_ROOT)/tools/LayoutEditor/Converter/NW4C_LayoutArchiver.exe
19NW4C_LAYOUT_CONVERTER = $(NW4C_ROOT)/tools/LayoutEditor/Converter/NW4C_LayoutConverter.exe
20
21public.LayoutBinary(outdir, sources) =
22    $(outdir): $(sources)
23        rm -rf $(outdir)
24        mkdir -p $(outdir)
25        $(NW4C_LAYOUT_CONVERTER) $(sources) $(outdir)
26    return $(outdir)
27
28public.LayoutArchive(outfile, indir) =
29    $(outfile):
30        mkdir -p $(dirname $@)
31        CREATE_SUBDIRS = true
32        .SUBDIRS: $(indir)
33            $(NW4C_LAYOUT_ARCHIVER) -c . $@
34    return $(outfile)
35
36public.LayoutResources(rootDir) =
37    SHADER_ROOT = $(NW4C_ROOT)/shaders/
38    LYT_SHADER_FILES = $(addprefix $(SHADER_ROOT), $(NW_LYT_SHADER_NAMES))
39    OFILES[] =
40    foreach(file, $(LYT_SHADER_FILES))
41        OUTPUT = $(rootDir)/shaders/$(basename $(file))
42        OFILES[] += $(OUTPUT)
43        $(OUTPUT): $(file)
44            mkdir -p $(dirname $@)
45            cp $< $@
46        export OFILES
47    return $(OFILES)
48
49SAMPLE_FONTS[] =
50    $(file commonRes/font/sample.bcfnt)
51    $(file commonRes/font/sample.bcfna)
52
53COMMON_RESOURCES[] = $(SAMPLE_FONTS)
54
55public.SetupScript(script, outputDir, files) =
56    OFILES = $(addprefix $(outputDir)$(DIRSEP), $(files))
57    $(OFILES): $(COMMON_RESOURCES)
58        $(script)
59    return $(OFILES)
60
61.SUBDIRS: animShare archiveFont bounding commonRes extUserData group locationAdjust multiArc perspective simple simple2 tagGroupBind orthoStereo
62
63DefineDefaultRules()
64