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

* synchronize with trunk

git-svn-id: branches/z80@44458 -
nickysn 5 жил өмнө
parent
commit
3e3942e324

+ 13 - 3
compiler/compiler.pas

@@ -81,21 +81,31 @@ uses
 {$ifdef beos}
   ,i_beos
 {$endif beos}
-{$ifdef fbsd}
-  ,i_fbsd
-{$endif fbsd}
+{$ifdef bsd}
+{$ifdef darwin}
+  ,i_darwin
+{$else darwin}
+  ,i_bsd
+{$endif darwin}
+{$endif bsd}
 {$ifdef gba}
   ,i_gba
 {$endif gba}
 {$ifdef go32v2}
   ,i_go32v2
 {$endif go32v2}
+{$ifdef haiku}
+  ,i_haiku
+{$endif haiku}
 {$ifdef linux}
   ,i_linux
 {$endif linux}
 {$ifdef macos}
   ,i_macos
 {$endif macos}
+{$ifdef morphos}
+  ,i_morph
+{$endif morphos}
 {$ifdef nds}
   ,i_nds
 {$endif nds}

+ 1 - 3
compiler/options.pas

@@ -107,8 +107,7 @@ uses
   llvminfo,
 {$endif llvm}
   dirparse,
-  pkgutil,
-  i_bsd;
+  pkgutil;
 
 const
   page_size = 24;
@@ -2432,7 +2431,6 @@ begin
                       begin
                         if (target_info.system in systems_darwin) then
                           begin
-                            RegisterRes(res_macosx_ext_info,TWinLikeResourceFile);
                             set_target_res(res_ext);
                             target_info.resobjext:='.fpcres';
                           end

+ 0 - 21
compiler/systems/i_bsd.pas

@@ -33,27 +33,6 @@ unit i_bsd;
        systems;
 
     const
-       res_macho_info : tresinfo =
-           (
-             id     : res_macho;
-             resbin : 'fpcres';
-             rescmd : '-o $OBJ -a $ARCH -s $SUBARCH -of mach-o $DBG';
-             rcbin  : 'windres';
-             rccmd  : '--include $INC -O res -D FPC -o $RES $RC';
-             resourcefileclass : nil;
-             resflags : [];
-           );
-       res_macosx_ext_info : tresinfo =
-          (
-             id     : res_ext;
-             resbin : 'fpcres';
-             rescmd : '-o $OBJ -a $ENDIAN -of external $DBG';
-             rcbin  : 'windres';
-             rccmd  : '--include $INC -O res -D FPC -o $RES $RC';
-             resourcefileclass : nil;
-             resflags : [res_external_file,res_arch_in_file_name];
-          );
-
        system_i386_freebsd_info : tsysteminfo =
           (
             system       : system_i386_FreeBSD;

+ 1 - 0
compiler/systems/t_darwin.pas

@@ -769,5 +769,6 @@ initialization
 {$endif aarch64}
 
   RegisterRes(res_macho_info,TWinLikeResourceFile);
+  RegisterRes(res_macosx_ext_info,TWinLikeResourceFile);
 end.
 

+ 1 - 1
rtl/objpas/fgl.pp

@@ -1755,7 +1755,7 @@ end;
 
 procedure TFPGMapObject.CopyData(Src, Dest: Pointer);
 begin
-  if Assigned(Pointer(Dest^)) then
+  if Assigned(Pointer(Dest^)) And FFreeObjects then
     TData(Dest^).Free;
   TData(Dest^) := TData(Src^);
 end;