From 4bdb18d17cb4f0ca32d117af89f255ab6489687a Mon Sep 17 00:00:00 2001 From: aoki_ryoma Date: Thu, 13 Nov 2008 02:38:03 +0000 Subject: [PATCH] =?UTF-8?q?memory=5Flauncher=5Fwriter=E3=81=8B=E3=82=89mem?= =?UTF-8?q?ory=5Flauncher=E3=81=8C=E3=83=AA=E3=83=93=E3=83=AB=E3=83=89?= =?UTF-8?q?=E3=81=95=E3=82=8C=E3=81=AA=E3=81=84=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F=E3=81=AE=E3=81=A7?= =?UTF-8?q?=E3=81=93=E3=81=A1=E3=82=89=E5=81=B4=E3=81=A7=E3=81=99=E3=82=8B?= =?UTF-8?q?=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE=E6=AD=A3=E3=80=82=20FIRM?= =?UTF-8?q?=5FUSE=5FPRODUCT=5FKEYS=3DFALSE=E3=81=A0=E3=81=A8ifdef=E3=81=A7?= =?UTF-8?q?=E5=88=A4=E5=88=A5=E3=81=97=E3=81=A6=E3=81=84=E3=82=8B=E3=81=A8?= =?UTF-8?q?=E3=81=93=E3=82=8D=E3=81=A7=E5=BC=95=E3=81=A3=E3=81=8B=E3=81=8B?= =?UTF-8?q?=E3=82=8B=E3=82=88=E3=81=86=E3=81=AA=E3=81=AE=E3=81=A7=E7=A9=BA?= =?UTF-8?q?=E6=96=87=E5=AD=97=E3=81=AB=E4=BF=AE=E6=AD=A3=E3=80=82=20?= =?UTF-8?q?=E3=82=AA=E3=83=97=E3=82=B7=E3=83=A7=E3=83=B3=E3=81=ABfull?= =?UTF-8?q?=E3=82=92=E8=BF=BD=E5=8A=A0=E3=80=82?= 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@2679 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../systemMenu_tools/SystemLogReader/make.rb | 109 +++++++++++------- 1 file changed, 67 insertions(+), 42 deletions(-) diff --git a/build/systemMenu_tools/SystemLogReader/make.rb b/build/systemMenu_tools/SystemLogReader/make.rb index 42d63fdb..b94b681c 100755 --- a/build/systemMenu_tools/SystemLogReader/make.rb +++ b/build/systemMenu_tools/SystemLogReader/make.rb @@ -1,6 +1,7 @@ #!ruby -# build nandfirm -> convert nandfirm -> build systemlogreader -> build gcdfirm -# 実行時引数に"dev"を渡すと開発ビルド、"prod"を渡すと量産ビルドを生成 +# build TwlIPL Root -> build nandfirm -> convert nandfirm -> +# build systemlogreader -> build gcdfirm +# 実行時引数に"dev"を渡すと開発ビルド(default)、"prod"を渡すと量産ビルドを生成 def putex(str) # puts command and execute @@ -8,55 +9,79 @@ def putex(str) system str end + +def buildgcd(buildtype, prodopt) + puts "buildtype : #{buildtype}" + + # build TwlIPL Root + Dir.chdir(ENV['TWL_IPL_RED_ROOT']) do + putex "make -f Makefile.full clean; " + + "makesp CYGPATH_NOCMD=TRUE -j 2 -f Makefile.full TWL_FINALROM=TRUE #{prodopt}" + end + + # build nandfirm + Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/nandfirm/menu-launcher") do + putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" + nandfirm = Dir.glob("menu_launcher*#{buildtype}.nand") + if nandfirm.none? + puts "build nandfirm failed." + exit + else + nandfirm = nandfirm[0] + end + + + putex "$TWLSDK_ROOT/tools/bin/bin2obj.TWL.exe #{nandfirm} nandfirm.#{buildtype}.o " + + "-b nandfirm_begin -e nandfirm_end" + putex "cp nandfirm.#{buildtype}.o #{Rootdir}/ARM9.TWL/nandfirm/" + end + + # build systemlogreader + putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" + Dir.chdir(Rootdir + "/ARM9.TWL/bin/ARM9-TS.LTD.thumb/Rom") do + if buildtype == "dev" + putex 'cp ./SystemLogReader.srl $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/' + else + # 量産用の場合はsrlにマスタリングをかける + putex "mastering.TWL.exe SystemLogReader.srl SystemLogReader.srl.master -s -t" + putex "cp ./SystemLogReader.srl.master $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/SystemLogReader.srl" + end + end + + # build memory_launcher + Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/nandfirm/memory-launcher") do + putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" + end + + # build memorylauncherwriter + Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/gcdfirm/memory-launcher-writer") do + putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" + putex "cp ./memory_launcher_writer-FINALROM.gcd " + + "$TWL_IPL_RED_ROOT/build/systemMenu_tools/SystemLogReader/memory_launcher_writer-FINALROM.#{buildtype}.gcd -f" + end +end + + Rootdir = ENV['TWL_IPL_RED_ROOT'] + '/build/systemMenu_tools/SystemLogReader' prodopt = "" # default buildtype = dev if ARGV.none? || ARGV[0] == 'dev' - buildtype = "dev" -elsif ARGV[0] = "prod" - buildtype = "prod" - prodopt = "FIRM_USE_PRODUCT_KEYS=TRUE" + build = ["dev"] + opt = ["FIRM_USE_PRODUCT_KEYS="] +elsif ARGV[0] == "prod" + build = ["prod"] + opt = ["FIRM_USE_PRODUCT_KEYS=TRUE"] +elsif ARGV[0] == "full" + build = ["dev", "prod"] + opt = ["FIRM_USE_PRODUCT_KEYS=", "FIRM_USE_PRODUCT_KEYS=TRUE"] else puts "invalid arguments." exit end -puts "buildtype : #{buildtype}" - -# build nandfirm -Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/nandfirm/menu-launcher") do - putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" - nandfirm = Dir.glob("menu_launcher*#{buildtype}.nand") - if nandfirm.none? - puts "build nandfirm failed." - exit - else - nandfirm = nandfirm[0] - end - - - putex "$TWLSDK_ROOT/tools/bin/bin2obj.TWL.exe #{nandfirm} nandfirm.#{buildtype}.o " + - "-b nandfirm_begin -e nandfirm_end" - putex "cp nandfirm.#{buildtype}.o #{Rootdir}/ARM9.TWL/nandfirm/" +p build.zip(opt) +build.zip(opt).each do |b,op| + buildgcd(b,op) end -# build systemlogreader -putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" -Dir.chdir(Rootdir + "/ARM9.TWL/bin/ARM9-TS.LTD.thumb/Rom") do - if buildtype == "dev" - putex 'cp ./SystemLogReader.srl $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/' - else - # 量産用の場合はsrlにマスタリングをかける - putex "mastering.TWL.exe SystemLogReader.srl SystemLogReader.srl.master -s -t" - putex "cp ./SystemLogReader.srl.master $TWL_IPL_RED_ROOT/build/gcdfirm/memory-launcher-writer/SystemLogReader.srl" - end -end - -Dir.chdir(ENV['TWL_IPL_RED_ROOT'] + "/build/gcdfirm/memory-launcher-writer") do - - # build memorylauncherwriter - putex "make clean; make TWL_FINALROM=TRUE #{prodopt}" - putex "cp ./memory_launcher_writer-FINALROM.gcd " + - "$TWL_IPL_RED_ROOT/build/systemMenu_tools/SystemLogReader/memory_launcher_writer-FINALROM.#{buildtype}.gcd -f" -end \ No newline at end of file