Browse Source

* small fix for go32v2

peter 27 years ago
parent
commit
a213e8adb4
2 changed files with 26 additions and 18 deletions
  1. 17 8
      compiler/link.pas
  2. 9 10
      compiler/systems.pas

+ 17 - 8
compiler/link.pas

@@ -25,7 +25,7 @@ Unit link;
 
 Interface
 
-uses cobjects,dos;
+uses cobjects;
 
 Type
     TLinker = Object
@@ -66,15 +66,21 @@ Var
 Implementation
 
 uses
-  Script,globals,systems,linux,dos,verbose;
+  Script,globals,systems,verbose
+{$ifdef linux}
+  ,linux
+{$endif}
+  ,dos;
 
 {$ifndef linux}
 Procedure Shell(command:string);
 { This is already defined in the linux.ppu for linux, need for the *
   expansion under linux }
+var
+  comspec : string;
 begin
-  shell:=getenv('COMSPEC');
-  Exec(shell,command);
+  comspec:=getenv('COMSPEC');
+  Exec(comspec,' /C '+command);
 end;
 {$endif}
 
@@ -332,10 +338,10 @@ begin
    LinkOptions:='-dynamic-linker='+DynamicLinker+' '+LinkOptions;
   if Strip then
    LinkOptions:=LinkOptions+target_link.stripopt;
-   
+
 { Write used files and libraries }
   WriteResponseFile;
-  
+
 { Call linker }
   if not externlink then
    Message1(exec_i_linking,ExeName);
@@ -344,7 +350,7 @@ begin
   Replace(s,'$OPT',LinkOptions);
   Replace(s,'$RES',inputdir+LinkResName);
   success:=DoExec(FindLinker,s,true);
-  
+
 {Bind}
   if target_info.target=target_os2 then
    begin
@@ -422,7 +428,10 @@ end;
 end.
 {
   $Log$
-  Revision 1.4  1998-05-04 17:54:25  peter
+  Revision 1.5  1998-05-04 20:19:54  peter
+    * small fix for go32v2
+
+  Revision 1.4  1998/05/04 17:54:25  peter
     + smartlinking works (only case jumptable left todo)
     * redesign of systems.pas to support assemblers and linkers
     + Unitname is now also in the PPU-file, increased version to 14

+ 9 - 10
compiler/systems.pas

@@ -73,7 +73,7 @@ unit systems;
 
        tlinkinfo = record
           linkbin   : string[8];
-          linkcmd   : string[40];
+          linkcmd   : string[50];
           stripopt  : string[2];
           groupstart,
           groupend,
@@ -283,16 +283,14 @@ unit systems;
             libprefix  : '-l'
           )
 {$ifdef i386}
-
-
           ,(
             linkbin : 'ld';
             linkcmd : '-oformat coff-go32 $OPT -o $EXE @$RES';
             stripopt   : '-s';
             groupstart : '-(';
             groupend   : ')-';
-            inputstart : 'INPUT(';
-            inputend   : ')';
+            inputstart : '';
+            inputend   : '';
             libprefix  : '-l'
           )
           ,(
@@ -301,8 +299,8 @@ unit systems;
             stripopt   : '-s';
             groupstart : '-(';
             groupend   : ')-';
-            inputstart : 'INPUT(';
-            inputend   : ')';
+            inputstart : '';
+            inputend   : '';
             libprefix  : '-l'
           )
           ,(
@@ -326,8 +324,6 @@ unit systems;
             libprefix  : ''
           )
 {$endif i386}
-
-
           );
 
        target_infos : array[ttarget] of ttargetinfo = (
@@ -520,7 +516,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.7  1998-05-04 17:54:29  peter
+  Revision 1.8  1998-05-04 20:19:54  peter
+    * small fix for go32v2
+
+  Revision 1.7  1998/05/04 17:54:29  peter
     + smartlinking works (only case jumptable left todo)
     * redesign of systems.pas to support assemblers and linkers
     + Unitname is now also in the PPU-file, increased version to 14