Browse Source

Try to fix simply the fpc_threadvar_relocate_proc problem

git-svn-id: trunk@23220 -
pierre 12 years ago
parent
commit
70a29668a4

+ 5 - 0
rtl/bsd/i386/syscallh.inc

@@ -46,6 +46,11 @@ function do_sysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):i
 function do_sysCall(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):int64; oldfpccall;  external name 'FPC_DOSYS7';
 function do_sysCall(sysnr,param1,param2,param3,param4,param5,param6,param7,param8:TSysParam):int64; oldfpccall;  external name 'FPC_DOSYS8';
 
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
 
 {$endif}
 

+ 5 - 0
rtl/bsd/x86_64/syscallh.inc

@@ -41,5 +41,10 @@ function do_sysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResu
 function do_sysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):int64; external name 'FPC_DOSYS6';
 function do_sysCall(sysnr,param1,param2,param3,param4,param5,param6,param7:TSysParam):int64; external name 'FPC_DOSYS7';
 
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
 {$endif}
 

+ 2 - 0
rtl/inc/thread.inc

@@ -16,7 +16,9 @@
 
 Var
   CurrentTM : TThreadManager;
+{$ifndef THREADVAR_RELOCATED_ALREADY_DEFINED}
   fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$endif THREADVAR_RELOCATED_ALREADY_DEFINED}
 
 {*****************************************************************************
                            Threadvar initialization

+ 6 - 0
rtl/linux/mips/syscallh.inc

@@ -39,3 +39,9 @@ function Do_SysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; external n
 function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; external name 'FPC_SYSCALL4';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult;  external name 'FPC_SYSCALL5';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult;  external name 'FPC_SYSCALL6';
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
+

+ 6 - 0
rtl/linux/powerpc/syscallh.inc

@@ -41,3 +41,9 @@ function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; ext
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult;  external name 'FPC_SYSCALL5';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult;  external name 'FPC_SYSCALL6';
 
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
+

+ 7 - 0
rtl/linux/powerpc64/syscallh.inc

@@ -31,3 +31,10 @@ function Do_SysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; external n
 function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; external name 'FPC_SYSCALL4';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult;  external name 'FPC_SYSCALL5';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult;  external name 'FPC_SYSCALL6';
+
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
+

+ 6 - 0
rtl/linux/sparc/syscallh.inc

@@ -40,3 +40,9 @@ function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; ext
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult;  external name 'FPC_SYSCALL5';
 function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult;  external name 'FPC_SYSCALL6';
 
+{ This variable is needed in syscall.inc assembler code }
+var
+  fpc_threadvar_relocate_proc : TRelocateThreadVarHandler; public name 'FPC_THREADVAR_RELOCATE';
+{$define THREADVAR_RELOCATED_ALREADY_DEFINED}
+
+