From 7b37fdfd6e9594652aba7c3e25cde62154b44854 Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@b08762b0-b915-fc4b-9d8c-17b2551a87ff> Date: Fri, 10 Oct 2008 05:27:22 +0000 Subject: [PATCH] =?UTF-8?q?(sato)=20=E7=84=A1=E7=B7=9A=E9=96=8B=E7=99=BA?= =?UTF-8?q?=E7=94=A8=20SystemUpdaterRegion=E4=BD=9C=E6=88=90=E3=81=AB?= =?UTF-8?q?=E5=AF=BE=E5=BF=9C=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82?= =?UTF-8?q?=20=EF=BC=88RED=E8=A1=A8=E7=A4=BA=E3=83=A9=E3=83=B3=E3=83=81?= =?UTF-8?q?=E3=83=A3=E3=83=BC+=E4=BB=BB=E6=84=8F=E3=81=AESystemMenu?= =?UTF-8?q?=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@2614 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/tests/build4WLDev/Makefile | 52 ++++--- build/tests/build4WLDev/Makefile_old | 144 ++++++++++++++++++ build/tests/build4WLDev/readme.txt | 26 ++++ build/tests/build4WLDev/scripts/Makefile | 43 ++---- build/tests/build4WLDev/scripts/Makefile_old | 87 +++++++++++ .../scripts/launcher_makefile_region.pl | 112 ++++++++++++++ .../scripts/systemupdater_source.pl | 125 +++++++++++++++ 7 files changed, 536 insertions(+), 53 deletions(-) create mode 100644 build/tests/build4WLDev/Makefile_old create mode 100644 build/tests/build4WLDev/readme.txt create mode 100644 build/tests/build4WLDev/scripts/Makefile_old create mode 100755 build/tests/build4WLDev/scripts/launcher_makefile_region.pl create mode 100755 build/tests/build4WLDev/scripts/systemupdater_source.pl diff --git a/build/tests/build4WLDev/Makefile b/build/tests/build4WLDev/Makefile index dc98d6a4..561282d0 100644 --- a/build/tests/build4WLDev/Makefile +++ b/build/tests/build4WLDev/Makefile @@ -23,6 +23,7 @@ export SYSM_BUILD_FOR_DEBUGGER = TRUE # SDK configuration for export override TWL_ARCHGEN := LIMITED +overrice TWL_CODEGEN := THUMB export TWL_ARCHGEN export OBJDIR = ./obj.WLAN/$(TWL_BUILDTYPE) export DEPENDDIR = ./depend.WLAN/$(TWL_BUILDTYPE) @@ -41,35 +42,25 @@ DS_HASH_TABLE = $(SYSMENU_ROOT)/build/systemMenu_RED/DSHashTable SHARED_FONT_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/sharedFont NANDFIRM_DIR = $(SYSMENU_ROOT)/build/nandfirm/menu-launcher -SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdater +SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdaterRegionSelect # 実際に書き込みたいファイルの置かれているdataフォルダを指定 -export UPDATER_HOST_ROOT_DIR = $(call empath,$(SYSTEMUPDATER_DIR)/data) +export UPDATER_HOST_ROOT_DIR = $(call empath,$(SYSMENU_ROOT)/build/tests/build4WLDev/data_sysmenu) -ifdef BUILD_TWLSDK -SUBMAKES += Makefile_environment -endif - -SUBMAKES += $(SYSMENU_ROOT)/build/tools/Makefile \ - $(SYSMENU_ROOT)/build/libraries/Makefile \ - $(SYSMENU_ROOT)/build/libraries_sysmenu/Makefile_autogen \ +SUBMAKES = $(SYSMENU_ROOT)/build/libraries_sysmenu/Makefile \ \ - $(LAUNCHER_DIR)/Makefile_autogen \ - $(MACHINESETTINGS_DIR)/Makefile_autogen \ - $(WLANFIRM_DIR)/Makefile \ - $(DS_HASH_TABLE)/Makefile \ - $(SHARED_FONT_DIR)/Makefile \ - $(NANDFIRM_DIR)/Makefile \ - $(SYSTEMUPDATER_DIR)/data/Makefile \ + $(LAUNCHER_DIR)/banner/Makefile \ + $(LAUNCHER_DIR)/ARM9/Makefile_autogen_HNAJ \ + $(LAUNCHER_DIR)/ARM9/Makefile_autogen_HNAE \ $(SYSTEMUPDATER_DIR)/banner/Makefile \ $(SYSTEMUPDATER_DIR)/ARM7.TWL/Makefile \ - $(SYSTEMUPDATER_DIR)/ARM9.TWL/Makefile + $(SYSTEMUPDATER_DIR)/ARM9.TWL/Makefile_autogen # COMPILE SWITCH for build SystemMenu export SYSM_UPDATER_RELEASE = TRUE -export SYSM_DO_NOT_SHOW_LAUNCHER = TRUE +export SYSM_DO_NOT_SHOW_LAUNCHER = FALSE export SYSM_DISABLE_WDS_SCAN = FALSE ############################################# @@ -91,21 +82,30 @@ export SYSM_BUILD_FOR_PRODUCTION_TEST = FALSE export SYSM_DISABLE_DEBUG = TRUE export SYSM_USE_WLANFIRM_LOCAL_PUBKEY = FALSE +# Option for SystemUpdater +export IGNORE_VERSION_CHECK = TRUE + +############################################# +# inhibit reentrant + +FIRST_CALL ?= TRUE +SKIP_SUBDIR ?= TRUE + DATE_AND_TIME ?= $(shell date +"%y%m%d %H%M") DATE ?= $(word 1,$(DATE_AND_TIME)) TIME ?= $(word 2,$(DATE_AND_TIME)) TIME_NOZERO = $(shell echo $(TIME) | sed -e 's/^0*\(.\)/\1/') +ifneq ($(FIRST_CALL),TRUE) INSTALL_TARGETS = $(SYSTEMUPDATER_DIR)/ARM9.TWL/bin/$(TWL_BUILDTYPE)/SystemUpdater.srl INSTALL_DIR = . +endif GDIRT_INSTALLED += ./$(notdir $(subst .srl,_WL_$(DATE)_*.srl,$(INSTALL_TARGETS))) #---------------------------------------------------------------------------- -SKIP_SUBDIR ?= TRUE - do-build: do-core clean: cl-core clobber: cl-core @@ -115,14 +115,15 @@ clean: MY_TARGET=clean clobber: MY_TARGET=clobber do-core: -ifeq ($(SKIP_SUBDIR),TRUE) +ifeq ($(FIRST_CALL),TRUE) + @echo Enter remake SKIP_SUBDIR=$(SKIP_SUBDIR) +$(REMAKE) -C ./scripts SKIP_SUBDIR=FALSE $(MY_TARGET) - +$(REMAKE) SKIP_SUBDIR=FALSE $(MY_TARGET) + +$(REMAKE) FIRST_CALL=FALSE SKIP_SUBDIR=FALSE $(MY_TARGET) endif cl-core: -ifeq ($(SKIP_SUBDIR),TRUE) - +$(REMAKE) SKIP_SUBDIR=FALSE $(MY_TARGET) +ifeq ($(FIRST_CALL),TRUE) + +$(REMAKE) FIRST_CALL=FALSE SKIP_SUBDIR=FALSE $(MY_TARGET) +$(REMAKE) -C ./scripts SKIP_SUBDIR=FALSE $(MY_TARGET) endif @@ -140,5 +141,6 @@ define DO_INSTALL fi $(AND) ) $(TRUE) endef - +test: + @echo SKIP_SUBDIR=$(SKIP_SUBDIR) #===== End of Makefile ===== diff --git a/build/tests/build4WLDev/Makefile_old b/build/tests/build4WLDev/Makefile_old new file mode 100644 index 00000000..dc98d6a4 --- /dev/null +++ b/build/tests/build4WLDev/Makefile_old @@ -0,0 +1,144 @@ +#! make -f +#---------------------------------------------------------------------------- +# Project: SystemUpdater +# File: Makefile +# +# Copyright 2007 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. +# +# $Date:: $ +# $Rev$ +# $Author$ +#---------------------------------------------------------------------------- + +TARGET_FIRM = SYSTEMMENU + +# force to build for debugger +export SYSM_BUILD_FOR_DEBUGGER = TRUE + +# SDK configuration for export +override TWL_ARCHGEN := LIMITED +export TWL_ARCHGEN +export OBJDIR = ./obj.WLAN/$(TWL_BUILDTYPE) +export DEPENDDIR = ./depend.WLAN/$(TWL_BUILDTYPE) +export LIBDIR = ./lib.WLAN/$(TWL_BUILDTYPE) + +include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs + +export LDIRT_CLEAN = ./obj.WLAN ./depend.WLAN ./lib.WLAN + +#---------------------------------------------------------------------------- + +LAUNCHER_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/Launcher +MACHINESETTINGS_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/MachineSettings +WLANFIRM_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/wlanfirm +DS_HASH_TABLE = $(SYSMENU_ROOT)/build/systemMenu_RED/DSHashTable +SHARED_FONT_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/sharedFont +NANDFIRM_DIR = $(SYSMENU_ROOT)/build/nandfirm/menu-launcher + +SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdater + +# 実際に書き込みたいファイルの置かれているdataフォルダを指定 +export UPDATER_HOST_ROOT_DIR = $(call empath,$(SYSTEMUPDATER_DIR)/data) + +ifdef BUILD_TWLSDK +SUBMAKES += Makefile_environment +endif + +SUBMAKES += $(SYSMENU_ROOT)/build/tools/Makefile \ + $(SYSMENU_ROOT)/build/libraries/Makefile \ + $(SYSMENU_ROOT)/build/libraries_sysmenu/Makefile_autogen \ + \ + $(LAUNCHER_DIR)/Makefile_autogen \ + $(MACHINESETTINGS_DIR)/Makefile_autogen \ + $(WLANFIRM_DIR)/Makefile \ + $(DS_HASH_TABLE)/Makefile \ + $(SHARED_FONT_DIR)/Makefile \ + $(NANDFIRM_DIR)/Makefile \ + $(SYSTEMUPDATER_DIR)/data/Makefile \ + $(SYSTEMUPDATER_DIR)/banner/Makefile \ + $(SYSTEMUPDATER_DIR)/ARM7.TWL/Makefile \ + $(SYSTEMUPDATER_DIR)/ARM9.TWL/Makefile + +# COMPILE SWITCH for build SystemMenu + +export SYSM_UPDATER_RELEASE = TRUE + +export SYSM_DO_NOT_SHOW_LAUNCHER = TRUE +export SYSM_DISABLE_WDS_SCAN = FALSE + +############################################# +# For Wireless development +# + +# disable signature check +export SYSM_IGNORE_WLFIRM_SIGNCHECK = TRUE + +export SYSM_DISABLE_WLFIRM_LOAD = FALSE +export SYSM_DISABLE_INITIAL_SETTINGS = TRUE +export SYSM_OUTSIDE_UI = TRUE + +export SYSM_DEV_WHITELIST_CHECK_SKIP = TRUE + +export SYSM_BUILD_FOR_PRODUCTION_TEST = FALSE + +# MAKEROM SWITCH for build SystemMenu +export SYSM_DISABLE_DEBUG = TRUE +export SYSM_USE_WLANFIRM_LOCAL_PUBKEY = FALSE + +DATE_AND_TIME ?= $(shell date +"%y%m%d %H%M") + +DATE ?= $(word 1,$(DATE_AND_TIME)) +TIME ?= $(word 2,$(DATE_AND_TIME)) +TIME_NOZERO = $(shell echo $(TIME) | sed -e 's/^0*\(.\)/\1/') + +INSTALL_TARGETS = $(SYSTEMUPDATER_DIR)/ARM9.TWL/bin/$(TWL_BUILDTYPE)/SystemUpdater.srl +INSTALL_DIR = . + +GDIRT_INSTALLED += ./$(notdir $(subst .srl,_WL_$(DATE)_*.srl,$(INSTALL_TARGETS))) + +#---------------------------------------------------------------------------- + +SKIP_SUBDIR ?= TRUE + +do-build: do-core +clean: cl-core +clobber: cl-core + +do-build: MY_TARGET=default +clean: MY_TARGET=clean +clobber: MY_TARGET=clobber + +do-core: +ifeq ($(SKIP_SUBDIR),TRUE) + +$(REMAKE) -C ./scripts SKIP_SUBDIR=FALSE $(MY_TARGET) + +$(REMAKE) SKIP_SUBDIR=FALSE $(MY_TARGET) +endif + +cl-core: +ifeq ($(SKIP_SUBDIR),TRUE) + +$(REMAKE) SKIP_SUBDIR=FALSE $(MY_TARGET) + +$(REMAKE) -C ./scripts SKIP_SUBDIR=FALSE $(MY_TARGET) +endif + +include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules + +# Override generic DO_INSTALL +define DO_INSTALL + $(INSTALL) -d $(INSTALL_DIR) $(AND) \ + $(foreach FILE, $(INSTALL_TARGETS), \ + if [ ! -e $(INSTALL_DIR)/$(FILE) -o \ + $(FILE) -nt $(INSTALL_DIR)/$(FILE) ]; \ + then \ + $(ECHO) " install: $(FILE) -> $(subst .srl,_WL_$(DATE)_$(TIME).srl,$(FILE))" $(AND) \ + $(INSTALL) $(FILE) $(INSTALL_DIR)/$(notdir $(subst .srl,_WL_$(DATE)_$(TIME).srl,$(FILE))); \ + fi $(AND) ) $(TRUE) +endef + + +#===== End of Makefile ===== diff --git a/build/tests/build4WLDev/readme.txt b/build/tests/build4WLDev/readme.txt new file mode 100644 index 00000000..14f75eb3 --- /dev/null +++ b/build/tests/build4WLDev/readme.txt @@ -0,0 +1,26 @@ +* 無線開発用SystemUpdater + +1. 各種systemMenuファイルの用意 + +TwlIPL/build/tests/build4WLDev の直下に以下のディレクトリ構成で +systemMenu関連ファイルを用意してください。(HNA*.tadは除いてください。) + +※Regionは、JapanとAmericaのみをサポート、開発実機には対応していません。 + +data_sysmenu + +debugger + l +america/* + l +japan/* + +上記の*には、 +HNA*.tad以外の全tadとnandファームとフォントデータを置いてください。 + + +2.SystemUpdaterのビルド + +TwlIPL/build/tests/build4WLDev でmakeを実行してください。 +※TwlIPL_privateが必要です。 + +最終的に、以下のような日付時間タグつきのSystemUpdaterが同じディレクトリに作成されます。 + +SystemUpdater_WL_yymmdd_hhmm.srl diff --git a/build/tests/build4WLDev/scripts/Makefile b/build/tests/build4WLDev/scripts/Makefile index 481ac3b3..919866fa 100644 --- a/build/tests/build4WLDev/scripts/Makefile +++ b/build/tests/build4WLDev/scripts/Makefile @@ -23,19 +23,16 @@ include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs #---------------------------------------------------------------------------- LAUNCHER_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/Launcher -MACHINESETTINGS_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/MachineSettings SYSMENU_LIBRARIES_DIR = $(SYSMENU_ROOT)/build/libraries_sysmenu -SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdater +SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdaterRegionSelect SCRIPTS_DIR = ./ -MAKEFILES_ORG = $(LAUNCHER_DIR)/Makefile $(LAUNCHER_DIR)/ARM9/Makefile \ - $(MACHINESETTINGS_DIR)/Makefile $(MACHINESETTINGS_DIR)/ARM9/Makefile -MAKE_MAKEFILES = $(SCRIPTS_DIR)/launcher_makefile.pl -AUTOGEN_MAKEFILES = $(LAUNCHER_DIR)/Makefile_autogen $(LAUNCHER_DIR)/ARM9/Makefile_autogen \ - $(MACHINESETTINGS_DIR)/Makefile_autogen $(MACHINESETTINGS_DIR)/ARM9/Makefile_autogen +MAKEFILES_ORG = $(LAUNCHER_DIR)/ARM9/Makefile +MAKE_MAKEFILES = $(SCRIPTS_DIR)/launcher_makefile_region.pl +AUTOGEN_MAKEFILES = $(LAUNCHER_DIR)/ARM9/Makefile_autogen_HNAJ $(LAUNCHER_DIR)/ARM9/Makefile_autogen_HNAE LDIRT_CLEAN += $(AUTOGEN_MAKEFILES) @@ -44,24 +41,17 @@ MAKE_LOADWLAN = $(SCRIPTS_DIR)/launcher_loadWlanFirm_c.pl AUTOGEN_LOADWLAN = $(LAUNCHER_DIR)/ARM9/src/loadWlanFirm_autogen.c LDIRT_CLEAN += $(AUTOGEN_LOADWLAN) -MACHSETTING_ORG = $(MACHINESETTINGS_DIR)/ARM9/src/MachineSetting.c -MAKE_MACHSETTING = $(SCRIPTS_DIR)/launcher_MachineSetting_c.pl -AUTOGEN_MACHSETTING = $(MACHINESETTINGS_DIR)/ARM9/src/MachineSetting_autogen.c -LDIRT_CLEAN += $(AUTOGEN_MACHSETTING) - -NWM_ORG = $(SYSMENU_LIBRARIES_DIR)/Makefile \ - $(SYSMENU_LIBRARIES_DIR)/nwm/Makefile \ - $(SYSMENU_LIBRARIES_DIR)/nwm/ARM7/Makefile \ - $(ROOT)/build/libraries/wm/ARM7.TWL/nwm/src/nwmsp_event_handler.c -MAKE_NWM = $(SCRIPTS_DIR)/launcher_fake_macaddress.pl -AUTOGEN_NWM = $(SYSMENU_LIBRARIES_DIR)/Makefile_autogen \ - $(SYSMENU_LIBRARIES_DIR)/nwm/Makefile_autogen \ - $(SYSMENU_LIBRARIES_DIR)/nwm/ARM7/Makefile_autogen \ - $(ROOT)/build/libraries/wm/ARM7.TWL/nwm/src/nwmsp_event_handler_autogen.c -LDIRT_CLEAN += $(AUTOGEN_NWM) +SYSUP_ORG = $(SYSTEMUPDATER_DIR)/ARM9.TWL/src/process_check_console.c \ + $(SYSTEMUPDATER_DIR)/ARM9.TWL/src/process_select_region.c \ + $(SYSTEMUPDATER_DIR)/ARM9.TWL/Makefile +MAKE_SYSUP = $(SCRIPTS_DIR)/systemupdater_source.pl +AUTOGEN_SYSUP = $(SYSTEMUPDATER_DIR)/ARM9.TWL/src/process_check_console_autogen.c \ + $(SYSTEMUPDATER_DIR)/ARM9.TWL/src/process_select_region_autogen.c \ + $(SYSTEMUPDATER_DIR)/ARM9.TWL/Makefile_autogen +LDIRT_CLEAN += $(AUTOGEN_SYSUP) -TARGETS = $(AUTOGEN_MAKEFILES) $(AUTOGEN_LOADWLAN) $(AUTOGEN_MACHSETTING) $(AUTOGEN_NWM) +TARGETS = $(AUTOGEN_MAKEFILES) $(AUTOGEN_LOADWLAN) $(AUTOGEN_SYSUP) #---------------------------------------------------------------------------- do-build: $(TARGETS) @@ -76,12 +66,9 @@ $(AUTOGEN_LOADWLAN): $(LOADWLAN_ORG) $(MAKE_LOADWLAN) @echo " make:" $@ @perl $(MAKE_LOADWLAN) -$(AUTOGEN_MACHSETTING): $(MACHSETTING_ORG) $(MAKE_MACHSETTING) +$(AUTOGEN_SYSUP): $(SYSUP_ORG) $(MAKE_SYSUP) @echo " make:" $@ - @perl $(MAKE_MACHSETTING) + @perl $(MAKE_SYSUP) -$(AUTOGEN_NWM): $(NWM_ORG) $(MAKE_NWM) - @echo " make:" $@ - @perl $(MAKE_NWM) #===== End of Makefile ===== diff --git a/build/tests/build4WLDev/scripts/Makefile_old b/build/tests/build4WLDev/scripts/Makefile_old new file mode 100644 index 00000000..481ac3b3 --- /dev/null +++ b/build/tests/build4WLDev/scripts/Makefile_old @@ -0,0 +1,87 @@ +#! make -f +#---------------------------------------------------------------------------- +# Project: SystemUpdater +# File: Makefile +# +# Copyright 2007 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. +# +# $Date:: $ +# $Rev$ +# $Author$ +#---------------------------------------------------------------------------- + +TARGET_FIRM = SYSTEMMENU + +include $(TWL_IPL_RED_ROOT)/build/buildtools/commondefs + +#---------------------------------------------------------------------------- + +LAUNCHER_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/Launcher +MACHINESETTINGS_DIR = $(SYSMENU_ROOT)/build/systemMenu_RED/MachineSettings + +SYSMENU_LIBRARIES_DIR = $(SYSMENU_ROOT)/build/libraries_sysmenu + +SYSTEMUPDATER_DIR = $(SYSMENU_ROOT)/build/systemMenu_tools/SystemUpdater + +SCRIPTS_DIR = ./ + +MAKEFILES_ORG = $(LAUNCHER_DIR)/Makefile $(LAUNCHER_DIR)/ARM9/Makefile \ + $(MACHINESETTINGS_DIR)/Makefile $(MACHINESETTINGS_DIR)/ARM9/Makefile +MAKE_MAKEFILES = $(SCRIPTS_DIR)/launcher_makefile.pl +AUTOGEN_MAKEFILES = $(LAUNCHER_DIR)/Makefile_autogen $(LAUNCHER_DIR)/ARM9/Makefile_autogen \ + $(MACHINESETTINGS_DIR)/Makefile_autogen $(MACHINESETTINGS_DIR)/ARM9/Makefile_autogen + +LDIRT_CLEAN += $(AUTOGEN_MAKEFILES) + +LOADWLAN_ORG = $(LAUNCHER_DIR)/ARM9/src/loadWlanFirm.c +MAKE_LOADWLAN = $(SCRIPTS_DIR)/launcher_loadWlanFirm_c.pl +AUTOGEN_LOADWLAN = $(LAUNCHER_DIR)/ARM9/src/loadWlanFirm_autogen.c +LDIRT_CLEAN += $(AUTOGEN_LOADWLAN) + +MACHSETTING_ORG = $(MACHINESETTINGS_DIR)/ARM9/src/MachineSetting.c +MAKE_MACHSETTING = $(SCRIPTS_DIR)/launcher_MachineSetting_c.pl +AUTOGEN_MACHSETTING = $(MACHINESETTINGS_DIR)/ARM9/src/MachineSetting_autogen.c +LDIRT_CLEAN += $(AUTOGEN_MACHSETTING) + +NWM_ORG = $(SYSMENU_LIBRARIES_DIR)/Makefile \ + $(SYSMENU_LIBRARIES_DIR)/nwm/Makefile \ + $(SYSMENU_LIBRARIES_DIR)/nwm/ARM7/Makefile \ + $(ROOT)/build/libraries/wm/ARM7.TWL/nwm/src/nwmsp_event_handler.c +MAKE_NWM = $(SCRIPTS_DIR)/launcher_fake_macaddress.pl +AUTOGEN_NWM = $(SYSMENU_LIBRARIES_DIR)/Makefile_autogen \ + $(SYSMENU_LIBRARIES_DIR)/nwm/Makefile_autogen \ + $(SYSMENU_LIBRARIES_DIR)/nwm/ARM7/Makefile_autogen \ + $(ROOT)/build/libraries/wm/ARM7.TWL/nwm/src/nwmsp_event_handler_autogen.c +LDIRT_CLEAN += $(AUTOGEN_NWM) + + +TARGETS = $(AUTOGEN_MAKEFILES) $(AUTOGEN_LOADWLAN) $(AUTOGEN_MACHSETTING) $(AUTOGEN_NWM) + +#---------------------------------------------------------------------------- +do-build: $(TARGETS) + +include $(TWL_IPL_RED_ROOT)/build/buildtools/modulerules + +$(AUTOGEN_MAKEFILES): $(MAKEFILES_ORG) $(MAKE_MAKEFILES) + @echo " make:" $@ + @perl $(MAKE_MAKEFILES) + +$(AUTOGEN_LOADWLAN): $(LOADWLAN_ORG) $(MAKE_LOADWLAN) + @echo " make:" $@ + @perl $(MAKE_LOADWLAN) + +$(AUTOGEN_MACHSETTING): $(MACHSETTING_ORG) $(MAKE_MACHSETTING) + @echo " make:" $@ + @perl $(MAKE_MACHSETTING) + +$(AUTOGEN_NWM): $(NWM_ORG) $(MAKE_NWM) + @echo " make:" $@ + @perl $(MAKE_NWM) + +#===== End of Makefile ===== diff --git a/build/tests/build4WLDev/scripts/launcher_makefile_region.pl b/build/tests/build4WLDev/scripts/launcher_makefile_region.pl new file mode 100755 index 00000000..f11bf281 --- /dev/null +++ b/build/tests/build4WLDev/scripts/launcher_makefile_region.pl @@ -0,0 +1,112 @@ +#!/bin/perl +#---------------------------------------------------------------------------- +# Project: TwlIPL - tests - +# File: launcher_makefile.pl +# +# Copyright 2007 Nintendo. All rights reserved. +# +# These coded insructions, 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. +# +# $Date:: $ +# $Rev$ +# $Author$ +#---------------------------------------------------------------------------- + +use strict; + +my $IPLROOT; + +# search TWL_IPL_RED_ROOT +foreach ( sort keys ( %ENV ) ){ + if ($_ =~ m/TWL_IPL_RED_ROOT/s) { + $IPLROOT = $ENV{$_}; + } +} + +my $rn = "\x0D\x0A"; + +my $src1 = "$IPLROOT/build/systemMenu_RED/Launcher/ARM9/Makefile"; +my $dst1 = "$IPLROOT/build/systemMenu_RED/Launcher/ARM9/Makefile_autogen_HNAJ"; + +open(F, $src1) or die "cant open $src1\n"; +my @lines = ; +close(F); + + +open(OUT, ">$dst1") or die "cant open $dst1\n"; +foreach my $line ( @lines ) +{ + if( $line =~ m/loadWlanFirm\.c/ ) + { + $line =~ s/loadWlanFirm\.c/loadWlanFirm_autogen\.c/; + } + + if( $line =~ m/^TITLEID_LO/ ) + { + $line =~ s/HNAA/HNAJ/; + } + + if( $line =~ m/^CARD_REGION/ ) + { + $line =~ s/ALL/Japan/; + print OUT $line; + print OUT "BINDIR = ./bin.HNAJ/\$(TWL_BUILDTYPE)", $rn; + next; + } + + if( $line =~ m/^INSTALL_DIR/ ) + { + print OUT "INSTALL_DIR = \$(UPDATER_HOST_ROOT_DIR)/debugger/japan", $rn; + print OUT "MAKETAD := \$(TWL_IPL_RED_PRIVATE_TOOLSDIR)/bin/maketad.updater.exe", $rn; + next; + } + + print OUT $line; +} +close(OUT); + + +my $src2 = "$IPLROOT/build/systemMenu_RED/Launcher/ARM9/Makefile"; +my $dst2 = "$IPLROOT/build/systemMenu_RED/Launcher/ARM9/Makefile_autogen_HNAE"; + +open(F, $src2) or die "cant open $src2\n"; +my @lines = ; +close(F); + + +open(OUT, ">$dst2") or die "cant open $dst2\n"; +foreach my $line ( @lines ) +{ + if( $line =~ m/loadWlanFirm\.c/ ) + { + $line =~ s/loadWlanFirm\.c/loadWlanFirm_autogen\.c/; + } + + if( $line =~ m/^TITLEID_LO/ ) + { + $line =~ s/HNAA/HNAE/; + } + + if( $line =~ m/^CARD_REGION/ ) + { + $line =~ s/ALL/America/; + print OUT $line; + print OUT "BINDIR = ./bin.HNAE/\$(TWL_BUILDTYPE)", $rn; + next; + } + + if( $line =~ m/^INSTALL_DIR/ ) + { + print OUT "INSTALL_DIR = \$(UPDATER_HOST_ROOT_DIR)/debugger/america", $rn; + print OUT "MAKETAD := \$(TWL_IPL_RED_PRIVATE_TOOLSDIR)/bin/maketad.updater.exe", $rn; + next; + } + + print OUT $line; +} +close(OUT); + diff --git a/build/tests/build4WLDev/scripts/systemupdater_source.pl b/build/tests/build4WLDev/scripts/systemupdater_source.pl new file mode 100755 index 00000000..a997eec7 --- /dev/null +++ b/build/tests/build4WLDev/scripts/systemupdater_source.pl @@ -0,0 +1,125 @@ +#!/bin/perl +#---------------------------------------------------------------------------- +# Project: TwlIPL - tests - +# File: systemupdater_source.pl +# +# Copyright 2007 Nintendo. All rights reserved. +# +# These coded insructions, 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. +# +# $Date:: $ +# $Rev$ +# $Author$ +#---------------------------------------------------------------------------- + +use strict; + +my $IPLROOT; + +# search TWL_IPL_RED_ROOT +foreach ( sort keys ( %ENV ) ){ + if ($_ =~ m/TWL_IPL_RED_ROOT/s) { + $IPLROOT = $ENV{$_}; + } +} + +my $rn = "\x0D\x0A"; + +my $src1 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/src/process_check_console.c"; +my $dst1 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/src/process_check_console_autogen.c"; + +my $in_check_console = 0; + +open(F, $src1) or die "cant open $src1\n"; +my @lines = ; +close(F); + + +open(OUT, ">$dst1") or die "cant open $dst1\n"; +foreach my $line ( @lines ) +{ + if( $line =~ m/^void ProcessCheckConsole\(void\)/ ) + { + $in_check_console = 1; + } + + if ($in_check_console == 1) + { + if( $line =~ m/^\/\*/ ) + { + print OUT "\tkamiFontPrintfConsole( FONT_COLOR_GREEN, \"This updater is for Wireless development.\\n\");", $rn; + print OUT "//\t[AUTO COMMENTOUT] 無線開発用SystemUpdaterの場合、コメントアウトをはずします。", $rn; + # add comment out at the top of line + $line =~ s/^/\/\//; + } + if( $line =~ m/^\*\// ) + { + print OUT "//\t[AUTO COMMENTOUT] 無線開発用SystemUpdaterの場合、コメントアウトをはずします。", $rn; + # add comment out at the top of line + $line =~ s/^/\/\//; + } + if( $line =~ m/^}/ ) + { + $in_check_console = 0; + } + } + + print OUT $line; +} +close(OUT); + +my $src2 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/src/process_select_region.c"; +my $dst2 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/src/process_select_region_autogen.c"; + +open(F, $src2) or die "cant open $src2\n"; +my @lines = ; +close(F); + + +open(OUT, ">$dst2") or die "cant open $dst2\n"; +foreach my $line ( @lines ) +{ + # WLANのLoad時に限り、FatalErrorのセット無効にする。 + if( $line =~ m/OS_TWL_REGION_AUSTRALIA/ ) + { + print OUT "//\t[AUTO COMMENTOUT] 無線開発用SystemUpdaterの場合、RegionはJapanとAmericaのみ。", $rn; + $line =~ s/OS_TWL_REGION_AUSTRALIA/OS_TWL_REGION_AMERICA/; + } + + print OUT $line; +} +close(OUT); + +my $src3 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/Makefile"; +my $dst3 = "$IPLROOT/build/systemMenu_tools/SystemUpdaterRegionSelect/ARM9.TWL/Makefile_autogen"; + +open(F, $src3) or die "cant open $src3\n"; +my @lines = ; +close(F); + + +open(OUT, ">$dst3") or die "cant open $dst3\n"; +foreach my $line ( @lines ) +{ + if( $line =~ m/UPDATER_HOST_ROOT_DIR =/ ) + { + $line =~ s/UPDATER_HOST_ROOT_DIR =/UPDATER_HOST_ROOT_DIR ?=/; + } + + if( $line =~ m/process_select_region\.c/ ) + { + $line =~ s/process_select_region\.c/process_select_region_autogen\.c/; + } + + if( $line =~ m/process_check_console\.c/ ) + { + $line =~ s/process_check_console\.c/process_check_console_autogen\.c/; + } + + print OUT $line; +} +close(OUT);