summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authormichael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-08-23 09:46:45 +0000
committermichael <michael@3ad0048d-3df7-0310-abae-a5850022a9f2>2020-08-23 09:46:45 +0000
commit96df9748ebe71abdb72500eb3f68ebe22a142164 (patch)
tree0e4c6c358df7a1004ae4ac9b33ec91a51bf4d7e9 /utils
parent1efd9936d5b785ca59cadb5a7a353534716009f3 (diff)
downloadfpc-96df9748ebe71abdb72500eb3f68ebe22a142164.tar.gz
* Merging revisions r46444 from trunk:
------------------------------------------------------------------------ r46444 | michael | 2020-08-15 09:31:43 +0200 (Sat, 15 Aug 2020) | 1 line * Expose ExtraUnits, remove hardcoded DTypesUnit, patch by Henrique Werlang (bug ID 37570) ------------------------------------------------------------------------ git-svn-id: https://svn.freepascal.org/svn/fpc/branches/fixes_3_2@46625 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'utils')
-rw-r--r--utils/pas2js/libstub.pp6
-rw-r--r--utils/pas2js/stubcreator.pp14
2 files changed, 8 insertions, 12 deletions
diff --git a/utils/pas2js/libstub.pp b/utils/pas2js/libstub.pp
index 5235f0bd5b..4d8a3ff063 100644
--- a/utils/pas2js/libstub.pp
+++ b/utils/pas2js/libstub.pp
@@ -153,6 +153,11 @@ begin
TStubCreator(P).OnUnitAliasData:=CallBackData;
end;
+Procedure AddStubCreatorExtraUnit(P : PStubCreator; AUnitName : PAnsiChar); stdcall;
+begin
+ TStubCreator(P).ExtraUnits:=AUnitName;
+end;
+
exports
// Stub creator
GetStubCreator,
@@ -166,6 +171,7 @@ exports
GetStubCreatorLastError,
AddStubCreatorDefine,
AddStubCreatorForwardClass,
+ AddStubCreatorExtraUnit,
ExecuteStubCreator,
SetStubCreatorUnitAliasCallBack;
diff --git a/utils/pas2js/stubcreator.pp b/utils/pas2js/stubcreator.pp
index 39e0ce4aec..8b5402b3bf 100644
--- a/utils/pas2js/stubcreator.pp
+++ b/utils/pas2js/stubcreator.pp
@@ -19,9 +19,6 @@ interface
uses
Classes, SysUtils, strutils, inifiles, pscanner, pparser, pastree, iostream, paswrite;
-Const
- DTypesUnit = 'jsdelphisystem';
-
type
{ We have to override abstract TPasTreeContainer methods }
@@ -90,6 +87,7 @@ type
Property OnUnitAliasData : Pointer Read FOnUnitAliasData Write FOnUnitAliasData;
Property OnWriteCallBack : TWriteCallBack Read FOnWriteCallBack Write SetWriteCallback;
Property CallbackData : Pointer Read FCallBackData Write FCallBackData;
+ Property ExtraUnits : String Read FExtraUnits write FExtraUnits;
Published
Property Defines : TStrings Read FDefines Write SetDefines;
Property ConfigFileName : String Read FConfigFile Write FConfigFile;
@@ -390,7 +388,6 @@ procedure TStubCreator.WriteModule(M: TPasModule);
Var
F,H : TStream;
W : TPasWriter;
- U : String;
begin
W:=Nil;
@@ -411,18 +408,11 @@ begin
end;
W:=TPasWriter.Create(F);
W.Options:=FOptions;
- U:=FExtraUnits;
+ W.ExtraUnits:=FExtraUnits;
if Assigned(FOnUnitAlias) then
W.OnUnitAlias:=@CheckUnitAlias;
- if Pos(LowerCase(DTypesUnit),LowerCase(U)) = 0 then
- begin
- if (U<>'') then
- U:=','+U;
- U:=DTypesUnit+U;
- end;
- W.ExtraUnits:=U;
if FIndentSize<>-1 then
W.IndentSize:=FIndentSize;
if FLineNumberWidth>0 then