Prechádzať zdrojové kódy

+ Fixed -o option

git-svn-id: trunk@1669 -
michael 20 rokov pred
rodič
commit
9b59f0675f
2 zmenil súbory, kde vykonal 11 pridanie a 6 odobranie
  1. 5 1
      compiler/finput.pas
  2. 6 5
      compiler/options.pas

+ 5 - 1
compiler/finput.pas

@@ -683,7 +683,11 @@ uses
          else
           p:=path^;
          sharedlibfilename:=stringdup(p+prefix+n+suffix+extension);
-         exefilename:=stringdup(p+n+target_info.exeext);
+         { don't use extension alone to check, it can be empty !! }
+         if (OutputFile<>'') or (OutputExtension<>'') then 
+           exefilename:=stringdup(p+n+OutputExtension)
+         else  
+           exefilename:=stringdup(p+n+target_info.exeext);
          mapfilename:=stringdup(p+n+'.map');
       end;
 

+ 6 - 5
compiler/options.pas

@@ -870,14 +870,15 @@ begin
            'o' :
              begin
                if More<>'' then
+                 begin
 {$IFDEF USE_SYSUTILS}
-               begin
-                 d := SplitPath(More);
-                 OutputFile := SplitFileName(More);
-               end
+                 OutputExeDir:=SplitPath(More);
+                 OutputFile:=SplitFileName(More);
+                 OutputExtension:=SplitExtension(More);
 {$ELSE USE_SYSUTILS}
-                 Fsplit(More,d,OutputFile,e)
+                 FSplit(More,OutputExeDir,OutputFile,OutputExtension);
 {$ENDIF USE_SYSUTILS}
+                 end
                else
                  IllegalPara(opt);
              end;