2
0
Эх сурвалжийг харах

+ Outdated. Needs replacing with a new version.

michael 21 жил өмнө
parent
commit
f0860cd60d

+ 0 - 117
fcl/darwin/process.inc

@@ -1,117 +0,0 @@
-{
-    $Id$
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 1999-2000 by Michael Van Canneyt
-
-    Darwin specific part of TProcess.
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
-uses
-{$ifdef ver1_0}
-  Linux
-{$else}
-  Unix
-{$endif}
-  ;
-
-Function TProcess.GetRunning : Boolean;
-
-begin
-  IF FRunning then
-    FRunning:=GetExitStatus=-1;
-  Result:=FRunning;
-end;
-
-Procedure TProcess.Execute;
-
-begin
-  FreeStreams;
-  CreatePipeStreams (FChildInputSTream,FParentOutPutStream);
-  CreatePipeStreams (FParentInputStream,FChildOutPutStream);
-  If poUsePipes in FCreateOptions then
-    begin
-    if poStdErrToOutPut in FCreateOptions then
-      CreatePipeStreams (FParentErrorStream,FChildErrorStream)
-    else
-      begin
-      FChildErrorStream:=FChildOutPutStream;
-      FParentErrorStream:=FParentInputStream;
-      end;
-    end
-  else
-    CreatePipeStreams (FParentErrorStream,FChildErrorStream);
-  If FCurrentDirectory<>'' then
-    Chdir(FCurrentDirectory);
-  FHandle:=fork();
-  if FHandle=0 then
-   begin
-   // Child
-   fdClose(0);
-   fdClose(1);
-   fdclose(2);
-   dup2(FChildInputStream.Handle,0);
-   dup2(FCHildOutputStream.Handle,1);
-   dup2(FChildErrorStream.Handle,2);
-   execl(FCommandline);
-   halt(127);
-   end
-  else
-    begin
-    // Parent
-    FPID:=FHandle;
-    FThreadHandle:=FHandle;
-    fdclose(FChildOutputStream.Handle);
-    fdclose(FChildInputStream.Handle);
-    fdclose(FChildErrorStream.Handle);
-    FRunning:=True;
-    if (poWaitOnExit in FCreateOptions) and
-        not (poRunSuspended in FCreateOptions) then
-    WaitOnExit;
-    end;
-end;
-
-Function TProcess.WaitOnExit : Dword;
-
-begin
-  waitpid(FPID, nil, 0);
-{
-  Result:=WaitForSingleObject (FprocessInformation.hProcess,Infinite);
-  If Result<>Wait_Failed then
-    GetExitStatus;
-}  FRunning:=False;
-  Result := 0;
-end;
-
-Function TProcess.Suspend : Longint;
-
-begin
-  Result:=Kill(Handle,SIGSTOP);
-end;
-
-Function TProcess.Resume : LongInt;
-
-begin
-  Result:=Kill(FHandle,SIGCONT);
-end;
-
-Function TProcess.Terminate(AExitCode : Integer) : Boolean;
-
-begin
-  Result:=False;
-  If ExitStatus=-1 then
-    Result:=Kill(FHandle,SIGTERM)=0;
-end;
-
-{
-  $Log$
-  Revision 1.1  2004-02-25 17:06:39  florian
-    + dummy added to keep darwin dir alive
-}

+ 0 - 118
fcl/freebsd/process.inc

@@ -1,118 +0,0 @@
-{
-    $Id$
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 1999-2000 by Michael Van Canneyt
-
-    Linux specific part of TProcess.
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
-uses
-{$ifdef ver1_0}
-  Linux
-{$else}
-  Unix
-{$endif}
-  ;
-
-Function TProcess.GetRunning : Boolean;
-
-begin
-  IF FRunning then
-    FRunning:=GetExitStatus=-1;
-  Result:=FRunning;
-end;
-
-Procedure TProcess.Execute;
-
-begin
-  FreeStreams;
-  CreatePipeStreams (FChildInputSTream,FParentOutPutStream);
-  CreatePipeStreams (FParentInputStream,FChildOutPutStream);
-  If poUsePipes in FCreateOptions then
-    begin
-    if poStdErrToOutPut in FCreateOptions then
-      CreatePipeStreams (FParentErrorStream,FChildErrorStream)
-    else
-      begin
-      FChildErrorStream:=FChildOutPutStream;
-      FParentErrorStream:=FParentInputStream;
-      end;
-    end
-  else
-    CreatePipeStreams (FParentErrorStream,FChildErrorStream);
-  If FCurrentDirectory<>'' then
-    Chdir(FCurrentDirectory);
-  FHandle:=fork();
-  if FHandle=0 then
-   begin
-   // Child
-   fdClose(0);
-   fdClose(1);
-   fdclose(2);
-   dup2(FChildInputStream.Handle,0);
-   dup2(FCHildOutputStream.Handle,1);
-   dup2(FChildErrorStream.Handle,2);
-   execl(FCommandline);
-   halt(127);
-   end
-  else
-    begin
-    // Parent
-    FPID:=FHandle;
-    FThreadHandle:=FHandle;
-    fdclose(FChildOutputStream.Handle);
-    fdclose(FChildInputStream.Handle);
-    fdclose(FChildErrorStream.Handle);
-    FRunning:=True;
-    if (poWaitOnExit in FCreateOptions) and
-        not (poRunSuspended in FCreateOptions) then
-    WaitOnExit;
-    end;
-end;
-
-Function TProcess.WaitOnExit : Dword;
-
-begin
-  waitpid(FPID, nil, 0);
-{
-  Result:=WaitForSingleObject (FprocessInformation.hProcess,Infinite);
-  If Result<>Wait_Failed then
-    GetExitStatus;
-}  FRunning:=False;
-  Result := 0;
-end;
-
-Function TProcess.Suspend : Longint;
-
-begin
-  Result:=Kill(Handle,SIGSTOP);
-end;
-
-Function TProcess.Resume : LongInt;
-
-begin
-  Result:=Kill(FHandle,SIGCONT);
-end;
-
-Function TProcess.Terminate(AExitCode : Integer) : Boolean;
-
-begin
-  Result:=False;
-  If ExitStatus=-1 then
-    Result:=Kill(FHandle,SIGTERM)=0;
-end;
-
-{
-  $Log$
-  Revision 1.5  2002-09-07 15:15:24  peter
-    * old logs removed and tabs fixed
-
-}

+ 0 - 118
fcl/netbsd/process.inc

@@ -1,118 +0,0 @@
-{
-    $Id$
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 1999-2000 by Michael Van Canneyt
-
-    Linux specific part of TProcess.
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
-uses
-{$ifdef ver1_0}
-  Linux
-{$else}
-  Unix
-{$endif}
-  ;
-
-Function TProcess.GetRunning : Boolean;
-
-begin
-  IF FRunning then
-    FRunning:=GetExitStatus=-1;
-  Result:=FRunning;
-end;
-
-Procedure TProcess.Execute;
-
-begin
-  FreeStreams;
-  CreatePipeStreams (FChildInputSTream,FParentOutPutStream);
-  CreatePipeStreams (FParentInputStream,FChildOutPutStream);
-  If poUsePipes in FCreateOptions then
-    begin
-    if poStdErrToOutPut in FCreateOptions then
-      CreatePipeStreams (FParentErrorStream,FChildErrorStream)
-    else
-      begin
-      FChildErrorStream:=FChildOutPutStream;
-      FParentErrorStream:=FParentInputStream;
-      end;
-    end
-  else
-    CreatePipeStreams (FParentErrorStream,FChildErrorStream);
-  If FCurrentDirectory<>'' then
-    Chdir(FCurrentDirectory);
-  FHandle:=fork();
-  if FHandle=0 then
-   begin
-   // Child
-   fdClose(0);
-   fdClose(1);
-   fdclose(2);
-   dup2(FChildInputStream.Handle,0);
-   dup2(FCHildOutputStream.Handle,1);
-   dup2(FChildErrorStream.Handle,2);
-   execl(FCommandline);
-   halt(127);
-   end
-  else
-    begin
-    // Parent
-    FPID:=FHandle;
-    FThreadHandle:=FHandle;
-    fdclose(FChildOutputStream.Handle);
-    fdclose(FChildInputStream.Handle);
-    fdclose(FChildErrorStream.Handle);
-    FRunning:=True;
-    if (poWaitOnExit in FCreateOptions) and
-        not (poRunSuspended in FCreateOptions) then
-    WaitOnExit;
-    end;
-end;
-
-Function TProcess.WaitOnExit : Dword;
-
-begin
-  waitpid(FPID, nil, 0);
-{
-  Result:=WaitForSingleObject (FprocessInformation.hProcess,Infinite);
-  If Result<>Wait_Failed then
-    GetExitStatus;
-}  FRunning:=False;
-  Result := 0;
-end;
-
-Function TProcess.Suspend : Longint;
-
-begin
-  Result:=Kill(Handle,SIGSTOP);
-end;
-
-Function TProcess.Resume : LongInt;
-
-begin
-  Result:=Kill(FHandle,SIGCONT);
-end;
-
-Function TProcess.Terminate(AExitCode : Integer) : Boolean;
-
-begin
-  Result:=False;
-  If ExitStatus=-1 then
-    Result:=Kill(FHandle,SIGTERM)=0;
-end;
-
-{
-  $Log$
-  Revision 1.2  2002-09-07 15:15:27  peter
-    * old logs removed and tabs fixed
-
-}

+ 0 - 121
fcl/openbsd/process.inc

@@ -1,121 +0,0 @@
-{
-    $Id$
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 1999-2000 by Michael Van Canneyt
-
-    Linux specific part of TProcess.
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
-uses
-{$ifdef ver1_0}
-  Linux
-{$else}
-  Unix
-{$endif}
-  ;
-
-Function TProcess.GetRunning : Boolean;
-
-begin
-  IF FRunning then
-    FRunning:=GetExitStatus=-1;
-  Result:=FRunning;
-end;
-
-Procedure TProcess.Execute;
-
-begin
-  FreeStreams;
-  CreatePipeStreams (FChildInputSTream,FParentOutPutStream);
-  CreatePipeStreams (FParentInputStream,FChildOutPutStream);
-  If poUsePipes in FCreateOptions then
-    begin
-    if poStdErrToOutPut in FCreateOptions then
-      CreatePipeStreams (FParentErrorStream,FChildErrorStream)
-    else
-      begin
-      FChildErrorStream:=FChildOutPutStream;
-      FParentErrorStream:=FParentInputStream;
-      end;
-    end
-  else
-    CreatePipeStreams (FParentErrorStream,FChildErrorStream);
-  If FCurrentDirectory<>'' then
-    Chdir(FCurrentDirectory);
-  FHandle:=fork();
-  if FHandle=0 then
-   begin
-   // Child
-   fdClose(0);
-   fdClose(1);
-   fdclose(2);
-   dup2(FChildInputStream.Handle,0);
-   dup2(FCHildOutputStream.Handle,1);
-   dup2(FChildErrorStream.Handle,2);
-   execl(FCommandline);
-   halt(127);
-   end
-  else
-    begin
-    // Parent
-    FPID:=FHandle;
-    FThreadHandle:=FHandle;
-    fdclose(FChildOutputStream.Handle);
-    fdclose(FChildInputStream.Handle);
-    fdclose(FChildErrorStream.Handle);
-    FRunning:=True;
-    if (poWaitOnExit in FCreateOptions) and
-        not (poRunSuspended in FCreateOptions) then
-    WaitOnExit;
-    end;
-end;
-
-Function TProcess.WaitOnExit : Dword;
-
-begin
-  waitpid(FPID, nil, 0);
-{
-  Result:=WaitForSingleObject (FprocessInformation.hProcess,Infinite);
-  If Result<>Wait_Failed then
-    GetExitStatus;
-}  FRunning:=False;
-  Result := 0;
-end;
-
-Function TProcess.Suspend : Longint;
-
-begin
-  Result:=Kill(Handle,SIGSTOP);
-end;
-
-Function TProcess.Resume : LongInt;
-
-begin
-  Result:=Kill(FHandle,SIGCONT);
-end;
-
-Function TProcess.Terminate(AExitCode : Integer) : Boolean;
-
-begin
-  Result:=False;
-  If ExitStatus=-1 then
-    Result:=Kill(FHandle,SIGTERM)=0;
-end;
-
-{
-  $Log$
-  Revision 1.2  2002-09-07 15:15:27  peter
-    * old logs removed and tabs fixed
-
-  Revision 1.1  2002/07/30 16:03:29  marco
-   * Added for OpenBSD. Plain copy of NetBSD
-
-}