mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-09 09:46:00 +02:00
* store used units in original type in ppu
This commit is contained in:
parent
55eb369653
commit
e2e2b508be
@ -137,6 +137,7 @@ interface
|
||||
tused_unit = class(tlinkedlistitem)
|
||||
unitid : longint;
|
||||
name : pstring;
|
||||
realname : pstring;
|
||||
checksum,
|
||||
interface_checksum : cardinal;
|
||||
loaded : boolean;
|
||||
@ -312,6 +313,7 @@ uses
|
||||
is_stab_written:=false;
|
||||
loaded:=true;
|
||||
name:=stringdup(_u.modulename^);
|
||||
realname:=stringdup(_u.realmodulename^);
|
||||
checksum:=_u.crc;
|
||||
interface_checksum:=_u.interface_crc;
|
||||
unitid:=0;
|
||||
@ -325,7 +327,8 @@ uses
|
||||
in_uses:=false;
|
||||
is_stab_written:=false;
|
||||
loaded:=false;
|
||||
name:=stringdup(n);
|
||||
name:=stringdup(upper(n));
|
||||
realname:=stringdup(n);
|
||||
checksum:=c;
|
||||
interface_checksum:=intfc;
|
||||
unitid:=0;
|
||||
@ -334,6 +337,7 @@ uses
|
||||
|
||||
destructor tused_unit.destroy;
|
||||
begin
|
||||
stringdispose(realname);
|
||||
stringdispose(name);
|
||||
inherited destroy;
|
||||
end;
|
||||
@ -585,7 +589,10 @@ uses
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.16 2001-06-03 15:15:31 peter
|
||||
Revision 1.17 2001-06-04 11:49:08 peter
|
||||
* store used units in original type in ppu
|
||||
|
||||
Revision 1.16 2001/06/03 15:15:31 peter
|
||||
* dllprt0 stub for linux shared libs
|
||||
* pass -init and -fini for linux shared libs
|
||||
* libprefix splitted into staticlibprefix and sharedlibprefix
|
||||
|
@ -414,7 +414,7 @@ uses
|
||||
{ implementation units should not change
|
||||
the CRC PM }
|
||||
ppufile.do_crc:=hp.in_interface;
|
||||
ppufile.putstring(hp.name^);
|
||||
ppufile.putstring(hp.realname^);
|
||||
{ the checksum should not affect the crc of this unit ! (PFV) }
|
||||
ppufile.do_crc:=false;
|
||||
ppufile.putlongint(longint(hp.checksum));
|
||||
@ -876,7 +876,7 @@ uses
|
||||
begin
|
||||
if (not pu.loaded) and (pu.in_interface) then
|
||||
begin
|
||||
loaded_unit:=loadunit(pu.name^,'');
|
||||
loaded_unit:=loadunit(pu.realname^,'');
|
||||
if compiled then
|
||||
exit;
|
||||
{ register unit in used units }
|
||||
@ -887,7 +887,7 @@ uses
|
||||
{ need to recompile the current unit ? }
|
||||
if loaded_unit.crc<>pu.checksum then
|
||||
begin
|
||||
Message2(unit_u_recompile_crc_change,modulename^,pu.name^);
|
||||
Message2(unit_u_recompile_crc_change,realmodulename^,pu.realname^);
|
||||
recompile_reason:=rr_crcchanged;
|
||||
do_compile:=true;
|
||||
dispose(map);
|
||||
@ -918,7 +918,7 @@ uses
|
||||
begin
|
||||
if (not pu.loaded) and (not pu.in_interface) then
|
||||
begin
|
||||
loaded_unit:=loadunit(pu.name^,'');
|
||||
loaded_unit:=loadunit(pu.realname^,'');
|
||||
if compiled then
|
||||
exit;
|
||||
{ register unit in used units }
|
||||
@ -928,7 +928,7 @@ uses
|
||||
if (loaded_unit.interface_crc<>pu.interface_checksum) {and
|
||||
not(current_module.in_second_compile) } then
|
||||
begin
|
||||
Message2(unit_u_recompile_crc_change,modulename^,pu.name^+' {impl}');
|
||||
Message2(unit_u_recompile_crc_change,realmodulename^,pu.realname^+' {impl}');
|
||||
recompile_reason:=rr_crcchanged;
|
||||
do_compile:=true;
|
||||
dispose(map);
|
||||
@ -1172,7 +1172,10 @@ uses
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.7 2001-05-19 23:05:19 peter
|
||||
Revision 1.8 2001-06-04 11:49:08 peter
|
||||
* store used units in original type in ppu
|
||||
|
||||
Revision 1.7 2001/05/19 23:05:19 peter
|
||||
* support uses <unit> in <file> construction
|
||||
|
||||
Revision 1.6 2001/05/19 21:08:59 peter
|
||||
|
Loading…
Reference in New Issue
Block a user