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

* Android: The list of supported syscalls has been auto-generated directly from android sources for each CPU.
* Minor adjustments to make all compilable with the proper list of Android syscalls.

git-svn-id: trunk@39739 -

yury 6 жил өмнө
parent
commit
3a2884df70

+ 1 - 1
packages/rtl-extra/src/android/unixsock.inc

@@ -189,7 +189,7 @@ end;
 
 function  fpaccept (s:cint; addrx : psockaddr; addrlen : psocklen):cint;
 begin
-  fpAccept:=do_syscall(syscall_nr_accept,S,TSysParam(addrx),TSysParam(addrlen));
+  fpAccept:=do_syscall(syscall_nr_accept4,S,TSysParam(addrx),TSysParam(addrlen), 0);
   internal_socketerror:=fpgeterrno;
 end;
 

+ 232 - 215
rtl/android/arm/sysnr.inc

@@ -1,217 +1,234 @@
-{
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 2017 by Yuriy Sydorov,
-    member of the Free Pascal development team.
-
-    Syscall nrs for arm-android
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
+// Available syscall numbers for arm-android. 
+// This file is autogenerated. Do not edit. 
+// 
 const
-  __NR_SYSCALL_BASE = 0;
-
-syscall_nr_exit                         = (__NR_SYSCALL_BASE + 1);
-syscall_nr_fork                         = (__NR_SYSCALL_BASE + 2);
-syscall_nr_read                         = (__NR_SYSCALL_BASE + 3);
-syscall_nr_write                        = (__NR_SYSCALL_BASE + 4);
-syscall_nr_open                         = (__NR_SYSCALL_BASE + 5);
-syscall_nr_close                        = (__NR_SYSCALL_BASE + 6);
-syscall_nr_link                         = (__NR_SYSCALL_BASE + 9);
-syscall_nr_unlink                       = (__NR_SYSCALL_BASE + 10);
-syscall_nr_execve                       = (__NR_SYSCALL_BASE + 11);
-syscall_nr_chdir                        = (__NR_SYSCALL_BASE + 12);
-syscall_nr_mknod                        = (__NR_SYSCALL_BASE + 14);
-syscall_nr_chmod                        = (__NR_SYSCALL_BASE + 15);
-syscall_nr_lseek                        = (__NR_SYSCALL_BASE + 19);
-syscall_nr_getpid                       = (__NR_SYSCALL_BASE + 20);
-syscall_nr_mount                        = (__NR_SYSCALL_BASE + 21);
-syscall_nr_ptrace                       = (__NR_SYSCALL_BASE + 26);
-syscall_nr_pause                        = (__NR_SYSCALL_BASE + 29);
-syscall_nr_access                       = (__NR_SYSCALL_BASE + 33);
-syscall_nr_sync                         = (__NR_SYSCALL_BASE + 36);
-syscall_nr_rename                       = (__NR_SYSCALL_BASE + 38);
-syscall_nr_mkdir                        = (__NR_SYSCALL_BASE + 39);
-syscall_nr_rmdir                        = (__NR_SYSCALL_BASE + 40);
-syscall_nr_dup                          = (__NR_SYSCALL_BASE + 41);
-syscall_nr_times                        = (__NR_SYSCALL_BASE + 43);
-syscall_nr_brk                          = (__NR_SYSCALL_BASE + 45);
-syscall_nr_acct                         = (__NR_SYSCALL_BASE + 51);
-syscall_nr_umount2                      = (__NR_SYSCALL_BASE + 52);
-syscall_nr_ioctl                        = (__NR_SYSCALL_BASE + 54);
-syscall_nr_fcntl                        = (__NR_SYSCALL_BASE + 55);
-syscall_nr_setpgid                      = (__NR_SYSCALL_BASE + 57);
-syscall_nr_umask                        = (__NR_SYSCALL_BASE + 60);
-syscall_nr_chroot                       = (__NR_SYSCALL_BASE + 61);
-syscall_nr_dup2                         = (__NR_SYSCALL_BASE + 63);
-syscall_nr_getppid                      = (__NR_SYSCALL_BASE + 64);
-syscall_nr_setsid                       = (__NR_SYSCALL_BASE + 66);
-syscall_nr_sigaction                    = (__NR_SYSCALL_BASE + 67);
-syscall_nr_sigpending                   = (__NR_SYSCALL_BASE + 73);
-syscall_nr_setrlimit                    = (__NR_SYSCALL_BASE + 75);
-syscall_nr_getrusage                    = (__NR_SYSCALL_BASE + 77);
-syscall_nr_gettimeofday                 = (__NR_SYSCALL_BASE + 78);
-syscall_nr_settimeofday                 = (__NR_SYSCALL_BASE + 79);
-syscall_nr_symlink                      = (__NR_SYSCALL_BASE + 83);
-syscall_nr_readlink                     = (__NR_SYSCALL_BASE + 85);
-syscall_nr_reboot                       = (__NR_SYSCALL_BASE + 88);
-syscall_nr_munmap                       = (__NR_SYSCALL_BASE + 91);
-syscall_nr_truncate                     = (__NR_SYSCALL_BASE + 92);
-syscall_nr_ftruncate                    = (__NR_SYSCALL_BASE + 93);
-syscall_nr_fchmod                       = (__NR_SYSCALL_BASE + 94);
-syscall_nr_getpriority                  = (__NR_SYSCALL_BASE + 96);
-syscall_nr_setpriority                  = (__NR_SYSCALL_BASE + 97);
-syscall_nr_syslog                       = (__NR_SYSCALL_BASE + 103);
-syscall_nr_setitimer                    = (__NR_SYSCALL_BASE + 104);
-syscall_nr_getitimer                    = (__NR_SYSCALL_BASE + 105);
-syscall_nr_wait4                        = (__NR_SYSCALL_BASE + 114);
-syscall_nr_sysinfo                      = (__NR_SYSCALL_BASE + 116);
-syscall_nr_fsync                        = (__NR_SYSCALL_BASE + 118);
-syscall_nr_clone                        = (__NR_SYSCALL_BASE + 120);
-syscall_nr_uname                        = (__NR_SYSCALL_BASE + 122);
-syscall_nr_mprotect                     = (__NR_SYSCALL_BASE + 125);
-syscall_nr_sigprocmask                  = (__NR_SYSCALL_BASE + 126);
-syscall_nr_init_module                  = (__NR_SYSCALL_BASE + 128);
-syscall_nr_delete_module                = (__NR_SYSCALL_BASE + 129);
-syscall_nr_getpgid                      = (__NR_SYSCALL_BASE + 132);
-syscall_nr_fchdir                       = (__NR_SYSCALL_BASE + 133);
-syscall_nr_personality                  = (__NR_SYSCALL_BASE + 136);
-syscall_nr__llseek                      = (__NR_SYSCALL_BASE + 140);
-syscall_nr__newselect                   = (__NR_SYSCALL_BASE + 142);
-syscall_nr_flock                        = (__NR_SYSCALL_BASE + 143);
-syscall_nr_msync                        = (__NR_SYSCALL_BASE + 144);
-syscall_nr_readv                        = (__NR_SYSCALL_BASE + 145);
-syscall_nr_writev                       = (__NR_SYSCALL_BASE + 146);
-syscall_nr_perf_event_open              = (__NR_SYSCALL_BASE + 364);
+  syscall_nr_execve = (0 + 11);
+  syscall_nr_getuid32 = (0 +199);
+  syscall_nr_getuid = syscall_nr_getuid32;
+  syscall_nr_getgid32 = (0 +200);
+  syscall_nr_getgid = syscall_nr_getgid32;
+  syscall_nr_geteuid32 = (0 +201);
+  syscall_nr_geteuid = syscall_nr_geteuid32;
+  syscall_nr_getegid32 = (0 +202);
+  syscall_nr_getegid = syscall_nr_getegid32;
+  syscall_nr_getresuid32 = (0 +209);
+  syscall_nr_getresuid = syscall_nr_getresuid32;
+  syscall_nr_getresgid32 = (0 +211);
+  syscall_nr_getresgid = syscall_nr_getresgid32;
+  syscall_nr_readahead = (0 +225);
+  syscall_nr_getgroups32 = (0 +205);
+  syscall_nr_getgroups = syscall_nr_getgroups32;
+  syscall_nr_getpgid = (0 +132);
+  syscall_nr_getppid = (0 + 64);
+  syscall_nr_getsid = (0 +147);
+  syscall_nr_setsid = (0 + 66);
+  syscall_nr_setgid32 = (0 +214);
+  syscall_nr_setgid = syscall_nr_setgid32;
+  syscall_nr_setuid32 = (0 +213);
+  syscall_nr_setuid = syscall_nr_setuid32;
+  syscall_nr_setreuid32 = (0 +203);
+  syscall_nr_setreuid = syscall_nr_setreuid32;
+  syscall_nr_setresuid32 = (0 +208);
+  syscall_nr_setresuid = syscall_nr_setresuid32;
+  syscall_nr_setresgid32 = (0 +210);
+  syscall_nr_setresgid = syscall_nr_setresgid32;
+  syscall_nr_brk = (0 + 45);
+  syscall_nr_kill = (0 + 37);
+  syscall_nr_tgkill = (0 +268);
+  syscall_nr_ptrace = (0 + 26);
+  syscall_nr_getrusage = (0 + 77);
+  syscall_nr_getpriority = (0 + 96);
+  syscall_nr_setpriority = (0 + 97);
+  syscall_nr_ugetrlimit = (0 +191);
+  syscall_nr_getrlimit = syscall_nr_ugetrlimit;
+  syscall_nr_setrlimit = (0 + 75);
+  syscall_nr_prlimit64 = (0 +369);
+  syscall_nr_setgroups32 = (0 +206);
+  syscall_nr_setgroups = syscall_nr_setgroups32;
+  syscall_nr_setpgid = (0 + 57);
+  syscall_nr_setregid32 = (0 +204);
+  syscall_nr_setregid = syscall_nr_setregid32;
+  syscall_nr_chroot = (0 + 61);
+  syscall_nr_prctl = (0 +172);
+  syscall_nr_capget = (0 +184);
+  syscall_nr_capset = (0 +185);
+  syscall_nr_sigaltstack = (0 +186);
+  syscall_nr_acct = (0 + 51);
+  syscall_nr_read = (0 + 3);
+  syscall_nr_write = (0 + 4);
+  syscall_nr_pread64 = (0 +180);
+  syscall_nr_pwrite64 = (0 +181);
+  syscall_nr_preadv = (0 +361);
+  syscall_nr_pwritev = (0 +362);
+  syscall_nr_close = (0 + 6);
+  syscall_nr_getpid = (0 + 20);
+  syscall_nr_munmap = (0 + 91);
+  syscall_nr_mremap = (0 +163);
+  syscall_nr_msync = (0 +144);
+  syscall_nr_mprotect = (0 +125);
+  syscall_nr_madvise = (0 +220);
+  syscall_nr_mlock = (0 +150);
+  syscall_nr_munlock = (0 +151);
+  syscall_nr_mlockall = (0 +152);
+  syscall_nr_munlockall = (0 +153);
+  syscall_nr_mincore = (0 +219);
+  syscall_nr_ioctl = (0 + 54);
+  syscall_nr_readv = (0 +145);
+  syscall_nr_writev = (0 +146);
+  syscall_nr_fcntl64 = (0 +221);
+  syscall_nr_fcntl = syscall_nr_fcntl64;
+  syscall_nr_flock = (0 +143);
+  syscall_nr_fchmod = (0 + 94);
+  syscall_nr_dup = (0 + 41);
+  syscall_nr_pipe2 = (0 +359);
+  syscall_nr_dup3 = (0 +358);
+  syscall_nr_fsync = (0 +118);
+  syscall_nr_fdatasync = (0 +148);
+  syscall_nr_fchown32 = (0 +207);
+  syscall_nr_fchown = syscall_nr_fchown32;
+  syscall_nr_sync = (0 + 36);
+  syscall_nr_syncfs = (0 +373);
+  syscall_nr_fsetxattr = (0 +228);
+  syscall_nr_fgetxattr = (0 +231);
+  syscall_nr_flistxattr = (0 +234);
+  syscall_nr_fremovexattr = (0 +237);
+  syscall_nr_getdents64 = (0 +217);
+  syscall_nr_openat = (0 +322);
+  syscall_nr_faccessat = (0 +334);
+  syscall_nr_fchmodat = (0 +333);
+  syscall_nr_fchownat = (0 +325);
+  syscall_nr_fstatat64 = (0 +327);
+  syscall_nr_fstatat = syscall_nr_fstatat64;
+  syscall_nr_linkat = (0 +330);
+  syscall_nr_mkdirat = (0 +323);
+  syscall_nr_mknodat = (0 +324);
+  syscall_nr_readlinkat = (0 +332);
+  syscall_nr_renameat = (0 +329);
+  syscall_nr_symlinkat = (0 +331);
+  syscall_nr_unlinkat = (0 +328);
+  syscall_nr_utimensat = (0 +348);
+  syscall_nr_lseek = (0 + 19);
+  syscall_nr__llseek = (0 +140);
+  syscall_nr_ftruncate64 = (0 +194);
+  syscall_nr_sendfile = (0 +187);
+  syscall_nr_sendfile64 = (0 +239);
+  syscall_nr_truncate = (0 + 92);
+  syscall_nr_truncate64 = (0 +193);
+  syscall_nr_mmap2 = (0 +192);
+  syscall_nr_fallocate = (0 +352);
+  syscall_nr_fallocate64 = syscall_nr_fallocate;
+  syscall_nr_arm_fadvise64_64 = (0 +270);
+  syscall_nr_fstatfs64 = (0 +267);
+  syscall_nr_statfs64 = (0 +266);
+  syscall_nr_fstat64 = (0 +197);
+  syscall_nr_fstat = syscall_nr_fstat64;
+  syscall_nr_chdir = (0 + 12);
+  syscall_nr_mount = (0 + 21);
+  syscall_nr_umount2 = (0 + 52);
+  syscall_nr_getcwd = (0 +183);
+  syscall_nr_fchdir = (0 +133);
+  syscall_nr_setxattr = (0 +226);
+  syscall_nr_lsetxattr = (0 +227);
+  syscall_nr_getxattr = (0 +229);
+  syscall_nr_lgetxattr = (0 +230);
+  syscall_nr_listxattr = (0 +232);
+  syscall_nr_llistxattr = (0 +233);
+  syscall_nr_removexattr = (0 +235);
+  syscall_nr_lremovexattr = (0 +236);
+  syscall_nr_swapon = (0 + 87);
+  syscall_nr_swapoff = (0 +115);
+  syscall_nr_settimeofday = (0 + 79);
+  syscall_nr_times = (0 + 43);
+  syscall_nr_nanosleep = (0 +162);
+  syscall_nr_clock_settime = (0 +262);
+  syscall_nr_clock_nanosleep = (0 +265);
+  syscall_nr_getitimer = (0 +105);
+  syscall_nr_setitimer = (0 +104);
+  syscall_nr_timer_create = (0 +257);
+  syscall_nr_timer_settime = (0 +258);
+  syscall_nr_timer_gettime = (0 +259);
+  syscall_nr_timer_getoverrun = (0 +260);
+  syscall_nr_timer_delete = (0 +261);
+  syscall_nr_timerfd_create = (0 +350);
+  syscall_nr_timerfd_settime = (0 +353);
+  syscall_nr_timerfd_gettime = (0 +354);
+  syscall_nr_adjtimex = (0 +124);
+  syscall_nr_clock_adjtime = (0 +372);
+  syscall_nr_sigaction = (0 + 67);
+  syscall_nr_rt_sigaction = (0 +174);
+  syscall_nr_rt_sigpending = (0 +176);
+  syscall_nr_rt_sigprocmask = (0 +175);
+  syscall_nr_rt_sigsuspend = (0 +179);
+  syscall_nr_rt_sigtimedwait = (0 +177);
+  syscall_nr_rt_sigqueueinfo = (0 +178);
+  syscall_nr_signalfd4 = (0 +355);
+  syscall_nr_socket = (0 +281);
+  syscall_nr_socketpair = (0 +288);
+  syscall_nr_bind = (0 +282);
+  syscall_nr_connect = (0 +283);
+  syscall_nr_listen = (0 +284);
+  syscall_nr_accept4 = (0 +366);
+  syscall_nr_getsockname = (0 +286);
+  syscall_nr_getpeername = (0 +287);
+  syscall_nr_sendto = (0 +290);
+  syscall_nr_recvfrom = (0 +292);
+  syscall_nr_shutdown = (0 +293);
+  syscall_nr_setsockopt = (0 +294);
+  syscall_nr_getsockopt = (0 +295);
+  syscall_nr_recvmsg = (0 +297);
+  syscall_nr_sendmsg = (0 +296);
+  syscall_nr_recvmmsg = (0 +365);
+  syscall_nr_sendmmsg = (0 +374);
+  syscall_nr_sched_setscheduler = (0 +156);
+  syscall_nr_sched_getscheduler = (0 +157);
+  syscall_nr_sched_yield = (0 +158);
+  syscall_nr_sched_setparam = (0 +154);
+  syscall_nr_sched_getparam = (0 +155);
+  syscall_nr_sched_get_priority_max = (0 +159);
+  syscall_nr_sched_get_priority_min = (0 +160);
+  syscall_nr_sched_rr_get_interval = (0 +161);
+  syscall_nr_sched_setaffinity = (0 +241);
+  syscall_nr_setns = (0 +375);
+  syscall_nr_unshare = (0 +337);
+  syscall_nr_sched_getaffinity = (0 +242);
+  syscall_nr_getcpu = (0 +345);
+  syscall_nr_uname = (0 +122);
+  syscall_nr_umask = (0 + 60);
+  syscall_nr_reboot = (0 + 88);
+  syscall_nr_init_module = (0 +128);
+  syscall_nr_delete_module = (0 +129);
+  syscall_nr_syslog = (0 +103);
+  syscall_nr_klogctl = syscall_nr_syslog;
+  syscall_nr_sysinfo = (0 +116);
+  syscall_nr_personality = (0 +136);
+  syscall_nr_tee = (0 +342);
+  syscall_nr_splice = (0 +340);
+  syscall_nr_vmsplice = (0 +343);
+  syscall_nr_epoll_create1 = (0 +357);
+  syscall_nr_epoll_ctl = (0 +251);
+  syscall_nr_epoll_pwait = (0 +346);
+  syscall_nr_eventfd2 = (0 +356);
+  syscall_nr_eventfd = syscall_nr_eventfd2;
+  syscall_nr_exit_group = (0 +248);
+  syscall_nr_exit = (0 + 1);
+  syscall_nr_inotify_init1 = (0 +360);
+  syscall_nr_inotify_add_watch = (0 +317);
+  syscall_nr_inotify_rm_watch = (0 +318);
+  syscall_nr_pselect6 = (0 +335);
+  syscall_nr_ppoll = (0 +336);
+  syscall_nr_process_vm_readv = (0 +376);
+  syscall_nr_process_vm_writev = (0 +377);
+  syscall_nr_quotactl = (0 +131);
+  syscall_nr_set_tid_address = (0 +256);
+  syscall_nr_setfsgid = (0 +139);
+  syscall_nr_setfsuid = (0 +138);
+  syscall_nr_setdomainname = (0 +121);
+  syscall_nr_sethostname = (0 + 74);
+  syscall_nr_sync_file_range2 = (0 +341);
+  syscall_nr_wait4 = (0 +114);
+  syscall_nr_waitid = (0 +280);
+  syscall_nr_clock_getres = (0 +264);
+  syscall_nr_clock_gettime = (0 +263);
+  syscall_nr_gettimeofday = (0 + 78);
+  syscall_nr_clone = (0 +120);
 
-syscall_nr_kill                         = (__NR_SYSCALL_BASE + 37);
-syscall_nr_exit_group                   = (__NR_SYSCALL_BASE + 248);
-syscall_nr_waitid                       = (__NR_SYSCALL_BASE + 280);
-syscall_nr_setuid32                     = (__NR_SYSCALL_BASE + 213);
-syscall_nr_getuid32                     = (__NR_SYSCALL_BASE + 199);
-syscall_nr_getgid32                     = (__NR_SYSCALL_BASE + 200);
-syscall_nr_geteuid32                    = (__NR_SYSCALL_BASE + 201);
-syscall_nr_getegid32                    = (__NR_SYSCALL_BASE + 202);
-syscall_nr_getresuid32                  = (__NR_SYSCALL_BASE + 209);
-syscall_nr_getresgid32                  = (__NR_SYSCALL_BASE + 211);
-syscall_nr_gettid                       = (__NR_SYSCALL_BASE + 224);
-syscall_nr_readahead                    = (__NR_SYSCALL_BASE + 225);
-syscall_nr_getgroups32                  = (__NR_SYSCALL_BASE + 205);
-syscall_nr_setgid32                     = (__NR_SYSCALL_BASE + 214);
-syscall_nr_setreuid32                   = (__NR_SYSCALL_BASE + 203);
-syscall_nr_setresuid32                  = (__NR_SYSCALL_BASE + 208);
-syscall_nr_setresgid32                  = (__NR_SYSCALL_BASE + 210);
-syscall_nr_ugetrlimit                   = (__NR_SYSCALL_BASE + 191);
-syscall_nr_setgroups32                  = (__NR_SYSCALL_BASE + 206);
-syscall_nr_vfork                        = (__NR_SYSCALL_BASE + 190);
-syscall_nr_setregid32                   = (__NR_SYSCALL_BASE + 204);
-syscall_nr_prctl                        = (__NR_SYSCALL_BASE + 172);
-syscall_nr_capget                       = (__NR_SYSCALL_BASE + 184);
-syscall_nr_capset                       = (__NR_SYSCALL_BASE + 185);
-syscall_nr_sigaltstack                  = (__NR_SYSCALL_BASE + 186);
-syscall_nr_pread64                      = (__NR_SYSCALL_BASE + 180);
-syscall_nr_pwrite64                     = (__NR_SYSCALL_BASE + 181);
-syscall_nr_openat                       = (__NR_SYSCALL_BASE + 322);
-syscall_nr_mmap2                        = (__NR_SYSCALL_BASE + 192);
-syscall_nr_mremap                       = (__NR_SYSCALL_BASE + 163);
-syscall_nr_madvise                      = (__NR_SYSCALL_BASE + 220);
-syscall_nr_mlock                        = (__NR_SYSCALL_BASE + 150);
-syscall_nr_munlock                      = (__NR_SYSCALL_BASE + 151);
-syscall_nr_mincore                      = (__NR_SYSCALL_BASE + 219);
-syscall_nr_pipe                         = (__NR_SYSCALL_BASE + 42);
-syscall_nr_pipe2                        = (__NR_SYSCALL_BASE + 359);
-syscall_nr_ftruncate64                  = (__NR_SYSCALL_BASE + 194);
-syscall_nr_getdents64                   = (__NR_SYSCALL_BASE + 217);
-syscall_nr_fdatasync                    = (__NR_SYSCALL_BASE + 148);
-syscall_nr_fchown32                     = (__NR_SYSCALL_BASE + 207);
-syscall_nr_fcntl64                      = (__NR_SYSCALL_BASE + 221);
-syscall_nr_fstatfs64                    = (__NR_SYSCALL_BASE + 267);
-syscall_nr_sendfile                     = (__NR_SYSCALL_BASE + 187);
-syscall_nr_fstatat64                    = (__NR_SYSCALL_BASE + 327);
-syscall_nr_mkdirat                      = (__NR_SYSCALL_BASE + 323);
-syscall_nr_fchownat                     = (__NR_SYSCALL_BASE + 325);
-syscall_nr_fchmodat                     = (__NR_SYSCALL_BASE + 333);
-syscall_nr_renameat                     = (__NR_SYSCALL_BASE + 329);
-syscall_nr_fsetxattr                    = (__NR_SYSCALL_BASE + 228);
-syscall_nr_fgetxattr                    = (__NR_SYSCALL_BASE + 231);
-syscall_nr_flistxattr                   = (__NR_SYSCALL_BASE + 234);
-syscall_nr_fremovexattr                 = (__NR_SYSCALL_BASE + 237);
-syscall_nr_unlinkat                     = (__NR_SYSCALL_BASE + 328);
-syscall_nr_chown32                      = (__NR_SYSCALL_BASE + 212);
-syscall_nr_lchown32                     = (__NR_SYSCALL_BASE + 198);
-syscall_nr_fstat64                      = (__NR_SYSCALL_BASE + 197);
-syscall_nr_stat64                       = (__NR_SYSCALL_BASE + 195);
-syscall_nr_lstat64                      = (__NR_SYSCALL_BASE + 196);
-syscall_nr_getcwd                       = (__NR_SYSCALL_BASE + 183);
-syscall_nr_faccessat                    = (__NR_SYSCALL_BASE + 334);
-syscall_nr_setxattr                     = (__NR_SYSCALL_BASE + 226);
-syscall_nr_lsetxattr                    = (__NR_SYSCALL_BASE + 227);
-syscall_nr_getxattr                     = (__NR_SYSCALL_BASE + 229);
-syscall_nr_lgetxattr                    = (__NR_SYSCALL_BASE + 230);
-syscall_nr_listxattr                    = (__NR_SYSCALL_BASE + 232);
-syscall_nr_llistxattr                   = (__NR_SYSCALL_BASE + 233);
-syscall_nr_removexattr                  = (__NR_SYSCALL_BASE + 235);
-syscall_nr_lremovexattr                 = (__NR_SYSCALL_BASE + 236);
-syscall_nr_statfs64                     = (__NR_SYSCALL_BASE + 266);
-syscall_nr_unshare                      = (__NR_SYSCALL_BASE + 337);
-syscall_nr_nanosleep                    = (__NR_SYSCALL_BASE + 162);
-syscall_nr_clock_gettime                = (__NR_SYSCALL_BASE + 263);
-syscall_nr_clock_settime                = (__NR_SYSCALL_BASE + 262);
-syscall_nr_clock_getres                 = (__NR_SYSCALL_BASE + 264);
-syscall_nr_clock_nanosleep              = (__NR_SYSCALL_BASE + 265);
-syscall_nr_timer_create                 = (__NR_SYSCALL_BASE + 257);
-syscall_nr_timer_settime                = (__NR_SYSCALL_BASE + 258);
-syscall_nr_timer_gettime                = (__NR_SYSCALL_BASE + 259);
-syscall_nr_timer_getoverrun             = (__NR_SYSCALL_BASE + 260);
-syscall_nr_timer_delete                 = (__NR_SYSCALL_BASE + 261);
-syscall_nr_utimes                       = (__NR_SYSCALL_BASE + 269);
-syscall_nr_utimensat                    = (__NR_SYSCALL_BASE + 348);
-syscall_nr_sigsuspend                   = (__NR_SYSCALL_BASE + 72);
-syscall_nr_rt_sigaction                 = (__NR_SYSCALL_BASE + 174);
-syscall_nr_rt_sigprocmask               = (__NR_SYSCALL_BASE + 175);
-syscall_nr_rt_sigtimedwait              = (__NR_SYSCALL_BASE + 177);
-syscall_nr_socket                       = (__NR_SYSCALL_BASE + 281);
-syscall_nr_socketpair                   = (__NR_SYSCALL_BASE + 288);
-syscall_nr_bind                         = (__NR_SYSCALL_BASE + 282);
-syscall_nr_connect                      = (__NR_SYSCALL_BASE + 283);
-syscall_nr_listen                       = (__NR_SYSCALL_BASE + 284);
-syscall_nr_accept                       = (__NR_SYSCALL_BASE + 285);
-syscall_nr_getsockname                  = (__NR_SYSCALL_BASE + 286);
-syscall_nr_getpeername                  = (__NR_SYSCALL_BASE + 287);
-syscall_nr_sendto                       = (__NR_SYSCALL_BASE + 290);
-syscall_nr_recvfrom                     = (__NR_SYSCALL_BASE + 292);
-syscall_nr_shutdown                     = (__NR_SYSCALL_BASE + 293);
-syscall_nr_setsockopt                   = (__NR_SYSCALL_BASE + 294);
-syscall_nr_getsockopt                   = (__NR_SYSCALL_BASE + 295);
-syscall_nr_sendmsg                      = (__NR_SYSCALL_BASE + 296);
-syscall_nr_recvmsg                      = (__NR_SYSCALL_BASE + 297);
-syscall_nr_sched_setscheduler           = (__NR_SYSCALL_BASE + 156);
-syscall_nr_sched_getscheduler           = (__NR_SYSCALL_BASE + 157);
-syscall_nr_sched_yield                  = (__NR_SYSCALL_BASE + 158);
-syscall_nr_sched_setparam               = (__NR_SYSCALL_BASE + 154);
-syscall_nr_sched_getparam               = (__NR_SYSCALL_BASE + 155);
-syscall_nr_sched_get_priority_max       = (__NR_SYSCALL_BASE + 159);
-syscall_nr_sched_get_priority_min       = (__NR_SYSCALL_BASE + 160);
-syscall_nr_sched_rr_get_interval        = (__NR_SYSCALL_BASE + 161);
-syscall_nr_sched_setaffinity            = (__NR_SYSCALL_BASE + 241);
-syscall_nr_sched_getaffinity            = (__NR_SYSCALL_BASE + 242);
-syscall_nr_getcpu                       = (__NR_SYSCALL_BASE + 345);
-syscall_nr_ioprio_set                   = (__NR_SYSCALL_BASE + 314);
-syscall_nr_ioprio_get                   = (__NR_SYSCALL_BASE + 315);
-syscall_nr_futex                        = (__NR_SYSCALL_BASE + 240);
-syscall_nr_epoll_create                 = (__NR_SYSCALL_BASE + 250);
-syscall_nr_epoll_ctl                    = (__NR_SYSCALL_BASE + 251);
-syscall_nr_epoll_wait                   = (__NR_SYSCALL_BASE + 252);
-syscall_nr_inotify_init                 = (__NR_SYSCALL_BASE + 316);
-syscall_nr_inotify_add_watch            = (__NR_SYSCALL_BASE + 317);
-syscall_nr_inotify_rm_watch             = (__NR_SYSCALL_BASE + 318);
-syscall_nr_poll                         = (__NR_SYSCALL_BASE + 168);
-syscall_nr_eventfd2                     = (__NR_SYSCALL_BASE + 356);
-syscall_nr_ARM_set_tls                  = (__NR_SYSCALL_BASE + 983045);
-syscall_nr_ARM_cacheflush               = (__NR_SYSCALL_BASE + 983042);

+ 217 - 202
rtl/android/i386/sysnr.inc

@@ -1,204 +1,219 @@
-{
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 2017 by Yuriy Sydorov,
-    member of the Free Pascal development team.
-
-    Syscall nrs for i386-android
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
+// Available syscall numbers for i386-android. 
+// This file is autogenerated. Do not edit. 
+// 
 const
-  __NR_SYSCALL_BASE = 0;
-
-syscall_nr_exit                         = (__NR_SYSCALL_BASE + 1);
-syscall_nr_fork                         = (__NR_SYSCALL_BASE + 2);
-syscall_nr_read                         = (__NR_SYSCALL_BASE + 3);
-syscall_nr_write                        = (__NR_SYSCALL_BASE + 4);
-syscall_nr_open                         = (__NR_SYSCALL_BASE + 5);
-syscall_nr_close                        = (__NR_SYSCALL_BASE + 6);
-syscall_nr_link                         = (__NR_SYSCALL_BASE + 9);
-syscall_nr_unlink                       = (__NR_SYSCALL_BASE + 10);
-syscall_nr_execve                       = (__NR_SYSCALL_BASE + 11);
-syscall_nr_chdir                        = (__NR_SYSCALL_BASE + 12);
-syscall_nr_mknod                        = (__NR_SYSCALL_BASE + 14);
-syscall_nr_chmod                        = (__NR_SYSCALL_BASE + 15);
-syscall_nr_lseek                        = (__NR_SYSCALL_BASE + 19);
-syscall_nr_getpid                       = (__NR_SYSCALL_BASE + 20);
-syscall_nr_mount                        = (__NR_SYSCALL_BASE + 21);
-syscall_nr_ptrace                       = (__NR_SYSCALL_BASE + 26);
-syscall_nr_pause                        = (__NR_SYSCALL_BASE + 29);
-syscall_nr_access                       = (__NR_SYSCALL_BASE + 33);
-syscall_nr_sync                         = (__NR_SYSCALL_BASE + 36);
-syscall_nr_rename                       = (__NR_SYSCALL_BASE + 38);
-syscall_nr_mkdir                        = (__NR_SYSCALL_BASE + 39);
-syscall_nr_rmdir                        = (__NR_SYSCALL_BASE + 40);
-syscall_nr_dup                          = (__NR_SYSCALL_BASE + 41);
-syscall_nr_times                        = (__NR_SYSCALL_BASE + 43);
-syscall_nr_brk                          = (__NR_SYSCALL_BASE + 45);
-syscall_nr_acct                         = (__NR_SYSCALL_BASE + 51);
-syscall_nr_umount2                      = (__NR_SYSCALL_BASE + 52);
-syscall_nr_ioctl                        = (__NR_SYSCALL_BASE + 54);
-syscall_nr_fcntl                        = (__NR_SYSCALL_BASE + 55);
-syscall_nr_setpgid                      = (__NR_SYSCALL_BASE + 57);
-syscall_nr_umask                        = (__NR_SYSCALL_BASE + 60);
-syscall_nr_chroot                       = (__NR_SYSCALL_BASE + 61);
-syscall_nr_dup2                         = (__NR_SYSCALL_BASE + 63);
-syscall_nr_getppid                      = (__NR_SYSCALL_BASE + 64);
-syscall_nr_setsid                       = (__NR_SYSCALL_BASE + 66);
-syscall_nr_sigaction                    = (__NR_SYSCALL_BASE + 67);
-syscall_nr_sigpending                   = (__NR_SYSCALL_BASE + 73);
-syscall_nr_setrlimit                    = (__NR_SYSCALL_BASE + 75);
-syscall_nr_getrusage                    = (__NR_SYSCALL_BASE + 77);
-syscall_nr_gettimeofday                 = (__NR_SYSCALL_BASE + 78);
-syscall_nr_settimeofday                 = (__NR_SYSCALL_BASE + 79);
-syscall_nr_symlink                      = (__NR_SYSCALL_BASE + 83);
-syscall_nr_readlink                     = (__NR_SYSCALL_BASE + 85);
-syscall_nr_reboot                       = (__NR_SYSCALL_BASE + 88);
-syscall_nr_munmap                       = (__NR_SYSCALL_BASE + 91);
-syscall_nr_truncate                     = (__NR_SYSCALL_BASE + 92);
-syscall_nr_ftruncate                    = (__NR_SYSCALL_BASE + 93);
-syscall_nr_fchmod                       = (__NR_SYSCALL_BASE + 94);
-syscall_nr_getpriority                  = (__NR_SYSCALL_BASE + 96);
-syscall_nr_setpriority                  = (__NR_SYSCALL_BASE + 97);
-syscall_nr_syslog                       = (__NR_SYSCALL_BASE + 103);
-syscall_nr_setitimer                    = (__NR_SYSCALL_BASE + 104);
-syscall_nr_getitimer                    = (__NR_SYSCALL_BASE + 105);
-syscall_nr_wait4                        = (__NR_SYSCALL_BASE + 114);
-syscall_nr_sysinfo                      = (__NR_SYSCALL_BASE + 116);
-syscall_nr_fsync                        = (__NR_SYSCALL_BASE + 118);
-syscall_nr_clone                        = (__NR_SYSCALL_BASE + 120);
-syscall_nr_uname                        = (__NR_SYSCALL_BASE + 122);
-syscall_nr_mprotect                     = (__NR_SYSCALL_BASE + 125);
-syscall_nr_sigprocmask                  = (__NR_SYSCALL_BASE + 126);
-syscall_nr_init_module                  = (__NR_SYSCALL_BASE + 128);
-syscall_nr_delete_module                = (__NR_SYSCALL_BASE + 129);
-syscall_nr_getpgid                      = (__NR_SYSCALL_BASE + 132);
-syscall_nr_fchdir                       = (__NR_SYSCALL_BASE + 133);
-syscall_nr_personality                  = (__NR_SYSCALL_BASE + 136);
-syscall_nr__llseek                      = (__NR_SYSCALL_BASE + 140);
-syscall_nr__newselect                   = (__NR_SYSCALL_BASE + 142);
-syscall_nr_flock                        = (__NR_SYSCALL_BASE + 143);
-syscall_nr_msync                        = (__NR_SYSCALL_BASE + 144);
-syscall_nr_readv                        = (__NR_SYSCALL_BASE + 145);
-syscall_nr_writev                       = (__NR_SYSCALL_BASE + 146);
-syscall_nr_perf_event_open              = (__NR_SYSCALL_BASE + 364);
+  syscall_nr_execve = 11;
+  syscall_nr_getuid32 = 199;
+  syscall_nr_getuid = syscall_nr_getuid32;
+  syscall_nr_getgid32 = 200;
+  syscall_nr_getgid = syscall_nr_getgid32;
+  syscall_nr_geteuid32 = 201;
+  syscall_nr_geteuid = syscall_nr_geteuid32;
+  syscall_nr_getegid32 = 202;
+  syscall_nr_getegid = syscall_nr_getegid32;
+  syscall_nr_getresuid32 = 209;
+  syscall_nr_getresuid = syscall_nr_getresuid32;
+  syscall_nr_getresgid32 = 211;
+  syscall_nr_getresgid = syscall_nr_getresgid32;
+  syscall_nr_readahead = 225;
+  syscall_nr_getgroups32 = 205;
+  syscall_nr_getgroups = syscall_nr_getgroups32;
+  syscall_nr_getpgid = 132;
+  syscall_nr_getppid = 64;
+  syscall_nr_getsid = 147;
+  syscall_nr_setsid = 66;
+  syscall_nr_setgid32 = 214;
+  syscall_nr_setgid = syscall_nr_setgid32;
+  syscall_nr_setuid32 = 213;
+  syscall_nr_setuid = syscall_nr_setuid32;
+  syscall_nr_setreuid32 = 203;
+  syscall_nr_setreuid = syscall_nr_setreuid32;
+  syscall_nr_setresuid32 = 208;
+  syscall_nr_setresuid = syscall_nr_setresuid32;
+  syscall_nr_setresgid32 = 210;
+  syscall_nr_setresgid = syscall_nr_setresgid32;
+  syscall_nr_brk = 45;
+  syscall_nr_kill = 37;
+  syscall_nr_tgkill = 270;
+  syscall_nr_ptrace = 26;
+  syscall_nr_getrusage = 77;
+  syscall_nr_getpriority = 96;
+  syscall_nr_setpriority = 97;
+  syscall_nr_ugetrlimit = 191;
+  syscall_nr_getrlimit = syscall_nr_ugetrlimit;
+  syscall_nr_setrlimit = 75;
+  syscall_nr_prlimit64 = 340;
+  syscall_nr_setgroups32 = 206;
+  syscall_nr_setgroups = syscall_nr_setgroups32;
+  syscall_nr_setpgid = 57;
+  syscall_nr_setregid32 = 204;
+  syscall_nr_setregid = syscall_nr_setregid32;
+  syscall_nr_chroot = 61;
+  syscall_nr_prctl = 172;
+  syscall_nr_capget = 184;
+  syscall_nr_capset = 185;
+  syscall_nr_sigaltstack = 186;
+  syscall_nr_acct = 51;
+  syscall_nr_read = 3;
+  syscall_nr_write = 4;
+  syscall_nr_pread64 = 180;
+  syscall_nr_pwrite64 = 181;
+  syscall_nr_preadv = 333;
+  syscall_nr_pwritev = 334;
+  syscall_nr_close = 6;
+  syscall_nr_getpid = 20;
+  syscall_nr_munmap = 91;
+  syscall_nr_mremap = 163;
+  syscall_nr_msync = 144;
+  syscall_nr_mprotect = 125;
+  syscall_nr_madvise = 219;
+  syscall_nr_mlock = 150;
+  syscall_nr_munlock = 151;
+  syscall_nr_mlockall = 152;
+  syscall_nr_munlockall = 153;
+  syscall_nr_mincore = 218;
+  syscall_nr_ioctl = 54;
+  syscall_nr_readv = 145;
+  syscall_nr_writev = 146;
+  syscall_nr_fcntl64 = 221;
+  syscall_nr_fcntl = syscall_nr_fcntl64;
+  syscall_nr_flock = 143;
+  syscall_nr_fchmod = 94;
+  syscall_nr_dup = 41;
+  syscall_nr_pipe2 = 331;
+  syscall_nr_dup3 = 330;
+  syscall_nr_fsync = 118;
+  syscall_nr_fdatasync = 148;
+  syscall_nr_fchown32 = 207;
+  syscall_nr_fchown = syscall_nr_fchown32;
+  syscall_nr_sync = 36;
+  syscall_nr_syncfs = 344;
+  syscall_nr_fsetxattr = 228;
+  syscall_nr_fgetxattr = 231;
+  syscall_nr_flistxattr = 234;
+  syscall_nr_fremovexattr = 237;
+  syscall_nr_getdents64 = 220;
+  syscall_nr_openat = 295;
+  syscall_nr_faccessat = 307;
+  syscall_nr_fchmodat = 306;
+  syscall_nr_fchownat = 298;
+  syscall_nr_fstatat64 = 300;
+  syscall_nr_fstatat = syscall_nr_fstatat64;
+  syscall_nr_linkat = 303;
+  syscall_nr_mkdirat = 296;
+  syscall_nr_mknodat = 297;
+  syscall_nr_readlinkat = 305;
+  syscall_nr_renameat = 302;
+  syscall_nr_symlinkat = 304;
+  syscall_nr_unlinkat = 301;
+  syscall_nr_utimensat = 320;
+  syscall_nr_lseek = 19;
+  syscall_nr__llseek = 140;
+  syscall_nr_ftruncate64 = 194;
+  syscall_nr_sendfile = 187;
+  syscall_nr_sendfile64 = 239;
+  syscall_nr_truncate = 92;
+  syscall_nr_truncate64 = 193;
+  syscall_nr_mmap2 = 192;
+  syscall_nr_fallocate = 324;
+  syscall_nr_fallocate64 = syscall_nr_fallocate;
+  syscall_nr_fadvise64_64 = 272;
+  syscall_nr_fstatfs64 = 269;
+  syscall_nr_statfs64 = 268;
+  syscall_nr_fstat64 = 197;
+  syscall_nr_fstat = syscall_nr_fstat64;
+  syscall_nr_chdir = 12;
+  syscall_nr_mount = 21;
+  syscall_nr_umount2 = 52;
+  syscall_nr_getcwd = 183;
+  syscall_nr_fchdir = 133;
+  syscall_nr_setxattr = 226;
+  syscall_nr_lsetxattr = 227;
+  syscall_nr_getxattr = 229;
+  syscall_nr_lgetxattr = 230;
+  syscall_nr_listxattr = 232;
+  syscall_nr_llistxattr = 233;
+  syscall_nr_removexattr = 235;
+  syscall_nr_lremovexattr = 236;
+  syscall_nr_swapon = 87;
+  syscall_nr_swapoff = 115;
+  syscall_nr_settimeofday = 79;
+  syscall_nr_times = 43;
+  syscall_nr_nanosleep = 162;
+  syscall_nr_clock_settime = 264;
+  syscall_nr_clock_nanosleep = 267;
+  syscall_nr_getitimer = 105;
+  syscall_nr_setitimer = 104;
+  syscall_nr_timer_create = 259;
+  syscall_nr_timer_settime = 260;
+  syscall_nr_timer_gettime = 261;
+  syscall_nr_timer_getoverrun = 262;
+  syscall_nr_timer_delete = 263;
+  syscall_nr_timerfd_create = 322;
+  syscall_nr_timerfd_settime = 325;
+  syscall_nr_timerfd_gettime = 326;
+  syscall_nr_adjtimex = 124;
+  syscall_nr_clock_adjtime = 343;
+  syscall_nr_sigaction = 67;
+  syscall_nr_rt_sigaction = 174;
+  syscall_nr_rt_sigpending = 176;
+  syscall_nr_rt_sigprocmask = 175;
+  syscall_nr_rt_sigsuspend = 179;
+  syscall_nr_rt_sigtimedwait = 177;
+  syscall_nr_rt_sigqueueinfo = 178;
+  syscall_nr_signalfd4 = 327;
+  syscall_nr_socketcall = 102;
+  syscall_nr_sched_setscheduler = 156;
+  syscall_nr_sched_getscheduler = 157;
+  syscall_nr_sched_yield = 158;
+  syscall_nr_sched_setparam = 154;
+  syscall_nr_sched_getparam = 155;
+  syscall_nr_sched_get_priority_max = 159;
+  syscall_nr_sched_get_priority_min = 160;
+  syscall_nr_sched_rr_get_interval = 161;
+  syscall_nr_sched_setaffinity = 241;
+  syscall_nr_setns = 346;
+  syscall_nr_unshare = 310;
+  syscall_nr_sched_getaffinity = 242;
+  syscall_nr_getcpu = 318;
+  syscall_nr_uname = 122;
+  syscall_nr_umask = 60;
+  syscall_nr_reboot = 88;
+  syscall_nr_init_module = 128;
+  syscall_nr_delete_module = 129;
+  syscall_nr_syslog = 103;
+  syscall_nr_klogctl = syscall_nr_syslog;
+  syscall_nr_sysinfo = 116;
+  syscall_nr_personality = 136;
+  syscall_nr_tee = 315;
+  syscall_nr_splice = 313;
+  syscall_nr_vmsplice = 316;
+  syscall_nr_epoll_create1 = 329;
+  syscall_nr_epoll_ctl = 255;
+  syscall_nr_epoll_pwait = 319;
+  syscall_nr_eventfd2 = 328;
+  syscall_nr_eventfd = syscall_nr_eventfd2;
+  syscall_nr_exit_group = 252;
+  syscall_nr_exit = 1;
+  syscall_nr_inotify_init1 = 332;
+  syscall_nr_inotify_add_watch = 292;
+  syscall_nr_inotify_rm_watch = 293;
+  syscall_nr_pselect6 = 308;
+  syscall_nr_ppoll = 309;
+  syscall_nr_process_vm_readv = 347;
+  syscall_nr_process_vm_writev = 348;
+  syscall_nr_quotactl = 131;
+  syscall_nr_set_tid_address = 258;
+  syscall_nr_setfsgid = 139;
+  syscall_nr_setfsuid = 138;
+  syscall_nr_setdomainname = 121;
+  syscall_nr_sethostname = 74;
+  syscall_nr_sync_file_range = 314;
+  syscall_nr_wait4 = 114;
+  syscall_nr_waitid = 284;
+  syscall_nr_set_thread_area = 243;
+  syscall_nr_clock_getres = 266;
+  syscall_nr_clock_gettime = 265;
+  syscall_nr_gettimeofday = 78;
+  syscall_nr_clone = 120;
 
-syscall_nr_waitpid                      = (__NR_SYSCALL_BASE + 7);
-syscall_nr_kill                         = (__NR_SYSCALL_BASE + 37);
-syscall_nr_pipe                         = (__NR_SYSCALL_BASE + 42);
-syscall_nr_sigsuspend                   = (__NR_SYSCALL_BASE + 72);
-syscall_nr_socketcall                   = (__NR_SYSCALL_BASE + 102);
-syscall_nr_fdatasync                    = (__NR_SYSCALL_BASE + 148);
-syscall_nr_mlock                        = (__NR_SYSCALL_BASE + 150);
-syscall_nr_munlock                      = (__NR_SYSCALL_BASE + 151);
-syscall_nr_sched_setparam               = (__NR_SYSCALL_BASE + 154);
-syscall_nr_sched_getparam               = (__NR_SYSCALL_BASE + 155);
-syscall_nr_sched_setscheduler           = (__NR_SYSCALL_BASE + 156);
-syscall_nr_sched_getscheduler           = (__NR_SYSCALL_BASE + 157);
-syscall_nr_sched_yield                  = (__NR_SYSCALL_BASE + 158);
-syscall_nr_sched_get_priority_max       = (__NR_SYSCALL_BASE + 159);
-syscall_nr_sched_get_priority_min       = (__NR_SYSCALL_BASE + 160);
-syscall_nr_sched_rr_get_interval        = (__NR_SYSCALL_BASE + 161);
-syscall_nr_nanosleep                    = (__NR_SYSCALL_BASE + 162);
-syscall_nr_mremap                       = (__NR_SYSCALL_BASE + 163);
-syscall_nr_poll                         = (__NR_SYSCALL_BASE + 168);
-syscall_nr_prctl                        = (__NR_SYSCALL_BASE + 172);
-syscall_nr_rt_sigaction                 = (__NR_SYSCALL_BASE + 174);
-syscall_nr_rt_sigprocmask               = (__NR_SYSCALL_BASE + 175);
-syscall_nr_rt_sigtimedwait              = (__NR_SYSCALL_BASE + 177);
-syscall_nr_pread64                      = (__NR_SYSCALL_BASE + 180);
-syscall_nr_pwrite64                     = (__NR_SYSCALL_BASE + 181);
-syscall_nr_getcwd                       = (__NR_SYSCALL_BASE + 183);
-syscall_nr_capget                       = (__NR_SYSCALL_BASE + 184);
-syscall_nr_capset                       = (__NR_SYSCALL_BASE + 185);
-syscall_nr_sigaltstack                  = (__NR_SYSCALL_BASE + 186);
-syscall_nr_sendfile                     = (__NR_SYSCALL_BASE + 187);
-syscall_nr_ugetrlimit                   = (__NR_SYSCALL_BASE + 191);
-syscall_nr_mmap2                        = (__NR_SYSCALL_BASE + 192);
-syscall_nr_ftruncate64                  = (__NR_SYSCALL_BASE + 194);
-syscall_nr_stat64                       = (__NR_SYSCALL_BASE + 195);
-syscall_nr_lstat64                      = (__NR_SYSCALL_BASE + 196);
-syscall_nr_fstat64                      = (__NR_SYSCALL_BASE + 197);
-syscall_nr_lchown32                     = (__NR_SYSCALL_BASE + 198);
-syscall_nr_getuid32                     = (__NR_SYSCALL_BASE + 199);
-syscall_nr_getgid32                     = (__NR_SYSCALL_BASE + 200);
-syscall_nr_geteuid32                    = (__NR_SYSCALL_BASE + 201);
-syscall_nr_getegid32                    = (__NR_SYSCALL_BASE + 202);
-syscall_nr_setreuid32                   = (__NR_SYSCALL_BASE + 203);
-syscall_nr_setregid32                   = (__NR_SYSCALL_BASE + 204);
-syscall_nr_getgroups32                  = (__NR_SYSCALL_BASE + 205);
-syscall_nr_setgroups32                  = (__NR_SYSCALL_BASE + 206);
-syscall_nr_fchown32                     = (__NR_SYSCALL_BASE + 207);
-syscall_nr_setresuid32                  = (__NR_SYSCALL_BASE + 208);
-syscall_nr_getresuid32                  = (__NR_SYSCALL_BASE + 209);
-syscall_nr_setresgid32                  = (__NR_SYSCALL_BASE + 210);
-syscall_nr_getresgid32                  = (__NR_SYSCALL_BASE + 211);
-syscall_nr_chown32                      = (__NR_SYSCALL_BASE + 212);
-syscall_nr_setuid32                     = (__NR_SYSCALL_BASE + 213);
-syscall_nr_setgid32                     = (__NR_SYSCALL_BASE + 214);
-syscall_nr_mincore                      = (__NR_SYSCALL_BASE + 218);
-syscall_nr_madvise                      = (__NR_SYSCALL_BASE + 219);
-syscall_nr_getdents64                   = (__NR_SYSCALL_BASE + 220);
-syscall_nr_fcntl64                      = (__NR_SYSCALL_BASE + 221);
-syscall_nr_gettid                       = (__NR_SYSCALL_BASE + 224);
-syscall_nr_readahead                    = (__NR_SYSCALL_BASE + 225);
-syscall_nr_setxattr                     = (__NR_SYSCALL_BASE + 226);
-syscall_nr_lsetxattr                    = (__NR_SYSCALL_BASE + 227);
-syscall_nr_fsetxattr                    = (__NR_SYSCALL_BASE + 228);
-syscall_nr_getxattr                     = (__NR_SYSCALL_BASE + 229);
-syscall_nr_lgetxattr                    = (__NR_SYSCALL_BASE + 230);
-syscall_nr_fgetxattr                    = (__NR_SYSCALL_BASE + 231);
-syscall_nr_listxattr                    = (__NR_SYSCALL_BASE + 232);
-syscall_nr_llistxattr                   = (__NR_SYSCALL_BASE + 233);
-syscall_nr_flistxattr                   = (__NR_SYSCALL_BASE + 234);
-syscall_nr_removexattr                  = (__NR_SYSCALL_BASE + 235);
-syscall_nr_lremovexattr                 = (__NR_SYSCALL_BASE + 236);
-syscall_nr_fremovexattr                 = (__NR_SYSCALL_BASE + 237);
-syscall_nr_tkill                        = (__NR_SYSCALL_BASE + 238);
-syscall_nr_futex                        = (__NR_SYSCALL_BASE + 240);
-syscall_nr_sched_setaffinity            = (__NR_SYSCALL_BASE + 241);
-syscall_nr_sched_getaffinity            = (__NR_SYSCALL_BASE + 242);
-syscall_nr_set_thread_area              = (__NR_SYSCALL_BASE + 243);
-syscall_nr_exit_group                   = (__NR_SYSCALL_BASE + 252);
-syscall_nr_epoll_create                 = (__NR_SYSCALL_BASE + 254);
-syscall_nr_epoll_ctl                    = (__NR_SYSCALL_BASE + 255);
-syscall_nr_epoll_wait                   = (__NR_SYSCALL_BASE + 256);
-syscall_nr_timer_create                 = (__NR_SYSCALL_BASE + 259);
-syscall_nr_timer_settime                = (__NR_SYSCALL_BASE + 260);
-syscall_nr_timer_gettime                = (__NR_SYSCALL_BASE + 261);
-syscall_nr_timer_getoverrun             = (__NR_SYSCALL_BASE + 262);
-syscall_nr_timer_delete                 = (__NR_SYSCALL_BASE + 263);
-syscall_nr_clock_settime                = (__NR_SYSCALL_BASE + 264);
-syscall_nr_clock_gettime                = (__NR_SYSCALL_BASE + 265);
-syscall_nr_clock_getres                 = (__NR_SYSCALL_BASE + 266);
-syscall_nr_clock_nanosleep              = (__NR_SYSCALL_BASE + 267);
-syscall_nr_statfs64                     = (__NR_SYSCALL_BASE + 268);
-syscall_nr_fstatfs64                    = (__NR_SYSCALL_BASE + 269);
-syscall_nr_tgkill                       = (__NR_SYSCALL_BASE + 270);
-syscall_nr_utimes                       = (__NR_SYSCALL_BASE + 271);
-syscall_nr_waitid                       = (__NR_SYSCALL_BASE + 284);
-syscall_nr_ioprio_set                   = (__NR_SYSCALL_BASE + 289);
-syscall_nr_ioprio_get                   = (__NR_SYSCALL_BASE + 290);
-syscall_nr_inotify_init                 = (__NR_SYSCALL_BASE + 291);
-syscall_nr_inotify_add_watch            = (__NR_SYSCALL_BASE + 292);
-syscall_nr_inotify_rm_watch             = (__NR_SYSCALL_BASE + 293);
-syscall_nr_openat                       = (__NR_SYSCALL_BASE + 295);
-syscall_nr_mkdirat                      = (__NR_SYSCALL_BASE + 296);
-syscall_nr_fchownat                     = (__NR_SYSCALL_BASE + 298);
-syscall_nr_fstatat64                    = (__NR_SYSCALL_BASE + 300);
-syscall_nr_unlinkat                     = (__NR_SYSCALL_BASE + 301);
-syscall_nr_renameat                     = (__NR_SYSCALL_BASE + 302);
-syscall_nr_fchmodat                     = (__NR_SYSCALL_BASE + 306);
-syscall_nr_faccessat                    = (__NR_SYSCALL_BASE + 307);
-syscall_nr_unshare                      = (__NR_SYSCALL_BASE + 310);
-syscall_nr_getcpu                       = (__NR_SYSCALL_BASE + 318);
-syscall_nr_utimensat                    = (__NR_SYSCALL_BASE + 320);
-syscall_nr_eventfd2                     = (__NR_SYSCALL_BASE + 328);
-syscall_nr_pipe2                        = (__NR_SYSCALL_BASE + 331);

+ 218 - 218
rtl/android/mipsel/sysnr.inc

@@ -1,220 +1,220 @@
-{
-    This file is part of the Free Pascal run time library.
-    Copyright (c) 2017 by Yuriy Sydorov,
-    member of the Free Pascal development team.
-
-    Syscall nrs for mipsel-android
-
-    See the file COPYING.FPC, included in this distribution,
-    for details about the copyright.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-
- **********************************************************************}
-
+// Available syscall numbers for mipsel-android. 
+// This file is autogenerated. Do not edit. 
+// 
 const
-  __NR_SYSCALL_BASE = 4000;
-
-syscall_nr_exit                         = (__NR_SYSCALL_BASE + 1);
-syscall_nr_fork                         = (__NR_SYSCALL_BASE + 2);
-syscall_nr_read                         = (__NR_SYSCALL_BASE + 3);
-syscall_nr_write                        = (__NR_SYSCALL_BASE + 4);
-syscall_nr_open                         = (__NR_SYSCALL_BASE + 5);
-syscall_nr_close                        = (__NR_SYSCALL_BASE + 6);
-syscall_nr_link                         = (__NR_SYSCALL_BASE + 9);
-syscall_nr_unlink                       = (__NR_SYSCALL_BASE + 10);
-syscall_nr_execve                       = (__NR_SYSCALL_BASE + 11);
-syscall_nr_chdir                        = (__NR_SYSCALL_BASE + 12);
-syscall_nr_mknod                        = (__NR_SYSCALL_BASE + 14);
-syscall_nr_chmod                        = (__NR_SYSCALL_BASE + 15);
-syscall_nr_lseek                        = (__NR_SYSCALL_BASE + 19);
-syscall_nr_getpid                       = (__NR_SYSCALL_BASE + 20);
-syscall_nr_mount                        = (__NR_SYSCALL_BASE + 21);
-syscall_nr_ptrace                       = (__NR_SYSCALL_BASE + 26);
-syscall_nr_pause                        = (__NR_SYSCALL_BASE + 29);
-syscall_nr_access                       = (__NR_SYSCALL_BASE + 33);
-syscall_nr_sync                         = (__NR_SYSCALL_BASE + 36);
-syscall_nr_rename                       = (__NR_SYSCALL_BASE + 38);
-syscall_nr_mkdir                        = (__NR_SYSCALL_BASE + 39);
-syscall_nr_rmdir                        = (__NR_SYSCALL_BASE + 40);
-syscall_nr_dup                          = (__NR_SYSCALL_BASE + 41);
-syscall_nr_times                        = (__NR_SYSCALL_BASE + 43);
-syscall_nr_brk                          = (__NR_SYSCALL_BASE + 45);
-syscall_nr_acct                         = (__NR_SYSCALL_BASE + 51);
-syscall_nr_umount2                      = (__NR_SYSCALL_BASE + 52);
-syscall_nr_ioctl                        = (__NR_SYSCALL_BASE + 54);
-syscall_nr_fcntl                        = (__NR_SYSCALL_BASE + 55);
-syscall_nr_setpgid                      = (__NR_SYSCALL_BASE + 57);
-syscall_nr_umask                        = (__NR_SYSCALL_BASE + 60);
-syscall_nr_chroot                       = (__NR_SYSCALL_BASE + 61);
-syscall_nr_dup2                         = (__NR_SYSCALL_BASE + 63);
-syscall_nr_getppid                      = (__NR_SYSCALL_BASE + 64);
-syscall_nr_setsid                       = (__NR_SYSCALL_BASE + 66);
-syscall_nr_sigaction                    = (__NR_SYSCALL_BASE + 67);
-syscall_nr_sigpending                   = (__NR_SYSCALL_BASE + 73);
-syscall_nr_setrlimit                    = (__NR_SYSCALL_BASE + 75);
-syscall_nr_getrusage                    = (__NR_SYSCALL_BASE + 77);
-syscall_nr_gettimeofday                 = (__NR_SYSCALL_BASE + 78);
-syscall_nr_settimeofday                 = (__NR_SYSCALL_BASE + 79);
-syscall_nr_symlink                      = (__NR_SYSCALL_BASE + 83);
-syscall_nr_readlink                     = (__NR_SYSCALL_BASE + 85);
-syscall_nr_reboot                       = (__NR_SYSCALL_BASE + 88);
-syscall_nr_munmap                       = (__NR_SYSCALL_BASE + 91);
-syscall_nr_truncate                     = (__NR_SYSCALL_BASE + 92);
-syscall_nr_ftruncate                    = (__NR_SYSCALL_BASE + 93);
-syscall_nr_fchmod                       = (__NR_SYSCALL_BASE + 94);
-syscall_nr_getpriority                  = (__NR_SYSCALL_BASE + 96);
-syscall_nr_setpriority                  = (__NR_SYSCALL_BASE + 97);
-syscall_nr_syslog                       = (__NR_SYSCALL_BASE + 103);
-syscall_nr_setitimer                    = (__NR_SYSCALL_BASE + 104);
-syscall_nr_getitimer                    = (__NR_SYSCALL_BASE + 105);
-syscall_nr_wait4                        = (__NR_SYSCALL_BASE + 114);
-syscall_nr_sysinfo                      = (__NR_SYSCALL_BASE + 116);
-syscall_nr_fsync                        = (__NR_SYSCALL_BASE + 118);
-syscall_nr_clone                        = (__NR_SYSCALL_BASE + 120);
-syscall_nr_uname                        = (__NR_SYSCALL_BASE + 122);
-syscall_nr_mprotect                     = (__NR_SYSCALL_BASE + 125);
-syscall_nr_sigprocmask                  = (__NR_SYSCALL_BASE + 126);
-syscall_nr_init_module                  = (__NR_SYSCALL_BASE + 128);
-syscall_nr_delete_module                = (__NR_SYSCALL_BASE + 129);
-syscall_nr_getpgid                      = (__NR_SYSCALL_BASE + 132);
-syscall_nr_fchdir                       = (__NR_SYSCALL_BASE + 133);
-syscall_nr_personality                  = (__NR_SYSCALL_BASE + 136);
-syscall_nr__llseek                      = (__NR_SYSCALL_BASE + 140);
-syscall_nr__newselect                   = (__NR_SYSCALL_BASE + 142);
-syscall_nr_flock                        = (__NR_SYSCALL_BASE + 143);
-syscall_nr_msync                        = (__NR_SYSCALL_BASE + 144);
-syscall_nr_readv                        = (__NR_SYSCALL_BASE + 145);
-syscall_nr_writev                       = (__NR_SYSCALL_BASE + 146);
-syscall_nr_perf_event_open              = (__NR_SYSCALL_BASE + 364);
+  syscall_nr_execve = (4000 + 11);
+  syscall_nr_getuid = (4000 + 24);
+  syscall_nr_getgid = (4000 + 47);
+  syscall_nr_geteuid = (4000 + 49);
+  syscall_nr_getegid = (4000 + 50);
+  syscall_nr_getresuid = (4000 + 186);
+  syscall_nr_getresgid = (4000 + 191);
+  syscall_nr_readahead = (4000 + 223);
+  syscall_nr_getgroups = (4000 + 80);
+  syscall_nr_getpgid = (4000 + 132);
+  syscall_nr_getppid = (4000 + 64);
+  syscall_nr_getsid = (4000 + 151);
+  syscall_nr_setsid = (4000 + 66);
+  syscall_nr_setgid = (4000 + 46);
+  syscall_nr_setuid = (4000 + 23);
+  syscall_nr_setreuid = (4000 + 70);
+  syscall_nr_setresuid = (4000 + 185);
+  syscall_nr_setresgid = (4000 + 190);
+  syscall_nr_brk = (4000 + 45);
+  syscall_nr_kill = (4000 + 37);
+  syscall_nr_tgkill = (4000 + 266);
+  syscall_nr_ptrace = (4000 + 26);
+  syscall_nr_getrusage = (4000 + 77);
+  syscall_nr_getpriority = (4000 + 96);
+  syscall_nr_setpriority = (4000 + 97);
+  syscall_nr_getrlimit = (4000 + 76);
+  syscall_nr_setrlimit = (4000 + 75);
+  syscall_nr_prlimit64 = (4000 + 338);
+  syscall_nr_setgroups = (4000 + 81);
+  syscall_nr_setpgid = (4000 + 57);
+  syscall_nr_setregid = (4000 + 71);
+  syscall_nr_chroot = (4000 + 61);
+  syscall_nr_prctl = (4000 + 192);
+  syscall_nr_capget = (4000 + 204);
+  syscall_nr_capset = (4000 + 205);
+  syscall_nr_sigaltstack = (4000 + 206);
+  syscall_nr_acct = (4000 + 51);
+  syscall_nr_read = (4000 + 3);
+  syscall_nr_write = (4000 + 4);
+  syscall_nr_pread64 = (4000 + 200);
+  syscall_nr_pwrite64 = (4000 + 201);
+  syscall_nr_preadv = (4000 + 330);
+  syscall_nr_pwritev = (4000 + 331);
+  syscall_nr_close = (4000 + 6);
+  syscall_nr_getpid = (4000 + 20);
+  syscall_nr_munmap = (4000 + 91);
+  syscall_nr_mremap = (4000 + 167);
+  syscall_nr_msync = (4000 + 144);
+  syscall_nr_mprotect = (4000 + 125);
+  syscall_nr_madvise = (4000 + 218);
+  syscall_nr_mlock = (4000 + 154);
+  syscall_nr_munlock = (4000 + 155);
+  syscall_nr_mlockall = (4000 + 156);
+  syscall_nr_munlockall = (4000 + 157);
+  syscall_nr_mincore = (4000 + 217);
+  syscall_nr_ioctl = (4000 + 54);
+  syscall_nr_readv = (4000 + 145);
+  syscall_nr_writev = (4000 + 146);
+  syscall_nr_fcntl64 = (4000 + 220);
+  syscall_nr_fcntl = syscall_nr_fcntl64;
+  syscall_nr_flock = (4000 + 143);
+  syscall_nr_fchmod = (4000 + 94);
+  syscall_nr_dup = (4000 + 41);
+  syscall_nr_pipe2 = (4000 + 328);
+  syscall_nr_dup3 = (4000 + 327);
+  syscall_nr_fsync = (4000 + 118);
+  syscall_nr_fdatasync = (4000 + 152);
+  syscall_nr_fchown = (4000 + 95);
+  syscall_nr_sync = (4000 + 36);
+  syscall_nr_syncfs = (4000 + 342);
+  syscall_nr_fsetxattr = (4000 + 226);
+  syscall_nr_fgetxattr = (4000 + 229);
+  syscall_nr_flistxattr = (4000 + 232);
+  syscall_nr_fremovexattr = (4000 + 235);
+  syscall_nr_getdents64 = (4000 + 219);
+  syscall_nr_openat = (4000 + 288);
+  syscall_nr_faccessat = (4000 + 300);
+  syscall_nr_fchmodat = (4000 + 299);
+  syscall_nr_fchownat = (4000 + 291);
+  syscall_nr_fstatat64 = (4000 + 293);
+  syscall_nr_fstatat = syscall_nr_fstatat64;
+  syscall_nr_linkat = (4000 + 296);
+  syscall_nr_mkdirat = (4000 + 289);
+  syscall_nr_mknodat = (4000 + 290);
+  syscall_nr_readlinkat = (4000 + 298);
+  syscall_nr_renameat = (4000 + 295);
+  syscall_nr_symlinkat = (4000 + 297);
+  syscall_nr_unlinkat = (4000 + 294);
+  syscall_nr_utimensat = (4000 + 316);
+  syscall_nr_lseek = (4000 + 19);
+  syscall_nr__llseek = (4000 + 140);
+  syscall_nr_ftruncate64 = (4000 + 212);
+  syscall_nr_sendfile = (4000 + 207);
+  syscall_nr_sendfile64 = (4000 + 237);
+  syscall_nr_truncate = (4000 + 92);
+  syscall_nr_truncate64 = (4000 + 211);
+  syscall_nr_mmap2 = (4000 + 210);
+  syscall_nr_fallocate = (4000 + 320);
+  syscall_nr_fallocate64 = syscall_nr_fallocate;
+  syscall_nr_fadvise64 = (4000 + 254);
+  syscall_nr_fstatfs64 = (4000 + 256);
+  syscall_nr_statfs64 = (4000 + 255);
+  syscall_nr_fstat64 = (4000 + 215);
+  syscall_nr_fstat = syscall_nr_fstat64;
+  syscall_nr_chdir = (4000 + 12);
+  syscall_nr_mount = (4000 + 21);
+  syscall_nr_umount2 = (4000 + 52);
+  syscall_nr_getcwd = (4000 + 203);
+  syscall_nr_fchdir = (4000 + 133);
+  syscall_nr_setxattr = (4000 + 224);
+  syscall_nr_lsetxattr = (4000 + 225);
+  syscall_nr_getxattr = (4000 + 227);
+  syscall_nr_lgetxattr = (4000 + 228);
+  syscall_nr_listxattr = (4000 + 230);
+  syscall_nr_llistxattr = (4000 + 231);
+  syscall_nr_removexattr = (4000 + 233);
+  syscall_nr_lremovexattr = (4000 + 234);
+  syscall_nr_swapon = (4000 + 87);
+  syscall_nr_swapoff = (4000 + 115);
+  syscall_nr_settimeofday = (4000 + 79);
+  syscall_nr_times = (4000 + 43);
+  syscall_nr_nanosleep = (4000 + 166);
+  syscall_nr_clock_settime = (4000 + 262);
+  syscall_nr_clock_nanosleep = (4000 + 265);
+  syscall_nr_getitimer = (4000 + 105);
+  syscall_nr_setitimer = (4000 + 104);
+  syscall_nr_timer_create = (4000 + 257);
+  syscall_nr_timer_settime = (4000 + 258);
+  syscall_nr_timer_gettime = (4000 + 259);
+  syscall_nr_timer_getoverrun = (4000 + 260);
+  syscall_nr_timer_delete = (4000 + 261);
+  syscall_nr_timerfd_create = (4000 + 321);
+  syscall_nr_timerfd_settime = (4000 + 323);
+  syscall_nr_timerfd_gettime = (4000 + 322);
+  syscall_nr_adjtimex = (4000 + 124);
+  syscall_nr_clock_adjtime = (4000 + 341);
+  syscall_nr_sigaction = (4000 + 67);
+  syscall_nr_rt_sigaction = (4000 + 194);
+  syscall_nr_rt_sigpending = (4000 + 196);
+  syscall_nr_rt_sigprocmask = (4000 + 195);
+  syscall_nr_rt_sigsuspend = (4000 + 199);
+  syscall_nr_rt_sigtimedwait = (4000 + 197);
+  syscall_nr_rt_sigqueueinfo = (4000 + 198);
+  syscall_nr_signalfd4 = (4000 + 324);
+  syscall_nr_socket = (4000 + 183);
+  syscall_nr_socketpair = (4000 + 184);
+  syscall_nr_bind = (4000 + 169);
+  syscall_nr_connect = (4000 + 170);
+  syscall_nr_listen = (4000 + 174);
+  syscall_nr_accept4 = (4000 + 334);
+  syscall_nr_getsockname = (4000 + 172);
+  syscall_nr_getpeername = (4000 + 171);
+  syscall_nr_sendto = (4000 + 180);
+  syscall_nr_recvfrom = (4000 + 176);
+  syscall_nr_shutdown = (4000 + 182);
+  syscall_nr_setsockopt = (4000 + 181);
+  syscall_nr_getsockopt = (4000 + 173);
+  syscall_nr_recvmsg = (4000 + 177);
+  syscall_nr_sendmsg = (4000 + 179);
+  syscall_nr_recvmmsg = (4000 + 335);
+  syscall_nr_sendmmsg = (4000 + 343);
+  syscall_nr_sched_setscheduler = (4000 + 160);
+  syscall_nr_sched_getscheduler = (4000 + 161);
+  syscall_nr_sched_yield = (4000 + 162);
+  syscall_nr_sched_setparam = (4000 + 158);
+  syscall_nr_sched_getparam = (4000 + 159);
+  syscall_nr_sched_get_priority_max = (4000 + 163);
+  syscall_nr_sched_get_priority_min = (4000 + 164);
+  syscall_nr_sched_rr_get_interval = (4000 + 165);
+  syscall_nr_sched_setaffinity = (4000 + 239);
+  syscall_nr_setns = (4000 + 344);
+  syscall_nr_unshare = (4000 + 303);
+  syscall_nr_sched_getaffinity = (4000 + 240);
+  syscall_nr_getcpu = (4000 + 312);
+  syscall_nr_uname = (4000 + 122);
+  syscall_nr_umask = (4000 + 60);
+  syscall_nr_reboot = (4000 + 88);
+  syscall_nr_init_module = (4000 + 128);
+  syscall_nr_delete_module = (4000 + 129);
+  syscall_nr_syslog = (4000 + 103);
+  syscall_nr_klogctl = syscall_nr_syslog;
+  syscall_nr_sysinfo = (4000 + 116);
+  syscall_nr_personality = (4000 + 136);
+  syscall_nr_tee = (4000 + 306);
+  syscall_nr_splice = (4000 + 304);
+  syscall_nr_vmsplice = (4000 + 307);
+  syscall_nr_epoll_create1 = (4000 + 326);
+  syscall_nr_epoll_ctl = (4000 + 249);
+  syscall_nr_epoll_pwait = (4000 + 313);
+  syscall_nr_eventfd2 = (4000 + 325);
+  syscall_nr_eventfd = syscall_nr_eventfd2;
+  syscall_nr_exit_group = (4000 + 246);
+  syscall_nr_exit = (4000 + 1);
+  syscall_nr_inotify_init1 = (4000 + 329);
+  syscall_nr_inotify_add_watch = (4000 + 285);
+  syscall_nr_inotify_rm_watch = (4000 + 286);
+  syscall_nr_pselect6 = (4000 + 301);
+  syscall_nr_ppoll = (4000 + 302);
+  syscall_nr_process_vm_readv = (4000 + 345);
+  syscall_nr_process_vm_writev = (4000 + 346);
+  syscall_nr_quotactl = (4000 + 131);
+  syscall_nr_set_tid_address = (4000 + 252);
+  syscall_nr_setfsgid = (4000 + 139);
+  syscall_nr_setfsuid = (4000 + 138);
+  syscall_nr_setdomainname = (4000 + 121);
+  syscall_nr_sethostname = (4000 + 74);
+  syscall_nr_sync_file_range = (4000 + 305);
+  syscall_nr_wait4 = (4000 + 114);
+  syscall_nr_waitid = (4000 + 278);
+  syscall_nr_cacheflush = (4000 + 147);
+  syscall_nr_set_thread_area = (4000 + 283);
+  syscall_nr_clock_getres = (4000 + 264);
+  syscall_nr_clock_gettime = (4000 + 263);
+  syscall_nr_gettimeofday = (4000 + 78);
+  syscall_nr_clone = (4000 + 120);
 
-syscall_nr_syscall                      = (__NR_SYSCALL_BASE + 0);
-syscall_nr_waitpid                      = (__NR_SYSCALL_BASE + 7);
-syscall_nr_lchown                       = (__NR_SYSCALL_BASE + 16);
-syscall_nr_setuid                       = (__NR_SYSCALL_BASE + 23);
-syscall_nr_getuid                       = (__NR_SYSCALL_BASE + 24);
-syscall_nr_kill                         = (__NR_SYSCALL_BASE + 37);
-syscall_nr_setgid                       = (__NR_SYSCALL_BASE + 46);
-syscall_nr_getgid                       = (__NR_SYSCALL_BASE + 47);
-syscall_nr_geteuid                      = (__NR_SYSCALL_BASE + 49);
-syscall_nr_getegid                      = (__NR_SYSCALL_BASE + 50);
-syscall_nr_setreuid                     = (__NR_SYSCALL_BASE + 70);
-syscall_nr_setregid                     = (__NR_SYSCALL_BASE + 71);
-syscall_nr_sigsuspend                   = (__NR_SYSCALL_BASE + 72);
-syscall_nr_getrlimit                    = (__NR_SYSCALL_BASE + 76);
-syscall_nr_getgroups                    = (__NR_SYSCALL_BASE + 80);
-syscall_nr_setgroups                    = (__NR_SYSCALL_BASE + 81);
-syscall_nr_fchown                       = (__NR_SYSCALL_BASE + 95);
-syscall_nr_cacheflush                   = (__NR_SYSCALL_BASE + 147);
-syscall_nr_fdatasync                    = (__NR_SYSCALL_BASE + 152);
-syscall_nr_mlock                        = (__NR_SYSCALL_BASE + 154);
-syscall_nr_munlock                      = (__NR_SYSCALL_BASE + 155);
-syscall_nr_sched_setparam               = (__NR_SYSCALL_BASE + 158);
-syscall_nr_sched_getparam               = (__NR_SYSCALL_BASE + 159);
-syscall_nr_sched_setscheduler           = (__NR_SYSCALL_BASE + 160);
-syscall_nr_sched_getscheduler           = (__NR_SYSCALL_BASE + 161);
-syscall_nr_sched_yield                  = (__NR_SYSCALL_BASE + 162);
-syscall_nr_sched_get_priority_max       = (__NR_SYSCALL_BASE + 163);
-syscall_nr_sched_get_priority_min       = (__NR_SYSCALL_BASE + 164);
-syscall_nr_sched_rr_get_interval        = (__NR_SYSCALL_BASE + 165);
-syscall_nr_nanosleep                    = (__NR_SYSCALL_BASE + 166);
-syscall_nr_mremap                       = (__NR_SYSCALL_BASE + 167);
-syscall_nr_accept                       = (__NR_SYSCALL_BASE + 168);
-syscall_nr_bind                         = (__NR_SYSCALL_BASE + 169);
-syscall_nr_connect                      = (__NR_SYSCALL_BASE + 170);
-syscall_nr_getpeername                  = (__NR_SYSCALL_BASE + 171);
-syscall_nr_getsockname                  = (__NR_SYSCALL_BASE + 172);
-syscall_nr_getsockopt                   = (__NR_SYSCALL_BASE + 173);
-syscall_nr_listen                       = (__NR_SYSCALL_BASE + 174);
-syscall_nr_recvfrom                     = (__NR_SYSCALL_BASE + 176);
-syscall_nr_recvmsg                      = (__NR_SYSCALL_BASE + 177);
-syscall_nr_sendmsg                      = (__NR_SYSCALL_BASE + 179);
-syscall_nr_sendto                       = (__NR_SYSCALL_BASE + 180);
-syscall_nr_setsockopt                   = (__NR_SYSCALL_BASE + 181);
-syscall_nr_shutdown                     = (__NR_SYSCALL_BASE + 182);
-syscall_nr_socket                       = (__NR_SYSCALL_BASE + 183);
-syscall_nr_socketpair                   = (__NR_SYSCALL_BASE + 184);
-syscall_nr_setresuid                    = (__NR_SYSCALL_BASE + 185);
-syscall_nr_getresuid                    = (__NR_SYSCALL_BASE + 186);
-syscall_nr_poll                         = (__NR_SYSCALL_BASE + 188);
-syscall_nr_setresgid                    = (__NR_SYSCALL_BASE + 190);
-syscall_nr_getresgid                    = (__NR_SYSCALL_BASE + 191);
-syscall_nr_prctl                        = (__NR_SYSCALL_BASE + 192);
-syscall_nr_rt_sigaction                 = (__NR_SYSCALL_BASE + 194);
-syscall_nr_rt_sigprocmask               = (__NR_SYSCALL_BASE + 195);
-syscall_nr_rt_sigtimedwait              = (__NR_SYSCALL_BASE + 197);
-syscall_nr_pread64                      = (__NR_SYSCALL_BASE + 200);
-syscall_nr_pwrite64                     = (__NR_SYSCALL_BASE + 201);
-syscall_nr_chown                        = (__NR_SYSCALL_BASE + 202);
-syscall_nr_getcwd                       = (__NR_SYSCALL_BASE + 203);
-syscall_nr_capget                       = (__NR_SYSCALL_BASE + 204);
-syscall_nr_capset                       = (__NR_SYSCALL_BASE + 205);
-syscall_nr_sigaltstack                  = (__NR_SYSCALL_BASE + 206);
-syscall_nr_sendfile                     = (__NR_SYSCALL_BASE + 207);
-syscall_nr_mmap2                        = (__NR_SYSCALL_BASE + 210);
-syscall_nr_ftruncate64                  = (__NR_SYSCALL_BASE + 212);
-syscall_nr_stat64                       = (__NR_SYSCALL_BASE + 213);
-syscall_nr_lstat64                      = (__NR_SYSCALL_BASE + 214);
-syscall_nr_fstat64                      = (__NR_SYSCALL_BASE + 215);
-syscall_nr_mincore                      = (__NR_SYSCALL_BASE + 217);
-syscall_nr_madvise                      = (__NR_SYSCALL_BASE + 218);
-syscall_nr_getdents64                   = (__NR_SYSCALL_BASE + 219);
-syscall_nr_fcntl64                      = (__NR_SYSCALL_BASE + 220);
-syscall_nr_gettid                       = (__NR_SYSCALL_BASE + 222);
-syscall_nr_readahead                    = (__NR_SYSCALL_BASE + 223);
-syscall_nr_setxattr                     = (__NR_SYSCALL_BASE + 224);
-syscall_nr_lsetxattr                    = (__NR_SYSCALL_BASE + 225);
-syscall_nr_fsetxattr                    = (__NR_SYSCALL_BASE + 226);
-syscall_nr_getxattr                     = (__NR_SYSCALL_BASE + 227);
-syscall_nr_lgetxattr                    = (__NR_SYSCALL_BASE + 228);
-syscall_nr_fgetxattr                    = (__NR_SYSCALL_BASE + 229);
-syscall_nr_listxattr                    = (__NR_SYSCALL_BASE + 230);
-syscall_nr_llistxattr                   = (__NR_SYSCALL_BASE + 231);
-syscall_nr_flistxattr                   = (__NR_SYSCALL_BASE + 232);
-syscall_nr_removexattr                  = (__NR_SYSCALL_BASE + 233);
-syscall_nr_lremovexattr                 = (__NR_SYSCALL_BASE + 234);
-syscall_nr_fremovexattr                 = (__NR_SYSCALL_BASE + 235);
-syscall_nr_tkill                        = (__NR_SYSCALL_BASE + 236);
-syscall_nr_futex                        = (__NR_SYSCALL_BASE + 238);
-syscall_nr_sched_setaffinity            = (__NR_SYSCALL_BASE + 239);
-syscall_nr_sched_getaffinity            = (__NR_SYSCALL_BASE + 240);
-syscall_nr_exit_group                   = (__NR_SYSCALL_BASE + 246);
-syscall_nr_epoll_create                 = (__NR_SYSCALL_BASE + 248);
-syscall_nr_epoll_ctl                    = (__NR_SYSCALL_BASE + 249);
-syscall_nr_epoll_wait                   = (__NR_SYSCALL_BASE + 250);
-syscall_nr_statfs64                     = (__NR_SYSCALL_BASE + 255);
-syscall_nr_fstatfs64                    = (__NR_SYSCALL_BASE + 256);
-syscall_nr_timer_create                 = (__NR_SYSCALL_BASE + 257);
-syscall_nr_timer_settime                = (__NR_SYSCALL_BASE + 258);
-syscall_nr_timer_gettime                = (__NR_SYSCALL_BASE + 259);
-syscall_nr_timer_getoverrun             = (__NR_SYSCALL_BASE + 260);
-syscall_nr_timer_delete                 = (__NR_SYSCALL_BASE + 261);
-syscall_nr_clock_settime                = (__NR_SYSCALL_BASE + 262);
-syscall_nr_clock_gettime                = (__NR_SYSCALL_BASE + 263);
-syscall_nr_clock_getres                 = (__NR_SYSCALL_BASE + 264);
-syscall_nr_clock_nanosleep              = (__NR_SYSCALL_BASE + 265);
-syscall_nr_tgkill                       = (__NR_SYSCALL_BASE + 266);
-syscall_nr_utimes                       = (__NR_SYSCALL_BASE + 267);
-syscall_nr_waitid                       = (__NR_SYSCALL_BASE + 278);
-syscall_nr_set_thread_area              = (__NR_SYSCALL_BASE + 283);
-syscall_nr_inotify_init                 = (__NR_SYSCALL_BASE + 284);
-syscall_nr_inotify_add_watch            = (__NR_SYSCALL_BASE + 285);
-syscall_nr_inotify_rm_watch             = (__NR_SYSCALL_BASE + 286);
-syscall_nr_openat                       = (__NR_SYSCALL_BASE + 288);
-syscall_nr_mkdirat                      = (__NR_SYSCALL_BASE + 289);
-syscall_nr_fchownat                     = (__NR_SYSCALL_BASE + 291);
-syscall_nr_fstatat64                    = (__NR_SYSCALL_BASE + 293);
-syscall_nr_unlinkat                     = (__NR_SYSCALL_BASE + 294);
-syscall_nr_renameat                     = (__NR_SYSCALL_BASE + 295);
-syscall_nr_fchmodat                     = (__NR_SYSCALL_BASE + 299);
-syscall_nr_faccessat                    = (__NR_SYSCALL_BASE + 300);
-syscall_nr_unshare                      = (__NR_SYSCALL_BASE + 303);
-syscall_nr_getcpu                       = (__NR_SYSCALL_BASE + 312);
-syscall_nr_ioprio_set                   = (__NR_SYSCALL_BASE + 314);
-syscall_nr_ioprio_get                   = (__NR_SYSCALL_BASE + 315);
-syscall_nr_utimensat                    = (__NR_SYSCALL_BASE + 316);
-syscall_nr_eventfd2                     = (__NR_SYSCALL_BASE + 325);
-syscall_nr_pipe2                        = (__NR_SYSCALL_BASE + 328);
-syscall_nr_pipe                         = (__NR_SYSCALL_BASE + 42);

+ 4 - 31
rtl/linux/bunxsysc.inc

@@ -15,21 +15,6 @@
 
  **********************************************************************}
 
-{$ifdef android}
-const
-  syscall_nr_pread = syscall_nr_pread64;
-  syscall_nr_pwrite = syscall_nr_pwrite64;
-{$ifndef cpumips}
-  syscall_nr_getuid = syscall_nr_getuid32;
-  syscall_nr_geteuid = syscall_nr_geteuid32;
-  syscall_nr_getgid = syscall_nr_getgid32;
-  syscall_nr_getegid = syscall_nr_getegid32;
-  syscall_nr_setuid = syscall_nr_setuid32;
-  syscall_nr_setgid = syscall_nr_setgid32;
-  syscall_nr_getgroups = syscall_nr_getgroups32;
-{$endif cpumips}
-{$endif android}
-
 Function fpKill(Pid:pid_t;Sig:cint):cint;
 {
   Send signal 'sig' to a process, or a group of processes.
@@ -52,11 +37,7 @@ Function fpSigPending(var nset: TSigSet):cint;
   signals is set in SSet
 }
 begin
-{$ifdef android}
-  fpsigpending:=do_syscall(syscall_nr_sigpending,TSysParam(@nset));
-{$else}
   fpsigpending:=do_syscall(syscall_nr_rt_sigpending,TSysParam(@nset));
-{$endif android}
 end;
 
 function fpsigsuspend(const sigmask:TSigSet):cint;
@@ -66,11 +47,7 @@ function fpsigsuspend(const sigmask:TSigSet):cint;
 }
 
 begin
-{$ifdef android}
-  fpsigsuspend:= do_syscall(syscall_nr_sigsuspend,TSysParam(@sigmask));
-{$else}
   fpsigsuspend:= do_syscall(syscall_nr_rt_sigsuspend,TSysParam(@sigmask),TSysParam(8));
-{$endif android}
 end;
 
 function fpsigtimedwait(const sigset:TSigSet;info:Psiginfo;timeout:Ptimespec):cint;
@@ -320,7 +297,7 @@ end;
 function fpgetpgrp : pid_t;
 
 begin
-{$if defined(generic_linux_syscalls) or defined(android)}
+{$if defined(generic_linux_syscalls)}
  fpgetpgrp:=do_syscall(syscall_nr_getpgid,0);
 {$else}
  fpgetpgrp:=do_syscall(syscall_nr_getpgrp);
@@ -336,11 +313,7 @@ end;
 function fpgetsid (pid:TPid): pid_t;
 
 begin
-{$ifdef android}
- fpgetsid:=0;
-{$else}
  fpgetsid:=do_syscall(syscall_nr_getsid,pid);
-{$endif android}
 end;
 
 Function fpumask(cmask:mode_t):mode_t;
@@ -389,7 +362,7 @@ end;
 Function fpchown(path:pchar;owner:uid_t;group:gid_t):cint;
 
 begin
-{$if defined(generic_linux_syscalls) or defined(android)}
+{$if defined(generic_linux_syscalls)}
   fpChOwn:=do_syscall(syscall_nr_fchownat,AT_FDCWD,TSysParam(path),TSysParam(owner),TSysParam(group),0);
 {$else}
   fpChOwn:=do_syscall(syscall_nr_chown,TSysParam(path),TSysParam(owner),TSysParam(group));
@@ -569,12 +542,12 @@ function fpNice(N:cint):cint;
 Doesn't exist in BSD. Linux emu uses setpriority in a construct as below:
 }
 
-{$if defined(generic_linux_syscalls) or defined(cpux86_64) or defined(android)}
+{$if defined(generic_linux_syscalls) or defined(cpux86_64)}
 var
   oldprio : cint;
 {$endif}
 begin
-{$if defined(generic_linux_syscalls) or defined(cpux86_64) or defined(android)}
+{$if defined(generic_linux_syscalls) or defined(cpux86_64)}
   oldprio:=fpGetPriority(Prio_Process,0);
   fpNice:=fpSetPriority(Prio_Process,0,oldprio+N);
   if fpNice=0 then

+ 6 - 6
rtl/linux/linux.pp

@@ -110,6 +110,7 @@ const
      wake UADDR2; }
 
 {$ifndef FPC_USE_LIBC}
+{$ifndef android}
 function futex(uaddr:Pcint;op,val:cint;timeout:Ptimespec;addr2:Pcint;val3:cint):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
 function futex(var uaddr;op,val:cint;timeout:Ptimespec;var addr2;val3:cint):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
 function futex(var uaddr;op,val:cint;var timeout:Ttimespec;var addr2;val3:cint):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
@@ -117,6 +118,7 @@ function futex(var uaddr;op,val:cint;var timeout:Ttimespec;var addr2;val3:cint):
 function futex(uaddr:Pcint;op,val:cint;timeout:Ptimespec):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
 function futex(var uaddr;op,val:cint;timeout:Ptimespec):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
 function futex(var uaddr;op,val:cint;var timeout:Ttimespec):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
+{$endif android}
 {$else}
 // futex is currently not exposed by glibc
 //function futex(uaddr:Pcint;op,val:cint;timeout:Ptimespec;addr2:Pcint;val3:cint):cint; cdecl; external name 'futex';
@@ -624,6 +626,8 @@ begin
   fdatasync:=do_SysCall(syscall_nr_fdatasync, fd);
 end;
 
+{$ifndef android}
+
 function futex(uaddr:Pcint;op,val:cint;timeout:Ptimespec;addr2:Pcint;val3:cint):cint;{$ifdef SYSTEMINLINE}inline;{$endif}
 
 begin
@@ -663,6 +667,8 @@ begin
   futex:=do_syscall(syscall_nr_futex,Tsysparam(@uaddr),Tsysparam(op),Tsysparam(val),Tsysparam(@timeout));
 end;
 
+{$endif android}
+
 {$else}
 
 {Libc case.}
@@ -753,12 +759,6 @@ begin
   clock_settime:=do_SysCall(syscall_nr_clock_settime,tsysparam(clk_id),tsysparam(tp));
 end;
 
-{$if defined(android) and not defined(cpumips)}
-const
-  syscall_nr_setregid = syscall_nr_setregid32;
-  syscall_nr_setreuid = syscall_nr_setreuid32;
-{$endif}
-
 function setregid(rgid,egid : uid_t): cint;
 
 begin

+ 4 - 0
rtl/linux/mips/bsyscall.inc

@@ -12,6 +12,8 @@
  **********************************************************************}
 
 
+{$ifndef generic_linux_syscalls}
+
 {$define FPC_BASEUNIX_HAS_FPPIPE}
 Function fppipe(var fildes : tfildes):cint;assembler;
 {
@@ -46,3 +48,5 @@ asm
   sw   $v1,4($t1)
 .L2:
 end;
+
+{$endif generic_linux_syscalls}

+ 3 - 5
rtl/linux/osdefs.inc

@@ -95,12 +95,10 @@
 {$endif cpusparc64}
 
 {$ifdef android}
+  {$define generic_linux_syscalls}
   {$undef usestime}
   {$undef OLDMMAP}
-  {$define MMAP2}
-  {$define NO_SYSCALL_UTIME}
-  {$ifndef cpumips}
-    {$define NO_SYSCALL_GETRLIMIT}
+  {$ifndef cpu64}
+    {$define MMAP2}
   {$endif}
-  {$define FPC_USEGETTIMEOFDAY}
 {$endif android}

+ 1 - 1
rtl/linux/ossysc.inc

@@ -110,7 +110,7 @@ function Fpstat(path: pchar; var buf: stat):cint; [public, alias : 'FPC_SYSC_STA
 
 begin
 { standard stat call is 32 bit on sparc64, so explicitly force a stat64 call }
-{$if defined(cpu64) and not(defined(cpusparc64))}
+{$if defined(cpu64) and not(defined(cpusparc64)) or defined(android)}
   {$if defined(generic_linux_syscalls)}
     Fpstat:=do_syscall(syscall_nr_fstatat,AT_FDCWD,TSysParam(path),TSysParam(@buf),0);
   {$else}