R日本語ドキュメントパッチをビルドする on Windows

お品書き

1.first_env.bat
これはD:\をC:\D_DRIVEを永続的に割り付けるバッチです
1-1.local330.reg
これはD:\をC:\D_DRIVEを永続的に割り付けるレジストリファイルです(first_env.bat)の中で利用されます
2.second_env.bat
perl及びMiKTeXとInnoSetupをダウンロードしてインストールするバッチです
2-1.is-unicode.inf
これはInnoSetupをインストールするときにpath当の設定を行うINFファイルです
3.setup_env.bat
これはRtools,cairo,libcurlおよびlocal330をインストールするバッチです
3-1.Rtools33.inf
これはRtoolsをインストールするときにpathの設定を行うINFファイルです
3-2.Rtools33_nopath.inf
これはRtoolsをインストールするときにpathの設定を行わないINFファイルです
4.MkR.bat
これはRをビルドするバッチです
4-1.MkRules.local.32
これは32bitRをビルドするMkRules.localです
4-2.MkRules.local.64
これは64bitRをビルドするMkRules.localです
[ICO]NameLast modifiedSizeDescription

[PARENTDIR]Parent Directory  -  
[   ]is-unicode.inf2016-08-29 10:16 94  
[   ]Rtools33_nopath.inf2016-07-29 21:05 170  
[   ]Rtools33.inf2016-07-29 21:05 178  
[   ]local330.reg2016-07-29 21:05 304  
[   ]first_env.bat2016-08-22 21:13 626  
[   ]MkRules.local.322016-08-23 13:57 692  
[   ]MkRules.local.642016-08-23 13:57 701  
[   ]setup_env.bat2016-08-22 22:40 1.5K 
[   ]MkR.bat2016-10-04 20:56 2.5K 
[   ]second_env.bat2016-08-29 10:16 2.8K 

手順

1.D:ドライブの作成(first_env.bat)
より多くの人はD:をもたず,持っていても光学ドライブと言うケースが多いと思います.
Rの標準配布ではLOCAL_SOFT(R_HOME/etc/R_ARCH/Makeconf)に"D:/Compiler/gcc-4.9.3/local330"が指定されているのでこれと同じ環境を作る事とします.
D:が光学ドライブの場合は[コントロールパネル]->[システムとセキュリティ]->[管理ツール] を選び, "コンピューターの管理"を起動し,[記憶域]->[ディスクの管理]を選択して, 光学ドライブを選択して[ドライブ文字とパスの変更]を選んでドライブ文字をD:以外にします.
そして, C:\D_DRIVEを作って, レジストリに登録する事によって永続的にD:がC:D_DRIVEになるようにします.
古い人はsubstコマンドを思い浮かべるかと思いますが, 違いは永続的である点です.
2.perlとMiKTeX及びInnoSetupのインストール(second_env.bat)
perlはtexinfoの為に, MiXTeXはドキュメントの作成の為にインストールします. InnoSetupはWindows版のインストーラを作成するツールです.
3.Rtools,cairo,libcurlおよびlocal330のインストール(setup_env.bat)
Rtoolsはツールチェーン(stableはRtools33), local330(基礎的なライブラリ群)はrsyncを使ってダウンロードしてますが, https://cran.ism.ac.jp/bin/windows/extsoft/3.3/ からダウンロードも可能です. CRAN公式ドキュメントにしたがってcairo, libcurlは変更無いものとしてダウンロードしています.
4.Rのビルド(MkR.bat)
説明がめんどくさいので, バッチファイルにまとめてあります. MkR.batを実行すればダウンロードしてきてビルドを始めます. 上手くビルド可能であれば, R-x.x.x/src/gnuwin32/installer/配下にexeが出来上がります.