* ar patch from Yury

git-svn-id: trunk@2638 -
This commit is contained in:
florian 2006-02-19 21:33:59 +00:00
parent 3a1cac6f0d
commit 2c10e841b9

View File

@ -619,14 +619,15 @@ begin
{ Call AR } { Call AR }
smartpath:=current_module.outputpath^+FixPath(lower(current_module.modulename^)+target_info.smartext,false); smartpath:=current_module.outputpath^+FixPath(lower(current_module.modulename^)+target_info.smartext,false);
SplitBinCmd(target_ar.arcmd,binstr,cmdstr); SplitBinCmd(target_ar.arcmd,binstr,cmdstr);
binstr := FindUtil(utilsprefix + binstr);
Replace(cmdstr,'$LIB',maybequoted(current_module.staticlibfilename^)); Replace(cmdstr,'$LIB',maybequoted(current_module.staticlibfilename^));
{ create AR commands } { create AR commands }
success := true; success := true;
nextcmd := cmdstr; nextcmd := cmdstr;
current := TStringListItem(SmartLinkOFiles.First); current := TStringListItem(SmartLinkOFiles.First);
repeat repeat
Replace(nextcmd,'$FILES',GetNextFiles(240 - length(nextcmd), current)); Replace(nextcmd,'$FILES',GetNextFiles(240 - length(nextcmd) + 6 - length(binstr) - 1, current));
success:=DoExec(FindUtil(binstr),nextcmd,false,true); success:=DoExec(binstr,nextcmd,false,true);
nextcmd := cmdstr; nextcmd := cmdstr;
until (not assigned(current)) or (not success); until (not assigned(current)) or (not success);