diff --git a/packages/fcl-pdf/fpmake.pp b/packages/fcl-pdf/fpmake.pp
index 6f3f7fb6d8..b47549b6c9 100644
--- a/packages/fcl-pdf/fpmake.pp
+++ b/packages/fcl-pdf/fpmake.pp
@@ -23,7 +23,7 @@ begin
     P.Email := '';
     P.Description := 'PDF generating and TTF file info library';
     P.NeedLibC:= false;
-    P.OSes:=P.OSes-[embedded,win16,msdos];
+    P.OSes:=P.OSes-[embedded,win16,msdos,nativent];
     P.Dependencies.Add('rtl-objpas');
     P.Dependencies.Add('fcl-base');
     P.Dependencies.Add('fcl-image');
diff --git a/rtl/nativent/Makefile.fpc b/rtl/nativent/Makefile.fpc
index 373169846f..5c13b0a407 100644
--- a/rtl/nativent/Makefile.fpc
+++ b/rtl/nativent/Makefile.fpc
@@ -123,6 +123,9 @@ macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) buildrtl$(PPUEXT)
 iso7185$(PPUEXT) : $(INC)/iso7185.pp $(SYSTEMUNIT)$(PPUEXT)
         $(COMPILER) $(INC)/iso7185.pp
 
+extpas$(PPUEXT) : $(INC)/extpas.pp dos$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
+        $(COMPILER) $(INC)/extpas.pp
+
 buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) objpas$(PPUEXT)
         $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(OBJPASDIR) -Fi$(DDKINC) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
 
diff --git a/rtl/nativent/sysutils.pp b/rtl/nativent/sysutils.pp
index 74f225b3e3..8a7eafb97a 100644
--- a/rtl/nativent/sysutils.pp
+++ b/rtl/nativent/sysutils.pp
@@ -1194,17 +1194,39 @@ begin
 end;
 
 
-function ExecuteProcess(const Path: AnsiString; const ComLine: AnsiString;
+function ExecuteProcess(const Path: RawByteString; const ComLine: RawByteString;
   Flags: TExecuteFlags = []): Integer;
 begin
   { TODO : implement }
   Result := 0;
 end;
 
-function ExecuteProcess(const Path: AnsiString;
-  const ComLine: Array of AnsiString; Flags:TExecuteFlags = []): Integer;
+function ExecuteProcess(const Path: RawByteString;
+  const ComLine: Array of RawByteString; Flags:TExecuteFlags = []): Integer;
 var
-  CommandLine: AnsiString;
+  CommandLine: RawByteString;
+  I: integer;
+begin
+  Commandline := '';
+  for I := 0 to High (ComLine) do
+   if Pos (' ', ComLine [I]) <> 0 then
+    CommandLine := CommandLine + ' ' + '"' + ComLine [I] + '"'
+   else
+    CommandLine := CommandLine + ' ' + Comline [I];
+  ExecuteProcess := ExecuteProcess (Path, CommandLine,Flags);
+end;
+
+function ExecuteProcess(const Path: UnicodeString; const ComLine: UnicodeString;
+  Flags: TExecuteFlags = []): Integer;
+begin
+  { TODO : implement }
+  Result := 0;
+end;
+
+function ExecuteProcess(const Path: UnicodeString;
+  const ComLine: Array of UnicodeString; Flags:TExecuteFlags = []): Integer;
+var
+  CommandLine: UnicodeString;
   I: integer;
 begin
   Commandline := '';