1#============================================================================ 2# Project: RevolutionSDK Extensions - buildtools 3# File: commondefs.rex 4# 5# Global common definitions for RevolutionNET build system 6# 7# Copyright 2006 Nintendo. All rights reserved. 8# 9# These coded instructions, statements, and computer programs contain 10# proprietary information of Nintendo of America Inc. and/or Nintendo 11# Company Ltd., and are protected by Federal copyright law. They may 12# not be disclosed to third parties or copied or duplicated in any form, 13# in whole or in part, without the prior written consent of Nintendo. 14# 15# $Log: commondefs.rex,v $ 16# Revision 1.60 2007/11/16 02:53:24 seiki_masashi 17# Small fix 18# 19# Revision 1.59 2007/11/15 07:22:16 seiki_masashi 20# Added the ssl library to the link targets 21# 22# Revision 1.58 2007/11/15 06:31:05 tokunaga_yasuhiro 23# Changed so that each target refers to NdevRun.ddf by default 24# 25# Revision 1.57 2007/10/25 02:49:08 okubata_ryoma 26# Changes for the release of RevoEX 2.1 PR. 27# 28# Revision 1.56 2007/10/10 08:37:53 seiki_masashi 29# Added the MPDS library 30# 31# Revision 1.55 2007/08/09 09:03:02 okubata_ryoma 32# Updates to generate RevoEX release version with support for RevoSDK 3.1 RC2. 33# 34# Revision 1.54 2007/07/20 04:09:50 okubata_ryoma 35# Changed TitleID to 33. 36# 37# Revision 1.53 2007/06/15 05:45:04 hirose_kazuki 38# Support for NWC24 script build. 39# 40# Revision 1.52 2007/05/11 03:15:31 okubata_ryoma 41# Changed TitleID to 31. 42# 43# Revision 1.51 2007/04/10 02:04:57 hirose_kazuki 44# Changed TitleID to 30. 45# 46# Revision 1.50 2007/03/01 13:59:50 seiki_masashi 47# TITLEID 17->21 48# 49# Revision 1.49 2007/02/09 04:19:53 yosizaki 50# added ntr.a mpfs.a 51# 52# Revision 1.48 2006/12/05 07:30:32 yasu 53# TITLEID 14->17 54# 55# Revision 1.47 2006/11/10 09:15:13 yasu 56# Set default TITLEID to 14. 57# 58# Revision 1.46 2006/11/08 02:31:36 yasu 59# Set default firmware to 13 series. 60# 61# Revision 1.45 2006/10/27 12:32:30 yasu 62# Changed default firmware ID from 8 to 12. 63# 64# Revision 1.44 2006/10/18 13:09:54 yasu 65# Changed the default firmware to 8 series. 66# 67# Revision 1.43 2006/10/13 07:02:37 yasu 68# Revised the rvl.bin selection. 69# 70# Revision 1.42 2006/09/29 07:03:34 yasu 71# Set default firmware to 10 series. 72# 73# Revision 1.41 2006/09/29 02:12:56 yasu 74# Revised the apploader install process. 75# 76# Revision 1.40 2006/09/28 10:02:04 yasu 77# Revised so apploader will be generated as well. 78# 79# Revision 1.39 2006/09/19 06:29:56 yasu 80# Set noFW version. 81# 82# Revision 1.38 2006/09/15 02:32:26 yasu 83# Revised the DIP_INET6* flag process. 84# 85# Revision 1.37 2006/09/08 06:11:03 yosizaki 86# Added nhttp, vf. 87# 88# Revision 1.36 2006/09/06 07:09:01 yasu 89# Changed the default firmware to 8 series. 90# 91# Revision 1.35 2006/09/05 10:58:51 yosizaki 92# Removed rexdemo. 93# 94# Revision 1.34 2006/08/30 09:02:01 yosizaki 95# Added rexdemo. 96# 97# Revision 1.33 2006/08/25 14:49:53 yasu 98# Made additions related to REX_TOOL. 99# 100# Revision 1.32 2006/08/24 04:29:43 adachi_hiroaki 101# Added settings for building tools using NW4R. 102# 103# Revision 1.31 2006/08/22 09:59:43 yasu 104# Revised makefile determination when using SHOW_CURDIR. 105# 106# Revision 1.30 2006/08/21 11:01:12 adachi_hiroaki 107# Changed specifications so that socket.a or so.a can be specified. 108# 109# Revision 1.29 2006/08/17 03:30:12 yasu 110# Suppressed TITLEID specification. 111# 112# Revision 1.28 2006/08/09 00:29:40 yasu 113# Added net. 114# 115# Revision 1.27 2006/08/08 10:04:10 terui 116# Added 'so' to REX_LIBNAMES. 117# 118# Revision 1.26 2006/08/08 06:27:14 yasu 119# Set REX_TITLEID to 7. 120# 121# Revision 1.25 2006/08/08 05:02:55 yoshioka_yasuhiro 122# Deleted the enc library. Moved it to RevolutionSDK. 123# 124# Revision 1.24 2006/08/08 02:48:34 seiki_masashi 125# Support for binary data link. 126# 127# Revision 1.23 2006/08/02 13:33:34 yasu 128# Added REX_BUILD_TYPE. 129# 130# Revision 1.22 2006/08/02 13:08:39 yasu 131# Added the enc library. 132# 133# Revision 1.21 2006/07/31 06:12:00 yasu 134# Moved overwrite of do-setup command to commondefs. 135# 136# Revision 1.20 2006/07/31 04:24:51 yasu 137# Added ddf for switching firmware. 138# 139# Revision 1.19 2006/07/24 09:32:28 yasu 140# Set installation destination for ports. 141# 142# Revision 1.18 2006/07/24 01:53:54 yasu 143# @Keyword@ Rule support 144# 145# Revision 1.17 2006/07/21 06:32:46 yasu 146# Implemented the installer creation feature. 147# 148# Revision 1.16 2006/07/20 02:03:05 yasu 149# Added definition of echo. 150# 151# Revision 1.15 2006/07/20 01:02:31 yasu 152# The current directory display settings. 153# 154# Revision 1.14 2006/07/19 12:39:13 yasu 155# Added bin file setting. 156# 157# Revision 1.13 2006/07/19 11:47:48 yasu 158# Revised method of setting initial value for REVOLUTION_EXT_ROOT. 159# 160# Revision 1.12 2006/07/19 08:43:17 yasu 161# SILENT flag handling. 162# 163# Revision 1.11 2006/07/15 12:47:21 terui 164# Added nwc24 to REX_LIBNAMES. 165# 166# Revision 1.10 2006/07/10 04:07:31 yasu 167# Temporarily changed library name from nitro to wdp. 168# 169# Revision 1.9 2006/07/09 13:10:10 yasu 170# PPC make tree connection completed. 171# 172# Revision 1.8 2006/07/09 11:25:55 yasu 173# moving process intermediate save 2. 174# 175# Revision 1.7 2006/07/09 08:16:10 yasu 176# moving process intermediate save 1. 177# 178# Revision 1.6 2006/07/05 09:19:41 seiki_masashi 179# Cleaned up library for linking. 180# 181# Revision 1.5 2006/07/03 08:39:25 yosizaki 182# Added nitro and mpdl. 183# 184# Revision 1.4 2006/06/30 04:32:13 terui 185# Added socket.a to REVOLUTION_LIBS. 186# 187# Revision 1.3 2006/06/21 02:44:26 seiki_masashi 188# Added wd and mp to LIBS. 189# 190# Revision 1.2 2006/06/16 04:21:12 terui 191# Added the TEST_ROOT definition. 192# 193# Revision 1.1 2006/05/30 07:09:57 terui 194# Initial upload. 195# 196# 197# $NoKeywords: $ 198# 199#============================================================================ 200EMPTY := 201SPACE := $(EMPTY) $(EMPTY) 202 203# 204# Tree Root 205# 206REVOLUTION_EXT_ROOT ?= C:/RevoEX 207REVOLUTION_EXT_INSTALL_ROOT ?= $(REVOLUTION_EXT_ROOT) 208NITROSDK_ROOT ?= C:/NitroSDK 209 210# Pathname Translation 211REX_DIR ?= $(subst $(SPACE),\$(SPACE),$(subst \,/,$(REVOLUTION_EXT_ROOT))) 212REX_INSTALL_DIR ?= $(subst $(SPACE),\$(SPACE),$(subst \,/,$(REVOLUTION_EXT_INSTALL_ROOT))) 213NITROSDK_DIR ?= $(subst $(SPACE),\$(SPACE),$(subst \,/,$(NITROSDK_ROOT))) 214NW4R_DIR ?= $(subst $(SPACE),\$(SPACE),$(subst \,/,$(NW4R_ROOT))) 215# 216# Debug/NDebug 217# 218ifeq ($(REX_DEBUG)$(REX_NDEBUG),) 219ifndef NDEBUG 220DEBUG = TRUE 221REX_DEBUG = TRUE 222REX_BUILD_TYPE = DEBUG 223else 224REX_NDEBUG = TRUE 225REX_BUILD_TYPE = RELEASE 226endif 227endif 228 229# 230# Firmware Default TitleID 231# 232# REX_TITLEID ?= 35 233REX_TITLEID ?= 0 234REX_TITLEFW ?= noFW 235# REX_TITLEFW ?= FW 236 237# 238# For Local Setting 239# 240-include $(REX_DIR)/build/buildtools/@*private 241-include $(REX_DIR)/build/buildtools/_confidential 242 243# 244# Directory shortcuts 245# 246REX_INCDIR := $(REX_DIR)/include 247REX_BUILDDIR := $(REX_DIR)/build 248REX_PORTSDIR := $(REX_DIR)/ports 249REX_BOOTDIR := $(REX_DIR)/$(ARCH_TARGET)/boot 250 251REX_DEMODIR := $(REX_BUILDDIR)/demos 252REX_TESTDIR := $(REX_BUILDDIR)/tests 253REX_DDFTMPLTDIR := $(REX_BUILDDIR)/buildtools/ddf 254 255override BUILD_ROOT = $(REX_BUILDDIR) 256 257# 258# Library List and Build Setting 259# 260REX_LIBNAME_SOCKET ?= so 261REX_LIBNAMES = ncd wd mp ntr mpdl mpfs mpds nwc24 net nhttp ssl vf $(REX_LIBNAME_SOCKET) 262 263REX_LIBTYPE = $(ARCH_TARGET)/lib 264REX_LIBDIR = $(REX_DIR)/$(REX_LIBTYPE) 265REX_LIBSUFFIX = $(if $(REX_DEBUG),D,) 266REX_LIBFILES = $(addsuffix $(REX_LIBSUFFIX).a,$(REX_LIBNAMES)) 267REX_LIBS = $(addprefix $(REX_LIBDIR)/,$(REX_LIBFILES)) 268 269REX_NW4R_LIBDIR = $(NW4R_DIR)/Library/lib/$(ARCH_TARGET)/$(if $(REX_DEBUG),Debug,Release) 270REX_NW4R_LIBNAMES = mcs ut db ef math snd g3d 271REX_NW4R_LIBFILES = $(addsuffix .a,$(addprefix libnw4r_,$(REX_NW4R_LIBNAMES))) 272REX_NW4R_LIBS = $(addprefix $(REX_NW4R_LIBDIR)/,$(REX_NW4R_LIBFILES)) 273 274REX_BINTYPE = $(ARCH_TARGET)/bin 275REX_BINDIR = $(REX_DIR)/$(REX_BINTYPE) 276REX_BOOTDIR = $(REX_DIR)/$(ARCH_TARGET)/boot 277 278GINCLUDES += -I$(REX_INCDIR) 279 280# 281# Install Target Directories 282# 283REX_INSTALL_INCDIR := $(REX_INSTALL_DIR)/include 284REX_INSTALL_LIBDIR := $(REX_INSTALL_DIR)/$(REX_LIBTYPE) 285REX_INSTALL_BINDIR := $(REX_INSTALL_DIR)/$(REX_BINTYPE) 286REX_INSTALL_TOOLSDIR := $(REX_INSTALL_DIR)/tools 287REX_INSTALL_DVDDATADIR := $(REX_INSTALL_DIR)/dvddata 288REX_INSTALL_PORTSDIR := $(REX_INSTALL_DIR)/ports 289 290# 291# WORK AROUND 292# 293 294# Reject IPv6 code [TRUE/FALSE] 295REX_IP_INET4_ONLY ?= FALSE 296 297# Ignore IPv6 packet [TRUE/FALSE] 298REX_IP_INET6_IGNORED ?= TRUE 299 300# 301# Target for "setup" hacks 302# 303override SETUP_ROOTS = do-setup 304 305# 306# Dirty Files 307# 308REX_DISTCLEAN = 309 310# 311# Binary Data 312# 313REX_LOCAL_DATDIR = data 314 315#---------------------------------------------------------------------------- 316# MAKE COMMAND SETTINGS 317# 318# --no-print-directory: No print directory when 'change directory' 319# -r no built-in rules 320# -R no built-in variables 321# -j do make with multi-thread (not used now) 322# 323ECHO = echo 324MAKEFILE = $(firstword $(MAKEFILE_LIST)) 325REMAKE = $(MAKE) -f $(MAKEFILE) 326INSTALL = install 327MAKEO = makeo 328MAKEO_FLAGS = -a 64 329 330MAKEFLAGS_SHORT = $(filter -%,$(filter-out --%,$(MAKEFLAGS))) 331MAKEFLAGS += -R -r 332 333# Check -w option 334ifeq (,$(findstring w,$(MAKEFLAGS_SHORT))) 335MAKEFLAGS += --no-print-directory 336endif 337 338# Check -k option 339ifeq (,$(findstring k,$(MAKEFLAGS_SHORT))) 340AND = && 341else 342AND = ; 343endif 344 345# Check -s option 346ifneq (,$(findstring s,$(MAKEFLAGS_SHORT))) 347SILENT = TRUE 348RVLIOP_STDOUT = > /dev/null 349else 350REX_SHOW_CURDIR = TRUE 351endif 352 353ifneq (Makefile,$(MAKEFILE)) 354ifneq (makefile,$(MAKEFILE)) 355MAKEFILE_NAME = /$(MAKEFILE) 356endif 357endif 358 359# NWC24 script stuff 360NWC24CC = $(REVOLUTION_EXT_ROOT)/X86/bin/NWC24/nwc24cc.sh 361 362 363ifdef REX_SHOW_CURDIR 364define ECHO_CURDIR 365 @$(ECHO) "==== $(CURDIR)$(MAKEFILE_NAME)" 366endef 367endif 368 369 370#======== End of commondefs.rex ========# 371