* use as,ld,ar instead of asw,ldw,arw for win32

This commit is contained in:
peter 2003-10-02 21:17:08 +00:00
parent 7d3f0468e4
commit 4b89bdf738
5 changed files with 43 additions and 38 deletions

View File

@ -40,8 +40,8 @@ interface
{$endif}
var
asw_name,
arw_name : string;
as_name,
ar_name : string;
function makedef(const binname,
{$IFDEF STANDALONE}
@ -173,12 +173,11 @@ procedure CreateTempDir(const s:string);
if ioresult<>0 then;
end;
end;
procedure call_asw(const name:string);
procedure call_as(const name:string);
begin
writeln(name);
exec(asw_name,'-o '+name+'o '+name);
exec(as_name,'-o '+name+'o '+name);
end;
procedure call_arw;
procedure call_ar;
var
f:file;
attr:word;
@ -191,7 +190,7 @@ procedure call_arw;
GetFAttr(f,attr);
If DOSError=0 then
erase(f);
exec(arw_name,'rs '+impname+' '+path+dirsep+'*.swo');
exec(ar_name,'rs '+impname+' '+path+dirsep+'*.swo');
cleardir(path,'*.sw');
cleardir(path,'*.swo');
{$i-}
@ -294,7 +293,7 @@ procedure makeasm(index:cardinal;name:pchar;isData:longbool);
writeln(f,s);
end;
close(f);
call_asw(asmout);
call_as(asmout);
common_created:=true;
end;
n:=strpas(name);
@ -316,7 +315,7 @@ procedure makeasm(index:cardinal;name:pchar;isData:longbool);
writeln(f,s);
end;
close(f);
call_asw(asmout);
call_as(asmout);
end;
procedure ProcessEdata;
type
@ -402,7 +401,7 @@ procedure ProcessEdata;
{$ENDIF}
makeasm(j,cstring,isData);
end;
call_arw;
call_ar;
end;
end;
@ -479,7 +478,10 @@ end.
{
$Log$
Revision 1.10 2002-10-05 12:43:24 carl
Revision 1.11 2003-10-02 21:17:08 peter
* use as,ld,ar instead of asw,ldw,arw for win32
Revision 1.10 2002/10/05 12:43:24 carl
* fixes for Delphi 6 compilation
(warning : Some features do not work under Delphi)

View File

@ -111,8 +111,8 @@ interface
system_x86_64_linux, { 26 }
system_powerpc_darwin, { 27 }
system_i386_EMX, { 28 }
system_powerpc_netbsd, { 29 }
system_powerpc_openbsd, { 30 }
system_powerpc_netbsd, { 29 }
system_powerpc_openbsd, { 30 }
system_arm_linux, { 31 }
system_i386_watcom { 32 }
);
@ -120,7 +120,6 @@ interface
tasm = (as_none
,as_gas { standard gnu assembler }
,as_i386_as_aout
,as_i386_asw
,as_i386_nasmcoff
,as_i386_nasmwin32
,as_i386_nasmwdosx
@ -138,7 +137,7 @@ interface
);
tar = (ar_none
,ar_gnu_ar,ar_gnu_arw,ar_mpw_ar
,ar_gnu_ar,ar_mpw_ar
);
tres = (res_none
@ -697,7 +696,10 @@ finalization
end.
{
$Log$
Revision 1.68 2003-09-05 17:41:13 florian
Revision 1.69 2003-10-02 21:17:08 peter
* use as,ld,ar instead of asw,ldw,arw for win32
Revision 1.68 2003/09/05 17:41:13 florian
* merged Wiktor's Watcom patches in 1.1
Revision 1.67 2003/08/08 15:49:24 olle

View File

@ -62,10 +62,10 @@ unit i_wdosx;
dirsep : '\';
files_case_relevent : false;
assem : as_i386_pecoffwdosx;
assemextern : as_i386_asw;
assemextern : as_gas;
link : nil;
linkextern : nil;
ar : ar_gnu_arw;
ar : ar_gnu_ar;
res : res_gnu_windres;
script : script_dos;
endian : endian_little;
@ -105,7 +105,10 @@ initialization
end.
{
$Log$
Revision 1.3 2003-03-23 23:31:54 hajny
Revision 1.4 2003-10-02 21:17:08 peter
* use as,ld,ar instead of asw,ldw,arw for win32
Revision 1.3 2003/03/23 23:31:54 hajny
+ platform extensions unified
Revision 1.2 2002/09/07 15:25:15 peter

View File

@ -27,13 +27,6 @@ unit i_win32;
uses
systems;
const
ar_gnu_arw_info : tarinfo =
(
id : ar_gnu_arw;
arcmd : 'arw rs $LIB $FILES'
);
const
res_gnu_windres_info : tresinfo =
(
@ -77,10 +70,10 @@ unit i_win32;
dirsep : '\';
files_case_relevent : false;
assem : as_i386_pecoff;
assemextern : as_i386_asw;
assemextern : as_gas;
link : nil;
linkextern : nil;
ar : ar_gnu_arw;
ar : ar_gnu_ar;
res : res_gnu_windres;
script : script_dos;
endian : endian_little;
@ -120,7 +113,10 @@ initialization
end.
{
$Log$
Revision 1.3 2003-03-23 23:31:54 hajny
Revision 1.4 2003-10-02 21:17:08 peter
* use as,ld,ar instead of asw,ldw,arw for win32
Revision 1.3 2003/03/23 23:31:54 hajny
+ platform extensions unified
Revision 1.2 2002/09/07 15:25:15 peter

View File

@ -261,7 +261,7 @@ const
const
MainAsmFormats=[as_i386_asw,as_i386_pecoff,as_i386_pecoffwdosx];
MainAsmFormats=[as_i386_pecoff,as_i386_pecoffwdosx];
procedure timportlibwin32.generatesmartlib;
var
@ -862,17 +862,17 @@ Procedure TLinkerWin32.SetDefaultInfo;
begin
with Info do
begin
ExeCmd[1]:='ldw $OPT $STRIP $APPTYPE $IMAGEBASE $RELOC -o $EXE $RES';
DllCmd[1]:='ldw $OPT $STRIP --dll $APPTYPE $IMAGEBASE $RELOC -o $EXE $RES';
ExeCmd[1]:='ld $OPT $STRIP $APPTYPE $IMAGEBASE $RELOC -o $EXE $RES';
DllCmd[1]:='ld $OPT $STRIP --dll $APPTYPE $IMAGEBASE $RELOC -o $EXE $RES';
if RelocSection or UseDeffileForExport then
begin
{ ExeCmd[2]:='dlltool --as $ASBIN --dllname $EXE --output-exp exp.$$$ $RELOC $DEF';
use short forms to avoid 128 char limitation problem }
ExeCmd[2]:='dlltool -S $ASBIN -D $EXE -e exp.$$$ $RELOC $DEF';
ExeCmd[3]:='ldw $OPT $STRIP $APPTYPE $IMAGEBASE -o $EXE $RES exp.$$$';
ExeCmd[3]:='ld $OPT $STRIP $APPTYPE $IMAGEBASE -o $EXE $RES exp.$$$';
{ DllCmd[2]:='dlltool --as $ASBIN --dllname $EXE --output-exp exp.$$$ $RELOC $DEF'; }
DllCmd[2]:='dlltool -S $ASBIN -D $EXE -e exp.$$$ $RELOC $DEF';
DllCmd[3]:='ldw $OPT $STRIP --dll $APPTYPE $IMAGEBASE -o $EXE $RES exp.$$$';
DllCmd[3]:='ld $OPT $STRIP --dll $APPTYPE $IMAGEBASE -o $EXE $RES exp.$$$';
end;
end;
end;
@ -1007,7 +1007,7 @@ begin
AppTypeStr:='';
ImageBaseStr:='';
StripStr:='';
AsBinStr:=FindUtil('asw');
AsBinStr:=FindUtil('as');
if RelocSection then
{ Using short form to avoid problems with 128 char limitation under Dos. }
RelocStr:='-b base.$$$';
@ -1087,7 +1087,7 @@ begin
AppTypeStr:='';
ImageBaseStr:='';
StripStr:='';
AsBinStr:=FindUtil('asw');
AsBinStr:=FindUtil('as');
if RelocSection then
{ Using short form to avoid problems with 128 char limitation under Dos. }
RelocStr:='-b base.$$$';
@ -1620,14 +1620,16 @@ initialization
RegisterImport(system_i386_win32,TImportLibWin32);
RegisterExport(system_i386_win32,TExportLibWin32);
RegisterDLLScanner(system_i386_win32,TDLLScannerWin32);
RegisterAr(ar_gnu_arw_info);
RegisterRes(res_gnu_windres_info);
RegisterTarget(system_i386_win32_info);
{$endif i386}
end.
{
$Log$
Revision 1.19 2003-09-30 20:10:12 peter
Revision 1.20 2003-10-02 21:17:08 peter
* use as,ld,ar instead of asw,ldw,arw for win32
Revision 1.19 2003/09/30 20:10:12 peter
* smartlink fix for dlls from Pavel
Revision 1.18 2003/08/21 14:47:41 peter