summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--rtl/bsd/bunxsysc.inc36
-rw-r--r--rtl/bsd/ossysc.inc6
-rw-r--r--rtl/bsd/sysctl.pp2
-rw-r--r--rtl/freebsd/Makefile7
-rw-r--r--rtl/freebsd/Makefile.fpc6
-rw-r--r--rtl/freebsd/ptypes.inc2
-rw-r--r--rtl/freebsd/unxsysc.inc2
7 files changed, 36 insertions, 25 deletions
diff --git a/rtl/bsd/bunxsysc.inc b/rtl/bsd/bunxsysc.inc
index 5784b7e1a0..3a4e8f6014 100644
--- a/rtl/bsd/bunxsysc.inc
+++ b/rtl/bsd/bunxsysc.inc
@@ -37,7 +37,7 @@ Function FPSigPending(var nset: sigset_t):cint;
signals is set in SSet
}
begin
- FPsigpending:=do_syscall(syscall_nr_sigpending,longint(@nset));
+ FPsigpending:=do_syscall(syscall_nr_sigpending,TSysParam(@nset));
end;
function FPsigsuspend(const sigmask:sigset_t):cint;
@@ -47,7 +47,7 @@ function FPsigsuspend(const sigmask:sigset_t):cint;
}
begin
- FPsigsuspend:= do_syscall(syscall_nr_sigsuspend,longint(@sigmask));
+ FPsigsuspend:= do_syscall(syscall_nr_sigsuspend,TSysParam(@sigmask));
end;
Type // implementation side for now. Should move to BSD unit.
@@ -63,13 +63,13 @@ Const ITimer_Real =0;
Function SetITimer(Which : Longint;Const value : ItimerVal; var VarOValue:ItimerVal):Longint;
Begin
- SetItimer:=Do_Syscall(syscall_nr_setitimer,Which,Longint(@Value),longint(@varovalue));
+ SetItimer:=Do_Syscall(syscall_nr_setitimer,Which,TSysParam(@Value),TSysParam(@varovalue));
End;
Function GetITimer(Which : Longint;Var value : ItimerVal):Longint;
Begin
- GetItimer:=Do_Syscall(syscall_nr_getItimer,Which,Longint(@value));
+ GetItimer:=Do_Syscall(syscall_nr_getItimer,Which,TSysParam(@value));
End;
Function FPalarm(Seconds: cuint):cuint;
@@ -225,7 +225,7 @@ function FPwait(var stat_loc:cint): pid_t;
}
begin // actually a wait4() call with 4th arg 0.
- FPWait:=do_syscall(syscall_nr_WaitPID,WAIT_ANY,longint(@Stat_loc),0,0);
+ FPWait:=do_syscall(syscall_nr_WaitPID,WAIT_ANY,TSysParam(@Stat_loc),0,0);
end;
//function FPgetpid : pid_t;
@@ -281,7 +281,7 @@ end;
function FPgetgroups(gidsetsize : cint; var grouplist:tgrparr): cint;
begin
- FPgetgroups:=do_syscall(syscall_nr_getgroups,gidsetsize,longint(@grouplist));
+ FPgetgroups:=do_syscall(syscall_nr_getgroups,gidsetsize,TSysParam(@grouplist));
end;
function FPgetpgrp : pid_t;
@@ -311,25 +311,25 @@ Function FPlink(existing:pchar;newone:pchar):cint;
In effect, new will be the same file as old.
}
begin
- FPLink:=Do_Syscall(syscall_nr_link,longint(existing),longint(newone));
+ FPLink:=Do_Syscall(syscall_nr_link,TSysParam(existing),TSysParam(newone));
end;
Function FPmkfifo(path:pchar;mode:mode_t):cint;
begin
- FPmkfifo:=do_syscall(syscall_nr_mkfifo,longint(path),longint(mode));
+ FPmkfifo:=do_syscall(syscall_nr_mkfifo,TSysParam(path),TSysParam(mode));
end;
Function FPchmod(path:pchar;mode:mode_t):cint;
begin
- FPchmod:=do_syscall(syscall_nr_chmod,longint(path),longint(mode));
+ FPchmod:=do_syscall(syscall_nr_chmod,TSysParam(path),TSysParam(mode));
end;
Function FPchown(path:pchar;owner:uid_t;group:gid_t):cint;
begin
- FPChOwn:=do_syscall(syscall_nr_chown,longint(path),longint(owner),longint(group));
+ FPChOwn:=do_syscall(syscall_nr_chown,TSysParam(path),TSysParam(owner),TSysParam(group));
end;
Function FPUtime(path:pchar;times:putimbuf):cint;
@@ -348,13 +348,13 @@ begin
tv[1].tv_usec:=0;
tvp:=@tv;
end;
- FPutime:=do_syscall(syscall_nr_utimes,longint(path),longint(tvp));
+ FPutime:=do_syscall(syscall_nr_utimes,TSysParam(path),TSysParam(tvp));
end;
Function FPpipe(var fildes : tfildes):cint;
begin
- FPpipe:=do_syscall(syscall_nr_pipe,longint(@fildes));
+ FPpipe:=do_syscall(syscall_nr_pipe,TSysParam(@fildes));
end;
function FPfcntl(fildes:cint;Cmd:cint;Arg:cint):cint;
@@ -366,7 +366,7 @@ end;
function FPfcntl(fildes:cint;Cmd:cint;var Arg:flock):cint;
begin
- FPfcntl:=do_syscall(syscall_nr_fcntl,fildes,cmd,longint(@arg));
+ FPfcntl:=do_syscall(syscall_nr_fcntl,fildes,cmd,TSysParam(@arg));
end;
function FPfcntl(fildes:cint;Cmd:cint):cint;
@@ -378,13 +378,13 @@ end;
function FPexecve(path:pchar;argv:ppchar;envp:ppchar):cint;
Begin
- FPexecve:=do_syscall(syscall_nr_Execve,longint(path),longint(argv),longint(envp));
+ FPexecve:=do_syscall(syscall_nr_Execve,TSysParam(path),TSysParam(argv),TSysParam(envp));
End;
function FPexecv(path:pchar;argv:ppchar):cint;
Begin
- FPexecv:=do_syscall(syscall_nr_Execve,longint(path),longint(argv),longint(envp));
+ FPexecv:=do_syscall(syscall_nr_Execve,TSysParam(path),TSysParam(argv),TSysParam(envp));
End;
CONST RUSAGE_SELF = 0;
@@ -393,7 +393,7 @@ CONST RUSAGE_SELF = 0;
function FPgetrusage(who:cint;var ru : rusage):cint;
begin
- FPgetrusage:=do_syscall(syscall_nr_getrusage,longint(who),longint(@ru));
+ FPgetrusage:=do_syscall(syscall_nr_getrusage,longint(who),TSysParam(@ru));
end;
function FPtimes(var buffer : tms):clock_t;
@@ -422,7 +422,7 @@ begin
exit(clock_t(-1));
buffer.tms_cutime := CONVTCK(ru.ru_utime);
buffer.tms_cstime := CONVTCK(ru.ru_stime);
- if do_syscall(syscall_nr_gettimeofday,longint(@t),0)<>0 Then
+ if do_syscall(syscall_nr_gettimeofday,TSysParam(@t),0)<>0 Then
exit(clock_t(-1));
FPtimes:=clock_t(CONVTCK(t));
end;
@@ -434,7 +434,7 @@ Function fpSelect(N:cint;readfds,writefds,exceptfds:pfdSet;TimeOut:PTimeVal):cin
}
begin
- fpSelect:=do_syscall(syscall_nr_select,n,longint(readfds),longint(writefds),longint(exceptfds),longint(timeout));
+ fpSelect:=do_syscall(syscall_nr_select,n,TSysParam(readfds),TSysParam(writefds),TSysParam(exceptfds),TSysParam(timeout));
end;
Function fpLstat(path:pchar;Info:pstat):cint;
diff --git a/rtl/bsd/ossysc.inc b/rtl/bsd/ossysc.inc
index 7f91cc144d..051d46b69a 100644
--- a/rtl/bsd/ossysc.inc
+++ b/rtl/bsd/ossysc.inc
@@ -198,7 +198,7 @@ begin
exit;
ptr^.dd_fd:=fd;
ptr^.dd_loc:=-1;
- ptr^.dd_rewind:=longint(ptr^.dd_buf);
+ ptr^.dd_rewind:=ptrint(ptr^.dd_buf);
ptr^.dd_size:=0;
// ptr^.dd_max:=sizeof(ptr^.dd_buf^);
Fpopendir:=ptr;
@@ -248,7 +248,7 @@ begin
if (dirp^.dd_buf=nil) or (dirp^.dd_loc=0) THEN
exit(nil);
if (dirp^.dd_loc=-1) OR {First readdir on this pdir. Initial fill of buffer}
- (dirp^.dd_rewind>=(longint(dirp^.dd_buf)+dirp^.dd_size)) then {no more entries left?}
+ (dirp^.dd_rewind>=(ptrint(dirp^.dd_buf)+dirp^.dd_size)) then {no more entries left?}
Begin
if readbuffer=0 then {succesful read?}
Exit(NIL); {No more data}
@@ -477,7 +477,7 @@ function FPSigProcMask(how:cint;nset : psigset;oset : psigset):cint; [public, al
}
begin
- FPsigprocmask:=do_syscall(syscall_nr_sigprocmask,longint(how),longint(nset),longint(oset));
+ FPsigprocmask:=do_syscall(syscall_nr_sigprocmask,tsysparam(how),TSysParam(nset),TSysParam(oset));
end;
{$user BLA!}
Function FpNanoSleep(req : ptimespec;rem : ptimespec) : cint; [public, alias : 'FPC_SYSC_NANOSLEEP'];
diff --git a/rtl/bsd/sysctl.pp b/rtl/bsd/sysctl.pp
index 8f35529c9f..8a63b4234f 100644
--- a/rtl/bsd/sysctl.pp
+++ b/rtl/bsd/sysctl.pp
@@ -105,7 +105,7 @@ function FPsysctl (Name: pchar; namelen:cuint; oldp:pointer;oldlenp:psize_t; new
Begin
if (name[0] <> chr(CTL_USER)) Then
- exit(do_syscall(syscall_nr___sysctl,longint(name), namelen, longint(oldp), longint(oldlenp), longint(newp), longint(newlen)))
+ exit(do_syscall(syscall_nr___sysctl,TSysParam(name), namelen, TSysParam(oldp), TSysParam(oldlenp), TSysParam(newp), TSysParam(newlen)))
else
Exit(0);
End;
diff --git a/rtl/freebsd/Makefile b/rtl/freebsd/Makefile
index dd2f4d1d5a..218a6a5a85 100644
--- a/rtl/freebsd/Makefile
+++ b/rtl/freebsd/Makefile
@@ -1,5 +1,5 @@
#
-# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/09/13]
+# Don't edit, this file is generated by FPCMake Version 2.0.0 [2008/09/14]
#
default: all
MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos powerpc-darwin powerpc-morphos powerpc-embedded sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded avr-embedded armeb-linux armeb-embedded
@@ -283,6 +283,11 @@ CPU_UNITS=x86 ports cpu mmx
else
CPU_UNITS=
endif
+ifeq ($(CPU_TARGET),x86_64)
+CPU_UNITS=x86 ports
+else
+CPU_UNITS=
+endif
ifdef RELEASE
override FPCOPT+=-Ur
endif
diff --git a/rtl/freebsd/Makefile.fpc b/rtl/freebsd/Makefile.fpc
index 3152a46211..15ab0d9137 100644
--- a/rtl/freebsd/Makefile.fpc
+++ b/rtl/freebsd/Makefile.fpc
@@ -74,6 +74,12 @@ else
CPU_UNITS=
endif
+ifeq ($(CPU_TARGET),x86_64)
+CPU_UNITS=x86 ports
+else
+CPU_UNITS=
+endif
+
# Use new feature from 1.0.5 version
# that generates release PPU files
diff --git a/rtl/freebsd/ptypes.inc b/rtl/freebsd/ptypes.inc
index c3fd6de2e2..16357c6ad5 100644
--- a/rtl/freebsd/ptypes.inc
+++ b/rtl/freebsd/ptypes.inc
@@ -153,7 +153,7 @@ type
Const
- MNAMLEN = 88-2*sizeof(long); // slightly machine specific.
+ MNAMLEN = 88-2*sizeof(clong); // slightly machine specific.
MFSNamLen = 16;
type
fsid_t = array[0..1] of cint;
diff --git a/rtl/freebsd/unxsysc.inc b/rtl/freebsd/unxsysc.inc
index dde48e0acc..ef462ebc7a 100644
--- a/rtl/freebsd/unxsysc.inc
+++ b/rtl/freebsd/unxsysc.inc
@@ -118,6 +118,6 @@ end;
function MUnMap (P : Pointer; Size : size_t) : cint;
begin
- MUnMap:=do_syscall(syscall_nr_munmap,longint(P),Size);
+ MUnMap:=do_syscall(syscall_nr_munmap,TSysParam(P),Size);
end;