1#!/usr/bin/env omake
2#----------------------------------------------------------------------------
3# Project: Horizon
4# File:    modulerules.om
5#
6# Copyright 2007-2009 Nintendo.  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# $Date:: 2010-09-14#$
15# $Rev: 25781 $
16# $Author: sasaki_yu $
17#----------------------------------------------------------------------------
18
19if $(not $(defined DEFAULT_TARGETS))
20    DEFAULT_TARGETS =
21    export
22
23export DEFAULT_TARGETS
24
25# .c/.cpp/.asm ���琶�����ꂽ�I�u�W�F�N�g�t�@�C���̃t���p�X���i�[�����B
26# OMakefile �ɂĒl���Z�b�g���鎖���ł���B
27# �lj�����I�u�W�F�N�g�t�@�C�����ꏏ�ɐ�������ꍇ�� TARGET ��x���]�������Ďg�����B
28if $(not $(defined OBJECTS))
29    OBJECTS =
30    export
31
32# .vsh ���琶�����ꂽ���_�V�F�[�_�I�u�W�F�N�g�t�@�C���̃t���p�X���i�[�����B
33if $(not $(defined SHADER_OBJECTS))
34    SHADER_OBJECTS =
35    export
36
37# �r���h�ςݒ��_�V�F�[�_�I�u�W�F�N�g�t�@�C���̃p�X���� resouces/shaders ����̑��΃p�X�Ŋi�[�����B
38if $(not $(defined SHADER_OBJECTS_PREBUILT))
39    SHADER_OBJECTS_PREBUILT =
40    export
41
42# ���_�V�F�[�_�̃\�[�X�t�@�C���i.vsh�j ���i�[�����
43if $(defined SHADER_SOURCES)
44    # OMakefile �� SHADER_SOURCES �Ŏw�肳�ꂽ�\�[�X�t�@�C�����A�Z���u������
45    # .obj �t�@�C���̃t���p�X����
46    SHADER_OBJECTS = $(VertexShaderObjects $(SHADER_SOURCES)) $(SHADER_OBJECTS)
47
48    # �V�F�[�_�o�C�i���̖��O���w�肳��Ă��Ȃ���΃f�t�H���g���̗p
49    if $(not $(defined TARGET_SHADER))
50        TARGET_SHADER = shader
51        export
52
53    # �V�F�[�_�o�C�i���̖��O�������I�ɋ�ɂ���Ă��邩���`�F�b�N
54    if $(TARGET_SHADER)
55        # OMakefile �Ő��������I�u�W�F�N�g�ƃr���h�ς݃I�u�W�F�N�g�������N����
56        # �܂��K�v�ɉ����� ROMFS_ROOT �ȉ��Ƀo�C�i�����R�s�[
57        SHADER_BINARY = $(VertexShaderBinary $(TARGET_SHADER), $(SHADER_OBJECTS), $(SHADER_OBJECTS_PREBUILT))
58        DEFAULT_TARGETS += $(SHADER_BINARY)
59        export
60    else
61        # �����I�ɋ�ɂ���Ă���΁A�����N�͍s��Ȃ�
62        DEFAULT_TARGETS += $(SHADER_OBJECTS)
63    export
64
65# ���C�u�������i�g���q�����j�̖��O���i�[�����
66if $(defined TARGET_LIBRARY)
67    foreach(TARGET, $(BUILDER.getLibraryTargets $(SUPPORTED_TARGETS)))
68        target_file = $(StaticLibrary $(TARGET), $(TARGET_LIBRARY), $(SOURCES) $(OBJECTS))
69        if $(TARGET.isFilterMatched)
70            DEFAULT_TARGETS += $(target_file)
71
72    export
73
74# true �Ȃ琶�������I�u�W�F�N�g�����C�u�����Ƃ��ĕێ�����
75if $(and $(defined INSTALL_OBJECTS), $(INSTALL_OBJECTS))
76    foreach(TARGET, $(BUILDER.getLibraryTargets $(SUPPORTED_TARGETS)))
77        target_file = $(StaticObject $(TARGET), $(SOURCES))
78        if $(TARGET.isFilterMatched)
79            DEFAULT_TARGETS += $(target_file)
80    export
81
82# �v���O�������i�g���q�����j�̖��O���i�[�����
83# �����Ŏw�肵���v���O�������� elf �t�@�C���� rom �t�@�C���̃t�@�C�����Ɏg�p�����B
84if $(defined TARGET_PROGRAM)
85    if $(defined UserRunProcess)
86        foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS)))
87            DEFAULT_TARGETS += $(UserRunProcess $(TARGET), $(TARGET_PROGRAM), $(SOURCES) $(OBJECTS))
88        export
89    else
90        foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS)))
91            DEFAULT_TARGETS += $(UserProcess $(TARGET), $(TARGET_PROGRAM), $(SOURCES) $(OBJECTS))
92        export
93    export
94
95if $(defined TARGET_TITLE)
96    if $(defined Title)
97        foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS)))
98            DEFAULT_TARGETS += $(Title $(TARGET), $(TARGET_TITLE), $(TITLE_CONTENTS))
99        export
100    export
101
102if $(defined CTR_BANNER_SPEC)
103    if $(defined Banner)
104        foreach(TARGET, $(BUILDER.getTargets $(SUPPORTED_TARGETS)))
105            DEFAULT_TARGETS += $(Banner $(TARGET), $(CTR_BANNER_SPEC))
106        export
107    export
108
109DefineDefaultRules()
110
111foreach(x, $(HORIZON_PRIVATE_RULES))
112    $(x $(EMPTY))
113