ソースを参照

* fixed definition of ino_t (64 instead of 32 bit) and of stat record
(slightly different order of fields) for darwin/arm

git-svn-id: trunk@13069 -

Jonas Maebe 16 年 前
コミット
d6f3ecc9fc
2 ファイル変更18 行追加0 行削除
  1. 14 0
      rtl/bsd/ostypes.inc
  2. 4 0
      rtl/darwin/ptypes.inc

+ 14 - 0
rtl/bsd/ostypes.inc

@@ -30,6 +30,10 @@
   {$endif}
 {$endif}
 
+{$if defined(darwin) and defined(cpuarm)}
+  {$define darwinarm}
+{$endif}
+
 //      CONST SYS_NMLN=65;
 
 // Can't find these two in Posix and in FreeBSD
@@ -60,9 +64,15 @@ TYPE
   { file characteristics services }
    stat    = record { the types are real}
         st_dev        : dev_t;             // inode's device
+{$ifdef darwinarm}
+        st_mode       : mode_t;            // inode protection mode
+        st_nlink      : nlink_t;           // number of hard links
+        st_ino        : ino_t;             // inode's number
+{$else}
         st_ino        : ino_t;             // inode's number
         st_mode       : mode_t;            // inode protection mode
         st_nlink      : nlink_t;           // number of hard links
+{$endif}
         st_uid        : uid_t;             // user ID of the file's owner
         st_gid        : gid_t;             // group ID of the file's group
         st_rdev       : dev_t;             // device type
@@ -72,6 +82,10 @@ TYPE
         st_mtimensec  : clong;             // nsec of last data modification
         st_ctime      : time_t;            // time of last file status change
         st_ctimensec  : clong;             // nsec of last file status change
+{$ifdef darwinarm}
+        st_birthtime  : time_t;            // File creation time
+        st_birthtimensec : clong;          // nsec of file creation time
+{$endif}
 {$ifdef netbsdPowerpc}
         st_padd1              : cint;
 {$endif}

+ 4 - 0
rtl/darwin/ptypes.inc

@@ -35,7 +35,11 @@ type
     pGid     = ^gid_t;
     TIOCtlRequest = cuLong;
 
+{$ifndef cpuarm}
     ino_t    = cuint32;         { used for file serial numbers }
+{$else}
+    ino_t    = cuint64;
+{$endif}
     TIno     = ino_t;
     pIno     = ^ino_t;