mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 06:09:22 +02:00
* updates so it works with the ide
This commit is contained in:
parent
43b4274a6d
commit
2a1adf0ee6
File diff suppressed because it is too large
Load Diff
@ -73,6 +73,9 @@ type
|
|||||||
{ Total Status }
|
{ Total Status }
|
||||||
compiledlines : longint; { the number of lines which are compiled }
|
compiledlines : longint; { the number of lines which are compiled }
|
||||||
errorcount : longint; { number of generated errors }
|
errorcount : longint; { number of generated errors }
|
||||||
|
{ program info }
|
||||||
|
isexe,
|
||||||
|
islibrary : boolean;
|
||||||
{ Settings for the output }
|
{ Settings for the output }
|
||||||
verbosity : longint;
|
verbosity : longint;
|
||||||
maxerrorcount : longint;
|
maxerrorcount : longint;
|
||||||
@ -82,7 +85,8 @@ type
|
|||||||
skip_error,
|
skip_error,
|
||||||
use_stderr,
|
use_stderr,
|
||||||
use_redir,
|
use_redir,
|
||||||
use_gccoutput : boolean;
|
use_gccoutput,
|
||||||
|
compiling_current : boolean;
|
||||||
{ Redirection support }
|
{ Redirection support }
|
||||||
redirfile : text;
|
redirfile : text;
|
||||||
end;
|
end;
|
||||||
@ -351,7 +355,10 @@ end;
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.15 2001-06-07 21:25:57 peter
|
Revision 1.16 2001-08-04 10:23:54 peter
|
||||||
|
* updates so it works with the ide
|
||||||
|
|
||||||
|
Revision 1.15 2001/06/07 21:25:57 peter
|
||||||
* Regenerated
|
* Regenerated
|
||||||
|
|
||||||
Revision 1.14 2001/06/06 17:20:21 jonas
|
Revision 1.14 2001/06/06 17:20:21 jonas
|
||||||
|
@ -112,6 +112,8 @@ interface
|
|||||||
tmodulebase = class(TLinkedListItem)
|
tmodulebase = class(TLinkedListItem)
|
||||||
{ index }
|
{ index }
|
||||||
unit_index : longint; { global counter for browser }
|
unit_index : longint; { global counter for browser }
|
||||||
|
{ status }
|
||||||
|
in_compile : boolean; { is it being compiled ?? }
|
||||||
{ sources }
|
{ sources }
|
||||||
sourcefiles : tinputfilemanager;
|
sourcefiles : tinputfilemanager;
|
||||||
{ paths and filenames }
|
{ paths and filenames }
|
||||||
@ -653,6 +655,8 @@ uses
|
|||||||
exefilename:=nil;
|
exefilename:=nil;
|
||||||
outputpath:=nil;
|
outputpath:=nil;
|
||||||
path:=nil;
|
path:=nil;
|
||||||
|
{ status }
|
||||||
|
in_compile:=false;
|
||||||
{ unit index }
|
{ unit index }
|
||||||
inc(global_unit_count);
|
inc(global_unit_count);
|
||||||
unit_index:=global_unit_count;
|
unit_index:=global_unit_count;
|
||||||
@ -683,7 +687,10 @@ uses
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.10 2001-06-03 15:15:31 peter
|
Revision 1.11 2001-08-04 10:23:54 peter
|
||||||
|
* updates so it works with the ide
|
||||||
|
|
||||||
|
Revision 1.10 2001/06/03 15:15:31 peter
|
||||||
* dllprt0 stub for linux shared libs
|
* dllprt0 stub for linux shared libs
|
||||||
* pass -init and -fini for linux shared libs
|
* pass -init and -fini for linux shared libs
|
||||||
* libprefix splitted into staticlibprefix and sharedlibprefix
|
* libprefix splitted into staticlibprefix and sharedlibprefix
|
||||||
|
@ -90,7 +90,6 @@ interface
|
|||||||
sources_avail, { if all sources are reachable }
|
sources_avail, { if all sources are reachable }
|
||||||
sources_checked, { if there is already done a check for the sources }
|
sources_checked, { if there is already done a check for the sources }
|
||||||
is_unit,
|
is_unit,
|
||||||
in_compile, { is it being compiled ?? }
|
|
||||||
in_second_compile, { is this unit being compiled for the 2nd time? }
|
in_second_compile, { is this unit being compiled for the 2nd time? }
|
||||||
in_second_load, { is this unit PPU loaded a 2nd time? }
|
in_second_load, { is this unit PPU loaded a 2nd time? }
|
||||||
in_implementation, { processing the implementation part? }
|
in_implementation, { processing the implementation part? }
|
||||||
@ -406,7 +405,6 @@ uses
|
|||||||
compiled:=false;
|
compiled:=false;
|
||||||
recompile_reason:=rr_unknown;
|
recompile_reason:=rr_unknown;
|
||||||
in_second_load:=false;
|
in_second_load:=false;
|
||||||
in_compile:=false;
|
|
||||||
in_second_compile:=false;
|
in_second_compile:=false;
|
||||||
in_implementation:=false;
|
in_implementation:=false;
|
||||||
in_global:=true;
|
in_global:=true;
|
||||||
@ -589,7 +587,10 @@ uses
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.17 2001-06-04 11:49:08 peter
|
Revision 1.18 2001-08-04 10:23:54 peter
|
||||||
|
* updates so it works with the ide
|
||||||
|
|
||||||
|
Revision 1.17 2001/06/04 11:49:08 peter
|
||||||
* store used units in original type in ppu
|
* store used units in original type in ppu
|
||||||
|
|
||||||
Revision 1.16 2001/06/03 15:15:31 peter
|
Revision 1.16 2001/06/03 15:15:31 peter
|
||||||
|
@ -211,7 +211,6 @@ interface
|
|||||||
RelocSection : boolean = true;
|
RelocSection : boolean = true;
|
||||||
RelocSectionSetExplicitly : boolean = false;
|
RelocSectionSetExplicitly : boolean = false;
|
||||||
LinkTypeSetExplicitly : boolean = false;
|
LinkTypeSetExplicitly : boolean = false;
|
||||||
IsExe : boolean = false;
|
|
||||||
DLLsource : boolean = false;
|
DLLsource : boolean = false;
|
||||||
DLLImageBase : pstring = nil;
|
DLLImageBase : pstring = nil;
|
||||||
UseDeffileForExport : boolean = true;
|
UseDeffileForExport : boolean = true;
|
||||||
@ -1250,9 +1249,6 @@ implementation
|
|||||||
do_release:=false;
|
do_release:=false;
|
||||||
do_make:=true;
|
do_make:=true;
|
||||||
compile_level:=0;
|
compile_level:=0;
|
||||||
{ these two should not be cleared in
|
|
||||||
DoneGlobals as the IDE might need their value }
|
|
||||||
IsExe:=false;
|
|
||||||
DLLsource:=false;
|
DLLsource:=false;
|
||||||
|
|
||||||
{ Output }
|
{ Output }
|
||||||
@ -1331,7 +1327,10 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.39 2001-07-01 20:16:15 peter
|
Revision 1.40 2001-08-04 10:23:54 peter
|
||||||
|
* updates so it works with the ide
|
||||||
|
|
||||||
|
Revision 1.39 2001/07/01 20:16:15 peter
|
||||||
* alignmentinfo record added
|
* alignmentinfo record added
|
||||||
* -Oa argument supports more alignment settings that can be specified
|
* -Oa argument supports more alignment settings that can be specified
|
||||||
per type: PROC,LOOP,VARMIN,VARMAX,CONSTMIN,CONSTMAX,RECORDMIN
|
per type: PROC,LOOP,VARMIN,VARMAX,CONSTMIN,CONSTMAX,RECORDMIN
|
||||||
|
@ -690,6 +690,8 @@ implementation
|
|||||||
|
|
||||||
begin
|
begin
|
||||||
consume(_UNIT);
|
consume(_UNIT);
|
||||||
|
if compile_level=1 then
|
||||||
|
Status.IsExe:=false;
|
||||||
|
|
||||||
if token=_ID then
|
if token=_ID then
|
||||||
begin
|
begin
|
||||||
@ -1044,13 +1046,15 @@ implementation
|
|||||||
if (Errorcount=0) then
|
if (Errorcount=0) then
|
||||||
tppumodule(current_module).writeppu;
|
tppumodule(current_module).writeppu;
|
||||||
|
|
||||||
|
if not(cs_compilesystem in aktmoduleswitches) then
|
||||||
|
if store_interface_crc<>current_module.interface_crc then
|
||||||
|
Comment(V_Warning,current_module.ppufilename^+' Interface CRC changed '+
|
||||||
|
hexstr(store_crc,8)+'<>'+hexstr(current_module.interface_crc,8));
|
||||||
{$ifdef EXTDEBUG}
|
{$ifdef EXTDEBUG}
|
||||||
if store_interface_crc<>current_module.interface_crc then
|
if not(cs_compilesystem in aktmoduleswitches) then
|
||||||
Comment(V_Warning,current_module.ppufilename^+' Interface CRC changed '+
|
if (store_crc<>current_module.crc) and simplify_ppu then
|
||||||
hexstr(store_crc,8)+'<>'+hexstr(current_module.interface_crc,8));
|
Comment(V_Warning,current_module.ppufilename^+' implementation CRC changed '+
|
||||||
if (store_crc<>current_module.crc) and simplify_ppu then
|
hexstr(store_crc,8)+'<>'+hexstr(current_module.interface_crc,8));
|
||||||
Comment(V_Warning,current_module.ppufilename^+' implementation CRC changed '+
|
|
||||||
hexstr(store_crc,8)+'<>'+hexstr(current_module.interface_crc,8));
|
|
||||||
{$endif EXTDEBUG}
|
{$endif EXTDEBUG}
|
||||||
|
|
||||||
{ remove static symtable (=refsymtable) here to save some mem }
|
{ remove static symtable (=refsymtable) here to save some mem }
|
||||||
@ -1079,7 +1083,8 @@ implementation
|
|||||||
hp : tmodule;
|
hp : tmodule;
|
||||||
begin
|
begin
|
||||||
DLLsource:=islibrary;
|
DLLsource:=islibrary;
|
||||||
IsExe:=true;
|
Status.IsLibrary:=IsLibrary;
|
||||||
|
Status.IsExe:=true;
|
||||||
parse_only:=false;
|
parse_only:=false;
|
||||||
{ relocation works only without stabs under win32 !! PM }
|
{ relocation works only without stabs under win32 !! PM }
|
||||||
{ internal assembler uses rva for stabs info
|
{ internal assembler uses rva for stabs info
|
||||||
@ -1333,18 +1338,8 @@ implementation
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.39 2001-08-01 15:07:29 jonas
|
Revision 1.40 2001-08-04 10:23:54 peter
|
||||||
+ "compilerproc" directive support, which turns both the public and mangled
|
* updates so it works with the ide
|
||||||
name to lowercase(declaration_name). This prevents a normal user from
|
|
||||||
accessing the routine, but they can still be easily looked up within
|
|
||||||
the compiler. This is used for helper procedures and should facilitate
|
|
||||||
the writing of more processor independent code in the code generator
|
|
||||||
itself (mostly written by Peter)
|
|
||||||
+ new "createintern" constructor for tcal nodes to create a call to
|
|
||||||
helper exported using the "compilerproc" directive
|
|
||||||
+ support for high(dynamic_array) using the the above new things
|
|
||||||
+ definition of 'HASCOMPILERPROC' symbol (to be able to check in the
|
|
||||||
compiler and rtl whether the "compilerproc" directive is supported)
|
|
||||||
|
|
||||||
Revision 1.38 2001/07/30 20:59:27 peter
|
Revision 1.38 2001/07/30 20:59:27 peter
|
||||||
* m68k updates from v10 merged
|
* m68k updates from v10 merged
|
||||||
|
@ -333,6 +333,8 @@ var
|
|||||||
lastfileidx:=0;
|
lastfileidx:=0;
|
||||||
lastmoduleidx:=current_module.unit_index;
|
lastmoduleidx:=current_module.unit_index;
|
||||||
end;
|
end;
|
||||||
|
if assigned(current_module) then
|
||||||
|
status.compiling_current:=current_module.in_compile;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -655,6 +657,12 @@ var
|
|||||||
status.verbosity:=V_Default;
|
status.verbosity:=V_Default;
|
||||||
Status.MaxErrorCount:=50;
|
Status.MaxErrorCount:=50;
|
||||||
Loadprefixes;
|
Loadprefixes;
|
||||||
|
lastfileidx:=-1;
|
||||||
|
lastmoduleidx:=-1;
|
||||||
|
status.currentmodule:='';
|
||||||
|
status.currentsource:='';
|
||||||
|
status.currentsourcepath:='';
|
||||||
|
status.compiling_current:=false;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
@ -672,7 +680,10 @@ var
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.14 2001-05-27 14:30:55 florian
|
Revision 1.15 2001-08-04 10:23:55 peter
|
||||||
|
* updates so it works with the ide
|
||||||
|
|
||||||
|
Revision 1.14 2001/05/27 14:30:55 florian
|
||||||
+ some widestring stuff added
|
+ some widestring stuff added
|
||||||
|
|
||||||
Revision 1.13 2001/04/13 01:22:17 peter
|
Revision 1.13 2001/04/13 01:22:17 peter
|
||||||
|
Loading…
Reference in New Issue
Block a user