72 lines
2.4 KiB
Perl
72 lines
2.4 KiB
Perl
|
$LocalizeBinList=$ARGV[0];
|
||
|
$TargetOS=$ARGV[1];
|
||
|
|
||
|
$BuildType=$ENV{NTDEBUG};
|
||
|
$BinPlaceFile=$ENV{BINPLACE_PLACEFILE};
|
||
|
$BuildErrMsg="nmake : error GENLOC : ";
|
||
|
|
||
|
|
||
|
open(LOCALIZEBINLIST,">$LocalizeBinList") || die "$BuildErrMsg Unable to open $LocalizeBinList for write\n";
|
||
|
|
||
|
open(BINPLACEFILE,$BinPlaceFile) || die "$BuildErrMsg Unable to open $BinPlaceFile for reading\n";
|
||
|
@LocalizedFiles=grep(m/;localize/g,<BINPLACEFILE>);
|
||
|
close BINPLACEFILE;
|
||
|
|
||
|
print LOCALIZEBINLIST "PRELOCBINS= \\\n";
|
||
|
|
||
|
foreach (@LocalizedFiles) {
|
||
|
@DataLine=split;
|
||
|
$DataLine[1]=~s/retail/\./;
|
||
|
if (($DataLine[0]!~m/directx\.cpl/i && $DataLine[0]!~m/\.inf/i) &&
|
||
|
((($TargetOS=~m/Win9X/i) && ($DataLine[0]!~m/directx\.cpl/i)) ||
|
||
|
(($TargetOS!~m/Win9X/i) && ($DataLine[0]!~m/dxsetup\.exe/i) && ($DataLine[0]!~m/dsetup32\.dll/i) && ($DataLine[0]!~m/migrate\.dll/i)))) {
|
||
|
if ($#DataLine > 3) {
|
||
|
$IfDefs="!if ((\"\$(MULTI_PLACEFILE)\" == \"1\")";
|
||
|
for ($Counter=3, ,$#DataLine) {
|
||
|
$IfDefs="$IfDefs || (\"\$(LANGUAGE)\" == \"$DataLine[$Counter++]\")";
|
||
|
}
|
||
|
print LOCALIZEBINLIST "$IfDefs)\n";
|
||
|
}
|
||
|
#diquick hack
|
||
|
if ($DataLine[0]=~m/diquick\.exe/i) {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE:Win9x=samples)\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
} elsif ($DataLine[0]=~m/dplay\.dll/i || $DataLine[0]=~m/dpserial\.dll/i) {
|
||
|
if ($TargetOS=~m/Win9X/i) {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE)\\..\\dx6\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
} else {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE)\\redist\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
}
|
||
|
} elsif ($DataLine[0]=~m/migrate\.dll/i) {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE)\\..\\dx8\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
} else {
|
||
|
|
||
|
if ($TargetOS=~m/Win9X/i) {
|
||
|
$AltNTTree="\$(_ALT_NTTREE)\\win9x";
|
||
|
} else {
|
||
|
$AltNTTree="\$(_ALT_NTTREE)";
|
||
|
}
|
||
|
|
||
|
if (($BuildType eq "" || $BuildType eq "ntsdnodbg")) {
|
||
|
if ($DataLine[0]=~m/dinput8d\.dll/i || $DataLine[0]=~m/d3d8d\.dll/i || $DataLine[0]=~m/dmusicd\.dll/i) {
|
||
|
print LOCALIZEBINLIST "$AltNTTree\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
} else {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE)\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
}
|
||
|
} else {
|
||
|
if ($DataLine[0]=~m/dinput8\.dll/i || $DataLine[0]=~m/d3d8\.dll/i || $DataLine[0]=~m/dmusic\.dll/i) {
|
||
|
print LOCALIZEBINLIST "$AltNTTree\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
} else {
|
||
|
print LOCALIZEBINLIST "\$(_NTTREE)\\$DataLine[1]\\$DataLine[0] \\\n";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
if ($IfDefs) {
|
||
|
undef $IfDefs;
|
||
|
print LOCALIZEBINLIST "!endif\n";
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
close LOCALIZEBINLIST;
|
||
|
exit;
|