diff --git a/.cproject b/.cproject
index 94e0050..22acb13 100644
--- a/.cproject
+++ b/.cproject
@@ -38,6 +38,14 @@
+
+
+
+
+
+
@@ -53,18 +61,6 @@
-
-
-
- make
-
- UbixOS
- true
- false
- true
-
-
-
@@ -80,4 +76,7 @@
+
+
+
diff --git a/.project b/.project
index daa9fb7..6e055e8 100644
--- a/.project
+++ b/.project
@@ -3,6 +3,7 @@
UbixOS
+ UbixOS Kernel
UbixOS Libc
diff --git a/src/Makefile b/src/Makefile
index f0e76be..5172b5b 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -13,13 +13,6 @@
CLEANDIR=clean
-KERNEL_SRC=${CURDIR}/sys
-KERNEL_OBJ=${OBJ_DIR}${KERNEL_SRC}
-KERNEL_CONF=${KERNEL_SRC}/${_ARCH}/conf
-KERNEL_NAME=kernel
-KERNEL_FLAGS=_ARCH=${_ARCH} CC="cc" CXX="c++" AS="as" AR="ar" LD="ld" NM=nm OBJDUMP= OBJCOPY="objcopy" RANLIB=ranlib
-KERNEL_INC=${KERNEL_SRC}/include
-
KMAKE= ${MAKE} ${KERNEL_FLAGS} INCLUDE=${KERNEL_INC} KERNEL=${KERNEL_NAME}
diff --git a/src/lib/libc_bsd/quad/Makefile.inc b/src/lib/libc_bsd/quad/Makefile.inc
deleted file mode 100644
index 52ec7c2..0000000
--- a/src/lib/libc_bsd/quad/Makefile.inc
+++ /dev/null
@@ -1,25 +0,0 @@
-# from @(#)Makefile.inc 8.1 (Berkeley) 6/4/93
-Makefile.incl 245644 2013-01-19 02:33:57Z andrew $
-
-# Quad support, if needed
-.PATH: ${.CURDIR}/${LIBC_ARCH}/quad ${.CURDIR}/quad
-
-.if ${LIBC_ARCH} == "i386"
-
-SRCS+= cmpdi2.c divdi3.c moddi3.c qdivrem.c ucmpdi2.c udivdi3.c umoddi3.c
-
-.elif ${LIBC_ARCH} == "arm" && ${MK_ARM_EABI} != "no"
-
-SRCS+= adddi3.c anddi3.c floatunsdidf.c iordi3.c lshldi3.c notdi2.c \
- qdivrem.c subdi3.c xordi3.c
-.else
-
-SRCS+= adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c fixdfdi.c \
- fixsfdi.c fixunsdfdi.c fixunssfdi.c floatdidf.c floatdisf.c \
- floatunsdidf.c iordi3.c lshldi3.c lshrdi3.c moddi3.c muldi3.c \
- negdi2.c notdi2.c qdivrem.c subdi3.c ucmpdi2.c udivdi3.c umoddi3.c \
- xordi3.c
-
-.endif
-
-SYM_MAPS+=${.CURDIR}/quad/Symbol.map
diff --git a/src/lib/libc_bsd/quad/Makefile.incl b/src/lib/libc_bsd/quad/Makefile.incl
new file mode 100644
index 0000000..7f92aa3
--- /dev/null
+++ b/src/lib/libc_bsd/quad/Makefile.incl
@@ -0,0 +1,23 @@
+# from @(#)Makefile.inc 8.1 (Berkeley) 6/4/93
+Makefile.incl 245644 2013-01-19 02:33:57Z andrew $
+
+# Quad support, if needed
+.PATH: ${.CURDIR}/${LIBC_ARCH}/quad ${.CURDIR}/quad
+
+.if ${LIBC_ARCH} == "i386"
+
+SRCS+= cmpdi2.c divdi3.c moddi3.c qdivrem.c ucmpdi2.c udivdi3.c umoddi3.c
+
+.elif ${LIBC_ARCH} == "arm" && ${MK_ARM_EABI} != "no"
+SRCS+=adddi3.c anddi3.c floatunsdidf.c iordi3.c lshldi3.c notdi2.c qdivrem.c subdi3.c xordi3.c
+.else
+
+SRCS+= adddi3.c anddi3.c ashldi3.c ashrdi3.c cmpdi2.c divdi3.c fixdfdi.c \
+ fixsfdi.c fixunsdfdi.c fixunssfdi.c floatdidf.c floatdisf.c \
+ floatunsdidf.c iordi3.c lshldi3.c lshrdi3.c moddi3.c muldi3.c \
+ negdi2.c notdi2.c qdivrem.c subdi3.c ucmpdi2.c udivdi3.c umoddi3.c \
+ xordi3.c
+
+.endif
+
+SYM_MAPS+=${.CURDIR}/quad/Symbol.map
diff --git a/src/lib/libc_bsd/sys/Makefile.inc b/src/lib/libc_bsd/sys/Makefile.inc
deleted file mode 100644
index 6628e85..0000000
--- a/src/lib/libc_bsd/sys/Makefile.inc
+++ /dev/null
@@ -1,464 +0,0 @@
-# @(#)Makefile.inc 8.3 (Berkeley) 10/24/94
-Makefile.incl 281981 2015-04-25 08:14:08Z kib $
-
-# sys sources
-.PATH: ${.CURDIR}/${LIBC_ARCH}/sys ${.CURDIR}/sys
-
-# Include the generated makefile containing the *complete* list
-# of syscall names in MIASM.
-.include "${.CURDIR}/../../sys/sys/syscall.mk"
-
-# Include machine dependent definitions.
-#
-# MDASM names override the default syscall names in MIASM.
-# NOASM will prevent the default syscall code from being generated.
-#
-Makefile.incl"
-
-SRCS+= clock_gettime.c gettimeofday.c __vdso_gettimeofday.c
-NOASM+= clock_gettime.o gettimeofday.o
-PSEUDO+= _clock_gettime.o _gettimeofday.o
-
-# Sources common to both syscall interfaces:
-SRCS+= \
- stack_protector.c \
- stack_protector_compat.c \
- __error.c \
- interposing_table.c
-
-.if !defined(WITHOUT_SYSCALL_COMPAT)
-SYSCALL_COMPAT_SRCS= \
- ftruncate.c \
- lseek.c \
- mmap.c \
- pread.c \
- pwrite.c \
- truncate.c
-SRCS+= ${SYSCALL_COMPAT_SRCS}
-NOASM+= ${SYSCALL_COMPAT_SRCS:S/.c/.o/}
-.endif
-
-INTERPOSED = \
- accept \
- accept4 \
- aio_suspend \
- close \
- connect \
- fcntl \
- fsync \
- fork \
- kevent \
- msync \
- nanosleep \
- open \
- openat \
- poll \
- ppoll \
- pselect \
- read \
- readv \
- recvfrom \
- recvmsg \
- select \
- sendmsg \
- sendto \
- setcontext \
- sigprocmask \
- sigsuspend \
- sigtimedwait \
- sigwait \
- sigwaitinfo \
- swapcontext \
- wait4 \
- wait6 \
- write \
- writev
-
-.if ${MACHINE_CPUARCH} == "sparc64"
-SRCS+= sigaction.c
-NOASM+= sigaction.o
-.else
-INTERPOSED+= sigaction
-.endif
-
-SRCS+= ${INTERPOSED:S/$/.c/}
-NOASM+= ${INTERPOSED:S/$/.o/}
-PSEUDO+= ${INTERPOSED:C/^.*$/_&.o/}
-
-# Add machine dependent asm sources:
-SRCS+=${MDASM}
-
-# Look though the complete list of syscalls (MIASM) for names that are
-# not defined with machine dependent implementations (MDASM) and are
-# not declared for no generation of default code (NOASM). Add each
-# syscall that satisfies these conditions to the ASM list.
-.for _asm in ${MIASM}
-.if (${MDASM:R:M${_asm:R}} == "")
-.if (${NOASM:R:M${_asm:R}} == "")
-ASM+=$(_asm)
-.endif
-.endif
-.endfor
-
-OBJS+= ${ASM} ${PSEUDO}
-
-SASM= ${ASM:S/.o/.S/}
-
-SPSEUDO= ${PSEUDO:S/.o/.S/}
-
-SRCS+= ${SASM} ${SPSEUDO}
-
-SYM_MAPS+= ${.CURDIR}/sys/Symbol.map
-
-# Generated files
-CLEANFILES+= ${SASM} ${SPSEUDO}
-
-.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
- ${MACHINE_CPUARCH} == "powerpc"
-NOTE_GNU_STACK='\t.section .note.GNU-stack,"",%%progbits\n'
-.else
-NOTE_GNU_STACK=''
-.endif
-
-${SASM}:
- printf '#include "compat.h"\n' > ${.TARGET}
- printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' >> ${.TARGET}
- printf ${NOTE_GNU_STACK} >>${.TARGET}
-
-${SPSEUDO}:
- printf '#include "compat.h"\n' > ${.TARGET}
- printf '#include "SYS.h"\nPSEUDO(${.PREFIX:S/_//})\n' \
- >> ${.TARGET}
- printf ${NOTE_GNU_STACK} >>${.TARGET}
-
-MAN+= abort2.2 \
- accept.2 \
- access.2 \
- acct.2 \
- adjtime.2 \
- aio_cancel.2 \
- aio_error.2 \
- aio_fsync.2 \
- aio_mlock.2 \
- aio_read.2 \
- aio_return.2 \
- aio_suspend.2 \
- aio_waitcomplete.2 \
- aio_write.2 \
- bind.2 \
- bindat.2 \
- brk.2 \
- cap_enter.2 \
- cap_fcntls_limit.2 \
- cap_ioctls_limit.2 \
- cap_rights_limit.2 \
- chdir.2 \
- chflags.2 \
- chmod.2 \
- chown.2 \
- chroot.2 \
- clock_gettime.2 \
- close.2 \
- closefrom.2 \
- connect.2 \
- connectat.2 \
- cpuset.2 \
- cpuset_getaffinity.2 \
- dup.2 \
- execve.2 \
- _exit.2 \
- extattr_get_file.2 \
- fcntl.2 \
- ffclock.2 \
- fhopen.2 \
- flock.2 \
- fork.2 \
- fsync.2 \
- getdirentries.2 \
- getdtablesize.2 \
- getfh.2 \
- getfsstat.2 \
- getgid.2 \
- getgroups.2 \
- getitimer.2 \
- getlogin.2 \
- getloginclass.2 \
- getpeername.2 \
- getpgrp.2 \
- getpid.2 \
- getpriority.2 \
- getrlimit.2 \
- getrusage.2 \
- getsid.2 \
- getsockname.2 \
- getsockopt.2 \
- gettimeofday.2 \
- getuid.2 \
- intro.2 \
- ioctl.2 \
- issetugid.2 \
- jail.2 \
- kenv.2 \
- kill.2 \
- kldfind.2 \
- kldfirstmod.2 \
- kldload.2 \
- kldnext.2 \
- kldstat.2 \
- kldsym.2 \
- kldunload.2 \
- kqueue.2 \
- ktrace.2 \
- link.2 \
- lio_listio.2 \
- listen.2 \
- lseek.2 \
- madvise.2 \
- mincore.2 \
- minherit.2 \
- mkdir.2 \
- mkfifo.2 \
- mknod.2 \
- mlock.2 \
- mlockall.2 \
- mmap.2 \
- modfind.2 \
- modnext.2 \
- modstat.2 \
- mount.2 \
- mprotect.2 \
- mq_close.2 \
- mq_getattr.2 \
- mq_notify.2 \
- mq_open.2 \
- mq_receive.2 \
- mq_send.2 \
- mq_setattr.2 \
- msgctl.2 \
- msgget.2 \
- msgrcv.2 \
- msgsnd.2 \
- msync.2 \
- munmap.2 \
- nanosleep.2 \
- nfssvc.2 \
- ntp_adjtime.2 \
- open.2 \
- pathconf.2 \
- pdfork.2 \
- pipe.2 \
- poll.2 \
- posix_fadvise.2 \
- posix_fallocate.2 \
- posix_openpt.2 \
- procctl.2 \
- profil.2 \
- pselect.2 \
- ptrace.2 \
- quotactl.2 \
- read.2 \
- readlink.2 \
- reboot.2 \
- recv.2 \
- rename.2 \
- revoke.2 \
- rfork.2 \
- rmdir.2 \
- rtprio.2
-.if !defined(NO_P1003_1B)
-MAN+= sched_get_priority_max.2 \
- sched_setparam.2 \
- sched_setscheduler.2 \
- sched_yield.2
-.endif
-MAN+= sctp_generic_recvmsg.2 \
- sctp_generic_sendmsg.2 \
- sctp_peeloff.2 \
- select.2 \
- semctl.2 \
- semget.2 \
- semop.2 \
- send.2 \
- setfib.2 \
- sendfile.2 \
- setgroups.2 \
- setpgid.2 \
- setregid.2 \
- setresuid.2 \
- setreuid.2 \
- setsid.2 \
- setuid.2 \
- shmat.2 \
- shmctl.2 \
- shmget.2 \
- shm_open.2 \
- shutdown.2 \
- sigaction.2 \
- sigaltstack.2 \
- sigpending.2 \
- sigprocmask.2 \
- sigqueue.2 \
- sigreturn.2 \
- sigstack.2 \
- sigsuspend.2 \
- sigwait.2 \
- sigwaitinfo.2 \
- socket.2 \
- socketpair.2 \
- stat.2 \
- statfs.2 \
- swapon.2 \
- symlink.2 \
- sync.2 \
- sysarch.2 \
- syscall.2 \
- timer_create.2 \
- timer_delete.2 \
- timer_settime.2 \
- truncate.2 \
- umask.2 \
- undelete.2 \
- unlink.2 \
- utimes.2 \
- utrace.2 \
- uuidgen.2 \
- vfork.2 \
- wait.2 \
- write.2
-
-MLINKS+=accept.2 accept4.2
-MLINKS+=access.2 eaccess.2 \
- access.2 faccessat.2
-MLINKS+=brk.2 sbrk.2
-MLINKS+=cap_enter.2 cap_getmode.2
-MLINKS+=cap_fcntls_limit.2 cap_fcntls_get.2
-MLINKS+=cap_ioctls_limit.2 cap_ioctls_get.2
-MLINKS+=cap_rights_limit.2 cap_rights_get.2
-MLINKS+=chdir.2 fchdir.2
-MLINKS+=chflags.2 chflagsat.2 \
- chflags.2 fchflags.2 \
- chflags.2 lchflags.2
-MLINKS+=chmod.2 fchmod.2 \
- chmod.2 fchmodat.2 \
- chmod.2 lchmod.2
-MLINKS+=chown.2 fchown.2 \
- chown.2 fchownat.2 \
- chown.2 lchown.2
-MLINKS+=clock_gettime.2 clock_getres.2 \
- clock_gettime.2 clock_settime.2
-MLINKS+=cpuset.2 cpuset_getid.2 \
- cpuset.2 cpuset_setid.2
-MLINKS+=cpuset_getaffinity.2 cpuset_setaffinity.2
-MLINKS+=dup.2 dup2.2
-MLINKS+=execve.2 fexecve.2
-MLINKS+=extattr_get_file.2 extattr.2 \
- extattr_get_file.2 extattr_delete_fd.2 \
- extattr_get_file.2 extattr_delete_file.2 \
- extattr_get_file.2 extattr_delete_link.2 \
- extattr_get_file.2 extattr_get_fd.2 \
- extattr_get_file.2 extattr_get_link.2 \
- extattr_get_file.2 extattr_list_fd.2 \
- extattr_get_file.2 extattr_list_file.2 \
- extattr_get_file.2 extattr_list_link.2 \
- extattr_get_file.2 extattr_set_fd.2 \
- extattr_get_file.2 extattr_set_file.2 \
- extattr_get_file.2 extattr_set_link.2
-MLINKS+=ffclock.2 ffclock_getcounter.2 \
- ffclock.2 ffclock_getestimate.2 \
- ffclock.2 ffclock_setestimate.2
-MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatfs.2
-MLINKS+=getdirentries.2 getdents.2
-MLINKS+=getfh.2 lgetfh.2
-MLINKS+=getgid.2 getegid.2
-MLINKS+=getitimer.2 setitimer.2
-MLINKS+=getlogin.2 getlogin_r.3
-MLINKS+=getlogin.2 setlogin.2
-MLINKS+=getloginclass.2 setloginclass.2
-MLINKS+=getpgrp.2 getpgid.2
-MLINKS+=getpid.2 getppid.2
-MLINKS+=getpriority.2 setpriority.2
-MLINKS+=getrlimit.2 setrlimit.2
-MLINKS+=getsockopt.2 setsockopt.2
-MLINKS+=gettimeofday.2 settimeofday.2
-MLINKS+=getuid.2 geteuid.2
-MLINKS+=intro.2 errno.2
-MLINKS+=jail.2 jail_attach.2 \
- jail.2 jail_get.2 \
- jail.2 jail_remove.2 \
- jail.2 jail_set.2
-MLINKS+=kldunload.2 kldunloadf.2
-MLINKS+=kqueue.2 kevent.2 \
- kqueue.2 EV_SET.3
-MLINKS+=link.2 linkat.2
-MLINKS+=madvise.2 posix_madvise.2
-MLINKS+=mkdir.2 mkdirat.2
-MLINKS+=mkfifo.2 mkfifoat.2
-MLINKS+=mknod.2 mknodat.2
-MLINKS+=mlock.2 munlock.2
-MLINKS+=mlockall.2 munlockall.2
-MLINKS+=modnext.2 modfnext.2
-MLINKS+=mount.2 nmount.2 \
- mount.2 unmount.2
-MLINKS+=mq_receive.2 mq_timedreceive.2
-MLINKS+=mq_send.2 mq_timedsend.2
-MLINKS+=ntp_adjtime.2 ntp_gettime.2
-MLINKS+=open.2 openat.2
-MLINKS+=pathconf.2 fpathconf.2
-MLINKS+=pathconf.2 lpathconf.2
-MLINKS+=pdfork.2 pdgetpid.2\
- pdfork.2 pdkill.2 \
- pdfork.2 pdwait4.2
-MLINKS+=pipe.2 pipe2.2
-MLINKS+=poll.2 ppoll.2
-MLINKS+=read.2 pread.2 \
- read.2 preadv.2 \
- read.2 readv.2
-MLINKS+=readlink.2 readlinkat.2
-MLINKS+=recv.2 recvfrom.2 \
- recv.2 recvmsg.2
-MLINKS+=rename.2 renameat.2
-MLINKS+=rtprio.2 rtprio_thread.2
-.if !defined(NO_P1003_1B)
-MLINKS+=sched_get_priority_max.2 sched_get_priority_min.2 \
- sched_get_priority_max.2 sched_rr_get_interval.2
-MLINKS+=sched_setparam.2 sched_getparam.2
-MLINKS+=sched_setscheduler.2 sched_getscheduler.2
-.endif
-MLINKS+=select.2 FD_CLR.3 \
- select.2 FD_ISSET.3 \
- select.2 FD_SET.3 \
- select.2 FD_ZERO.3
-MLINKS+=send.2 sendmsg.2 \
- send.2 sendto.2
-MLINKS+=setpgid.2 setpgrp.2
-MLINKS+=setresuid.2 getresgid.2 \
- setresuid.2 getresuid.2 \
- setresuid.2 setresgid.2
-MLINKS+=setuid.2 setegid.2 \
- setuid.2 seteuid.2 \
- setuid.2 setgid.2
-MLINKS+=shmat.2 shmdt.2
-MLINKS+=shm_open.2 shm_unlink.2
-MLINKS+=sigwaitinfo.2 sigtimedwait.2
-MLINKS+=stat.2 fstat.2 \
- stat.2 fstatat.2 \
- stat.2 lstat.2
-MLINKS+=statfs.2 fstatfs.2
-MLINKS+=swapon.2 swapoff.2
-MLINKS+=symlink.2 symlinkat.2
-MLINKS+=syscall.2 __syscall.2
-MLINKS+=timer_settime.2 timer_getoverrun.2 \
- timer_settime.2 timer_gettime.2
-MLINKS+=truncate.2 ftruncate.2
-MLINKS+=unlink.2 unlinkat.2
-MLINKS+=utimes.2 futimes.2 \
- utimes.2 futimesat.2 \
- utimes.2 lutimes.2
-MLINKS+=wait.2 wait3.2 \
- wait.2 wait4.2 \
- wait.2 waitpid.2 \
- wait.2 waitid.2 \
- wait.2 wait6.2
-MLINKS+=write.2 pwrite.2 \
- write.2 pwritev.2 \
- write.2 writev.2
diff --git a/src/lib/libc_bsd/sys/Makefile.incl b/src/lib/libc_bsd/sys/Makefile.incl
new file mode 100644
index 0000000..fa209d4
--- /dev/null
+++ b/src/lib/libc_bsd/sys/Makefile.incl
@@ -0,0 +1,460 @@
+# @(#)Makefile.inc 8.3 (Berkeley) 10/24/94
+Makefile.incl 281981 2015-04-25 08:14:08Z kib $
+
+# sys sources
+.PATH: ${.CURDIR}/${LIBC_ARCH}/sys ${.CURDIR}/sys
+
+# Include the generated makefile containing the *complete* list
+# of syscall names in MIASM.
+.include "${.CURDIR}/../../sys/sys/syscall.mk"
+
+# Include machine dependent definitions.
+#
+# MDASM names override the default syscall names in MIASM.
+# NOASM will prevent the default syscall code from being generated.
+#
+Makefile.incl"
+
+SRCS+= clock_gettime.c gettimeofday.c __vdso_gettimeofday.c
+NOASM+= clock_gettime.o gettimeofday.o
+PSEUDO+= _clock_gettime.o _gettimeofday.o
+
+# Sources common to both syscall interfaces:
+SRCS+= \
+ stack_protector.c \
+ stack_protector_compat.c \
+ __error.c \
+ interposing_table.c
+
+.if !defined(WITHOUT_SYSCALL_COMPAT)
+SYSCALL_COMPAT_SRCS= \
+ ftruncate.c \
+ lseek.c \
+ mmap.c \
+ pread.c \
+ pwrite.c \
+ truncate.c
+SRCS+= ${SYSCALL_COMPAT_SRCS}
+NOASM+= ${SYSCALL_COMPAT_SRCS:S/.c/.o/}
+.endif
+
+INTERPOSED = \
+ accept \
+ accept4 \
+ aio_suspend \
+ close \
+ connect \
+ fcntl \
+ fsync \
+ fork \
+ kevent \
+ msync \
+ nanosleep \
+ open \
+ openat \
+ poll \
+ ppoll \
+ pselect \
+ read \
+ readv \
+ recvfrom \
+ recvmsg \
+ select \
+ sendmsg \
+ sendto \
+ setcontext \
+ sigprocmask \
+ sigsuspend \
+ sigtimedwait \
+ sigwait \
+ sigwaitinfo \
+ swapcontext \
+ wait4 \
+ wait6 \
+ write \
+ writev
+
+.if ${MACHINE_CPUARCH} == "sparc64"
+SRCS+= sigaction.c
+NOASM+= sigaction.o
+.else
+INTERPOSED+= sigaction
+.endif
+
+SRCS+= ${INTERPOSED:S/$/.c/}
+NOASM+= ${INTERPOSED:S/$/.o/}
+PSEUDO+= ${INTERPOSED:C/^.*$/_&.o/}
+
+# Add machine dependent asm sources:
+SRCS+=${MDASM}
+
+.for _asm in ${MIASM}
+.if (${MDASM:R:M${_asm:R}} == "")
+.if (${NOASM:R:M${_asm:R}} == "")
+ASM+=$(_asm)
+.endif
+.endif
+.endfor
+
+OBJS+= ${ASM} ${PSEUDO}
+
+SASM= ${ASM:S/.o/.S/}
+
+SPSEUDO= ${PSEUDO:S/.o/.S/}
+
+SRCS+= ${SASM} ${SPSEUDO}
+
+SYM_MAPS+= ${.CURDIR}/sys/Symbol.map
+
+# Generated files
+CLEANFILES+= ${SASM} ${SPSEUDO}
+
+.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" || \
+ ${MACHINE_CPUARCH} == "powerpc"
+NOTE_GNU_STACK='\t.section .note.GNU-stack,"",%%progbits\n'
+.else
+NOTE_GNU_STACK=''
+.endif
+
+${SASM}:
+ printf '#include "compat.h"\n' > ${.TARGET}
+ printf '#include "SYS.h"\nRSYSCALL(${.PREFIX})\n' >> ${.TARGET}
+ printf ${NOTE_GNU_STACK} >>${.TARGET}
+
+${SPSEUDO}:
+ printf '#include "compat.h"\n' > ${.TARGET}
+ printf '#include "SYS.h"\nPSEUDO(${.PREFIX:S/_//})\n' \
+ >> ${.TARGET}
+ printf ${NOTE_GNU_STACK} >>${.TARGET}
+
+MAN+= abort2.2 \
+ accept.2 \
+ access.2 \
+ acct.2 \
+ adjtime.2 \
+ aio_cancel.2 \
+ aio_error.2 \
+ aio_fsync.2 \
+ aio_mlock.2 \
+ aio_read.2 \
+ aio_return.2 \
+ aio_suspend.2 \
+ aio_waitcomplete.2 \
+ aio_write.2 \
+ bind.2 \
+ bindat.2 \
+ brk.2 \
+ cap_enter.2 \
+ cap_fcntls_limit.2 \
+ cap_ioctls_limit.2 \
+ cap_rights_limit.2 \
+ chdir.2 \
+ chflags.2 \
+ chmod.2 \
+ chown.2 \
+ chroot.2 \
+ clock_gettime.2 \
+ close.2 \
+ closefrom.2 \
+ connect.2 \
+ connectat.2 \
+ cpuset.2 \
+ cpuset_getaffinity.2 \
+ dup.2 \
+ execve.2 \
+ _exit.2 \
+ extattr_get_file.2 \
+ fcntl.2 \
+ ffclock.2 \
+ fhopen.2 \
+ flock.2 \
+ fork.2 \
+ fsync.2 \
+ getdirentries.2 \
+ getdtablesize.2 \
+ getfh.2 \
+ getfsstat.2 \
+ getgid.2 \
+ getgroups.2 \
+ getitimer.2 \
+ getlogin.2 \
+ getloginclass.2 \
+ getpeername.2 \
+ getpgrp.2 \
+ getpid.2 \
+ getpriority.2 \
+ getrlimit.2 \
+ getrusage.2 \
+ getsid.2 \
+ getsockname.2 \
+ getsockopt.2 \
+ gettimeofday.2 \
+ getuid.2 \
+ intro.2 \
+ ioctl.2 \
+ issetugid.2 \
+ jail.2 \
+ kenv.2 \
+ kill.2 \
+ kldfind.2 \
+ kldfirstmod.2 \
+ kldload.2 \
+ kldnext.2 \
+ kldstat.2 \
+ kldsym.2 \
+ kldunload.2 \
+ kqueue.2 \
+ ktrace.2 \
+ link.2 \
+ lio_listio.2 \
+ listen.2 \
+ lseek.2 \
+ madvise.2 \
+ mincore.2 \
+ minherit.2 \
+ mkdir.2 \
+ mkfifo.2 \
+ mknod.2 \
+ mlock.2 \
+ mlockall.2 \
+ mmap.2 \
+ modfind.2 \
+ modnext.2 \
+ modstat.2 \
+ mount.2 \
+ mprotect.2 \
+ mq_close.2 \
+ mq_getattr.2 \
+ mq_notify.2 \
+ mq_open.2 \
+ mq_receive.2 \
+ mq_send.2 \
+ mq_setattr.2 \
+ msgctl.2 \
+ msgget.2 \
+ msgrcv.2 \
+ msgsnd.2 \
+ msync.2 \
+ munmap.2 \
+ nanosleep.2 \
+ nfssvc.2 \
+ ntp_adjtime.2 \
+ open.2 \
+ pathconf.2 \
+ pdfork.2 \
+ pipe.2 \
+ poll.2 \
+ posix_fadvise.2 \
+ posix_fallocate.2 \
+ posix_openpt.2 \
+ procctl.2 \
+ profil.2 \
+ pselect.2 \
+ ptrace.2 \
+ quotactl.2 \
+ read.2 \
+ readlink.2 \
+ reboot.2 \
+ recv.2 \
+ rename.2 \
+ revoke.2 \
+ rfork.2 \
+ rmdir.2 \
+ rtprio.2
+.if !defined(NO_P1003_1B)
+MAN+= sched_get_priority_max.2 \
+ sched_setparam.2 \
+ sched_setscheduler.2 \
+ sched_yield.2
+.endif
+MAN+= sctp_generic_recvmsg.2 \
+ sctp_generic_sendmsg.2 \
+ sctp_peeloff.2 \
+ select.2 \
+ semctl.2 \
+ semget.2 \
+ semop.2 \
+ send.2 \
+ setfib.2 \
+ sendfile.2 \
+ setgroups.2 \
+ setpgid.2 \
+ setregid.2 \
+ setresuid.2 \
+ setreuid.2 \
+ setsid.2 \
+ setuid.2 \
+ shmat.2 \
+ shmctl.2 \
+ shmget.2 \
+ shm_open.2 \
+ shutdown.2 \
+ sigaction.2 \
+ sigaltstack.2 \
+ sigpending.2 \
+ sigprocmask.2 \
+ sigqueue.2 \
+ sigreturn.2 \
+ sigstack.2 \
+ sigsuspend.2 \
+ sigwait.2 \
+ sigwaitinfo.2 \
+ socket.2 \
+ socketpair.2 \
+ stat.2 \
+ statfs.2 \
+ swapon.2 \
+ symlink.2 \
+ sync.2 \
+ sysarch.2 \
+ syscall.2 \
+ timer_create.2 \
+ timer_delete.2 \
+ timer_settime.2 \
+ truncate.2 \
+ umask.2 \
+ undelete.2 \
+ unlink.2 \
+ utimes.2 \
+ utrace.2 \
+ uuidgen.2 \
+ vfork.2 \
+ wait.2 \
+ write.2
+
+MLINKS+=accept.2 accept4.2
+MLINKS+=access.2 eaccess.2 \
+ access.2 faccessat.2
+MLINKS+=brk.2 sbrk.2
+MLINKS+=cap_enter.2 cap_getmode.2
+MLINKS+=cap_fcntls_limit.2 cap_fcntls_get.2
+MLINKS+=cap_ioctls_limit.2 cap_ioctls_get.2
+MLINKS+=cap_rights_limit.2 cap_rights_get.2
+MLINKS+=chdir.2 fchdir.2
+MLINKS+=chflags.2 chflagsat.2 \
+ chflags.2 fchflags.2 \
+ chflags.2 lchflags.2
+MLINKS+=chmod.2 fchmod.2 \
+ chmod.2 fchmodat.2 \
+ chmod.2 lchmod.2
+MLINKS+=chown.2 fchown.2 \
+ chown.2 fchownat.2 \
+ chown.2 lchown.2
+MLINKS+=clock_gettime.2 clock_getres.2 \
+ clock_gettime.2 clock_settime.2
+MLINKS+=cpuset.2 cpuset_getid.2 \
+ cpuset.2 cpuset_setid.2
+MLINKS+=cpuset_getaffinity.2 cpuset_setaffinity.2
+MLINKS+=dup.2 dup2.2
+MLINKS+=execve.2 fexecve.2
+MLINKS+=extattr_get_file.2 extattr.2 \
+ extattr_get_file.2 extattr_delete_fd.2 \
+ extattr_get_file.2 extattr_delete_file.2 \
+ extattr_get_file.2 extattr_delete_link.2 \
+ extattr_get_file.2 extattr_get_fd.2 \
+ extattr_get_file.2 extattr_get_link.2 \
+ extattr_get_file.2 extattr_list_fd.2 \
+ extattr_get_file.2 extattr_list_file.2 \
+ extattr_get_file.2 extattr_list_link.2 \
+ extattr_get_file.2 extattr_set_fd.2 \
+ extattr_get_file.2 extattr_set_file.2 \
+ extattr_get_file.2 extattr_set_link.2
+MLINKS+=ffclock.2 ffclock_getcounter.2 \
+ ffclock.2 ffclock_getestimate.2 \
+ ffclock.2 ffclock_setestimate.2
+MLINKS+=fhopen.2 fhstat.2 fhopen.2 fhstatfs.2
+MLINKS+=getdirentries.2 getdents.2
+MLINKS+=getfh.2 lgetfh.2
+MLINKS+=getgid.2 getegid.2
+MLINKS+=getitimer.2 setitimer.2
+MLINKS+=getlogin.2 getlogin_r.3
+MLINKS+=getlogin.2 setlogin.2
+MLINKS+=getloginclass.2 setloginclass.2
+MLINKS+=getpgrp.2 getpgid.2
+MLINKS+=getpid.2 getppid.2
+MLINKS+=getpriority.2 setpriority.2
+MLINKS+=getrlimit.2 setrlimit.2
+MLINKS+=getsockopt.2 setsockopt.2
+MLINKS+=gettimeofday.2 settimeofday.2
+MLINKS+=getuid.2 geteuid.2
+MLINKS+=intro.2 errno.2
+MLINKS+=jail.2 jail_attach.2 \
+ jail.2 jail_get.2 \
+ jail.2 jail_remove.2 \
+ jail.2 jail_set.2
+MLINKS+=kldunload.2 kldunloadf.2
+MLINKS+=kqueue.2 kevent.2 \
+ kqueue.2 EV_SET.3
+MLINKS+=link.2 linkat.2
+MLINKS+=madvise.2 posix_madvise.2
+MLINKS+=mkdir.2 mkdirat.2
+MLINKS+=mkfifo.2 mkfifoat.2
+MLINKS+=mknod.2 mknodat.2
+MLINKS+=mlock.2 munlock.2
+MLINKS+=mlockall.2 munlockall.2
+MLINKS+=modnext.2 modfnext.2
+MLINKS+=mount.2 nmount.2 \
+ mount.2 unmount.2
+MLINKS+=mq_receive.2 mq_timedreceive.2
+MLINKS+=mq_send.2 mq_timedsend.2
+MLINKS+=ntp_adjtime.2 ntp_gettime.2
+MLINKS+=open.2 openat.2
+MLINKS+=pathconf.2 fpathconf.2
+MLINKS+=pathconf.2 lpathconf.2
+MLINKS+=pdfork.2 pdgetpid.2\
+ pdfork.2 pdkill.2 \
+ pdfork.2 pdwait4.2
+MLINKS+=pipe.2 pipe2.2
+MLINKS+=poll.2 ppoll.2
+MLINKS+=read.2 pread.2 \
+ read.2 preadv.2 \
+ read.2 readv.2
+MLINKS+=readlink.2 readlinkat.2
+MLINKS+=recv.2 recvfrom.2 \
+ recv.2 recvmsg.2
+MLINKS+=rename.2 renameat.2
+MLINKS+=rtprio.2 rtprio_thread.2
+.if !defined(NO_P1003_1B)
+MLINKS+=sched_get_priority_max.2 sched_get_priority_min.2 \
+ sched_get_priority_max.2 sched_rr_get_interval.2
+MLINKS+=sched_setparam.2 sched_getparam.2
+MLINKS+=sched_setscheduler.2 sched_getscheduler.2
+.endif
+MLINKS+=select.2 FD_CLR.3 \
+ select.2 FD_ISSET.3 \
+ select.2 FD_SET.3 \
+ select.2 FD_ZERO.3
+MLINKS+=send.2 sendmsg.2 \
+ send.2 sendto.2
+MLINKS+=setpgid.2 setpgrp.2
+MLINKS+=setresuid.2 getresgid.2 \
+ setresuid.2 getresuid.2 \
+ setresuid.2 setresgid.2
+MLINKS+=setuid.2 setegid.2 \
+ setuid.2 seteuid.2 \
+ setuid.2 setgid.2
+MLINKS+=shmat.2 shmdt.2
+MLINKS+=shm_open.2 shm_unlink.2
+MLINKS+=sigwaitinfo.2 sigtimedwait.2
+MLINKS+=stat.2 fstat.2 \
+ stat.2 fstatat.2 \
+ stat.2 lstat.2
+MLINKS+=statfs.2 fstatfs.2
+MLINKS+=swapon.2 swapoff.2
+MLINKS+=symlink.2 symlinkat.2
+MLINKS+=syscall.2 __syscall.2
+MLINKS+=timer_settime.2 timer_getoverrun.2 \
+ timer_settime.2 timer_gettime.2
+MLINKS+=truncate.2 ftruncate.2
+MLINKS+=unlink.2 unlinkat.2
+MLINKS+=utimes.2 futimes.2 \
+ utimes.2 futimesat.2 \
+ utimes.2 lutimes.2
+MLINKS+=wait.2 wait3.2 \
+ wait.2 wait4.2 \
+ wait.2 waitpid.2 \
+ wait.2 waitid.2 \
+ wait.2 wait6.2
+MLINKS+=write.2 pwrite.2 \
+ write.2 pwritev.2 \
+ write.2 writev.2
\ No newline at end of file
diff --git a/src/sys/.cproject b/src/sys/.cproject
new file mode 100644
index 0000000..f1b7861
--- /dev/null
+++ b/src/sys/.cproject
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ make
+
+ all
+ true
+ false
+ true
+
+
+
+
diff --git a/src/sys/.gitignore b/src/sys/.gitignore
new file mode 100644
index 0000000..e63ddd8
--- /dev/null
+++ b/src/sys/.gitignore
@@ -0,0 +1 @@
+/Default/
diff --git a/src/sys/.project b/src/sys/.project
new file mode 100644
index 0000000..e760f67
--- /dev/null
+++ b/src/sys/.project
@@ -0,0 +1,27 @@
+
+
+ UbixOS Kernel
+
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.genmakebuilder
+ clean,full,incremental,
+
+
+
+
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
+ full,incremental,
+
+
+
+
+
+ org.eclipse.cdt.core.cnature
+ org.eclipse.cdt.core.ccnature
+ org.eclipse.cdt.managedbuilder.core.managedBuildNature
+ org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
+
+
diff --git a/src/sys/.settings/language.settings.xml b/src/sys/.settings/language.settings.xml
new file mode 100644
index 0000000..4f90b13
--- /dev/null
+++ b/src/sys/.settings/language.settings.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/sys/.settings/org.eclipse.cdt.codan.core.prefs b/src/sys/.settings/org.eclipse.cdt.codan.core.prefs
new file mode 100644
index 0000000..812e407
--- /dev/null
+++ b/src/sys/.settings/org.eclipse.cdt.codan.core.prefs
@@ -0,0 +1,71 @@
+eclipse.preferences.version=1
+org.eclipse.cdt.codan.checkers.errnoreturn=Warning
+org.eclipse.cdt.codan.checkers.errnoreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return\\")",implicit\=>false}
+org.eclipse.cdt.codan.checkers.errreturnvalue=Error
+org.eclipse.cdt.codan.checkers.errreturnvalue.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused return value\\")"}
+org.eclipse.cdt.codan.checkers.nocommentinside=-Error
+org.eclipse.cdt.codan.checkers.nocommentinside.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Nesting comments\\")"}
+org.eclipse.cdt.codan.checkers.nolinecomment=-Error
+org.eclipse.cdt.codan.checkers.nolinecomment.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Line comments\\")"}
+org.eclipse.cdt.codan.checkers.noreturn=Error
+org.eclipse.cdt.codan.checkers.noreturn.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No return value\\")",implicit\=>false}
+org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation=Error
+org.eclipse.cdt.codan.internal.checkers.AbstractClassCreation.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Abstract class cannot be instantiated\\")"}
+org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem=Error
+org.eclipse.cdt.codan.internal.checkers.AmbiguousProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Ambiguous problem\\")"}
+org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.AssignmentInConditionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment in condition\\")"}
+org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem=Error
+org.eclipse.cdt.codan.internal.checkers.AssignmentToItselfProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Assignment to itself\\")"}
+org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.CaseBreakProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"No break at end of case\\")",no_break_comment\=>"no break",last_case_param\=>false,empty_case_param\=>false,enable_fallthrough_quickfix_param\=>false}
+org.eclipse.cdt.codan.internal.checkers.CatchByReference=Warning
+org.eclipse.cdt.codan.internal.checkers.CatchByReference.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Catching by reference is recommended\\")",unknown\=>false,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem=Error
+org.eclipse.cdt.codan.internal.checkers.CircularReferenceProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Circular inheritance\\")"}
+org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization=Warning
+org.eclipse.cdt.codan.internal.checkers.ClassMembersInitialization.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class members should be properly initialized\\")",skip\=>true}
+org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.FieldResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Field cannot be resolved\\")"}
+org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.FunctionResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Function cannot be resolved\\")"}
+org.eclipse.cdt.codan.internal.checkers.InvalidArguments=Error
+org.eclipse.cdt.codan.internal.checkers.InvalidArguments.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid arguments\\")"}
+org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem=Error
+org.eclipse.cdt.codan.internal.checkers.InvalidTemplateArgumentsProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid template argument\\")"}
+org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem=Error
+org.eclipse.cdt.codan.internal.checkers.LabelStatementNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Label statement not found\\")"}
+org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem=Error
+org.eclipse.cdt.codan.internal.checkers.MemberDeclarationNotFoundProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Member declaration not found\\")"}
+org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.MethodResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Method cannot be resolved\\")"}
+org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker=-Info
+org.eclipse.cdt.codan.internal.checkers.NamingConventionFunctionChecker.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Name convention for function\\")",pattern\=>"^[a-z]",macro\=>true,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.NonVirtualDestructorProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Class has a virtual method and non-virtual destructor\\")"}
+org.eclipse.cdt.codan.internal.checkers.OverloadProblem=Error
+org.eclipse.cdt.codan.internal.checkers.OverloadProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid overload\\")"}
+org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem=Error
+org.eclipse.cdt.codan.internal.checkers.RedeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redeclaration\\")"}
+org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.RedefinitionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Invalid redefinition\\")"}
+org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem=-Warning
+org.eclipse.cdt.codan.internal.checkers.ReturnStyleProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Return with parenthesis\\")"}
+org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem=-Warning
+org.eclipse.cdt.codan.internal.checkers.ScanfFormatStringSecurityProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Format String Vulnerability\\")"}
+org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.StatementHasNoEffectProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Statement has no effect\\")",macro\=>true,exceptions\=>()}
+org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.SuggestedParenthesisProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suggested parenthesis around expression\\")",paramNot\=>false}
+org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.SuspiciousSemicolonProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Suspicious semicolon\\")",else\=>false,afterelse\=>false}
+org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.TypeResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Type cannot be resolved\\")"}
+org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedFunctionDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused function declaration\\")",macro\=>true}
+org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedStaticFunctionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused static function\\")",macro\=>true}
+org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem=Warning
+org.eclipse.cdt.codan.internal.checkers.UnusedVariableDeclarationProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Unused variable declaration in file scope\\")",macro\=>true,exceptions\=>("@(\#)","$Id")}
+org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem=Error
+org.eclipse.cdt.codan.internal.checkers.VariableResolutionProblem.params={launchModes\=>{RUN_ON_FULL_BUILD\=>true,RUN_ON_INC_BUILD\=>true,RUN_ON_FILE_OPEN\=>false,RUN_ON_FILE_SAVE\=>false,RUN_AS_YOU_TYPE\=>true,RUN_ON_DEMAND\=>true},suppression_comment\=>"@suppress(\\"Symbol is not resolved\\")"}
diff --git a/src/sys/Makefile b/src/sys/Makefile
index b2089b3..91a0e56 100644
--- a/src/sys/Makefile
+++ b/src/sys/Makefile
@@ -1,6 +1,8 @@
# $Id: Makefile 134 2016-01-15 14:50:24Z reddawg $
# Kernel Makefile (C) 2002 The UbixOS Project
+include ../Makefile.incl
+
#all: kernel-code vmm-code init-code kmods-code kernel-img
all: init-code sys-code arch-code kernel-code vmm-code mpi-code fs-code lib-code isa-code pci-code kernel-img
diff --git a/src/sys/Makefile.incl b/src/sys/Makefile.incl
index 9f10fa9..931b452 100644
--- a/src/sys/Makefile.incl
+++ b/src/sys/Makefile.incl
@@ -1,4 +1,14 @@
# $Id: Makefile.inc 113 2016-01-14 00:40:12Z reddawg $
+KERNEL_SRC=${CURDIR}
+KERNEL_OBJ=${OBJ_DIR}${KERNEL_SRC}
+KERNEL_CONF=${KERNEL_SRC}/${_ARCH}/conf
+KERNEL_NAME=kernel
+KERNEL_FLAGS=_ARCH=${_ARCH} CC="cc" CXX="c++" AS="as" AR="ar" LD="ld" NM=nm OBJDUMP= OBJCOPY="objcopy" RANLIB=ranlib
+KERNEL_INC=${KERNEL_SRC}/include
+
+
+KMAKE= ${MAKE} ${KERNEL_FLAGS} INCLUDE=${KERNEL_INC} KERNEL=${KERNEL_NAME}
+
INCLUDES = -I${INCLUDE}
CFLAGS = ${KFLAGS} -m32 -Wall -nostdlib -nostdinc -fno-builtin -fno-exceptions -ffreestanding -O
diff --git a/src/sys/init/main.c b/src/sys/init/main.c
index b53e799..b5dfbde 100644
--- a/src/sys/init/main.c
+++ b/src/sys/init/main.c
@@ -140,7 +140,7 @@
asm("nop");
- if (sysTask == NULL)
+ if (sysTask == 0x0)
kprintf("OS: Unable to allocate memory\n");
execThread(systemTask, (uInt32) sysTask + 0x2000, 0x0);
diff --git a/src/sys/init/make.exe.stackdump b/src/sys/init/make.exe.stackdump
new file mode 100644
index 0000000..f26babe
--- /dev/null
+++ b/src/sys/init/make.exe.stackdump
@@ -0,0 +1,24 @@
+MSYS-1.0.19 Build:2016-07-13 17:45
+Exception: STATUS_ACCESS_VIOLATION at eip=74945E61
+eax=00000000 ebx=7FFB001C ecx=0000042A edx=00002000 esi=0A031000 edi=0062BD4C
+ebp=0062A538 esp=0062A4F0 program=D:\Applications\MinGW\msys\1.0\bin\make.exe
+cs=0023 ds=002B es=002B fs=0053 gs=002B ss=002B
+Stack trace:
+Frame Function Args
+0062A538 74945E61 (000004E4, 00000000, 0A03042A, 00001000)
+0062D5B8 60816F5C (60EA027C, 0A03042A, 0A0103F2, 0055005C)
+0062D628 60817AF6 (60EA027C, 0A0103B8, 0000003A, 00000000)
+0062D688 6085E704 (00000001, 0A0103B8, 0000003A, 00000000)
+0062D6A8 60896256 (6089B020, 00000001, 0A0103B8, 0000003A)
+0062D6D8 60890F3D (6089B25C, 0A0103B8, 0000003A, 00000002)
+0062D6F8 60882F01 (6089B25C, 004276AA, 00000002, 00000004)
+0062D738 608914C5 (6089B25C, 0062EFD0, 004276AC, 00000001)
+0062F028 6088A9ED (6089B020, 6089B25C, 0042768C, 0062F090)
+0062F048 60888E7B (6089B25C, 0042768C, 0062F084, 61E01402)
+0062F078 61E08690 (0042768C, 60EA40DC, 00000027, 0062FD98)
+0062F098 00412E96 (00000001, 00000006, 00000000, 0A01F659)
+0062F0B8 00413206 (00000000, 004259CE, 0A01F659, 0A01F744)
+0062F128 0040DD76 (0A01F728, 000000C8, 0062F158, 00404E71)
+0062F158 0040E230 (0A01F728, 0A016760, 0A01FFF8, 00000006)
+0062F1D8 0040E5EA (0A016760, 00000001, 00000000, 6085DA66)
+End of stack trace (more stack frames may be present)
\ No newline at end of file
diff --git a/src/sys/sde/Makefile b/src/sys/sde/Makefile
index 399904a..1be27ce 100644
--- a/src/sys/sde/Makefile
+++ b/src/sys/sde/Makefile
@@ -2,7 +2,7 @@
# $Id: Makefile 89 2016-01-12 00:20:40Z reddawg $
# Include Global 'Source' Options
-Makefile.incl
+include ../../Makefile.incl
include ../Makefile.incl
# Linker
diff --git a/src/sys/sys/Makefile b/src/sys/sys/Makefile
index 4581027..9e446f0 100644
--- a/src/sys/sys/Makefile
+++ b/src/sys/sys/Makefile
@@ -2,7 +2,6 @@
# $Id: Makefile 140 2016-01-17 01:36:09Z reddawg $
# Include Global 'Source' Options
-include ../../Makefile.incl
include ../Makefile.incl
# Objects
diff --git a/src/tools/makeuser.c b/src/tools/makeuser.c
index 5f5086c..2214c3d 100644
--- a/src/tools/makeuser.c
+++ b/src/tools/makeuser.c
@@ -1,4 +1,5 @@
#include
+#include
struct passwd {
char username[32];
diff --git a/src/tools/user.c b/src/tools/user.c
index 4e89daf..3004172 100644
--- a/src/tools/user.c
+++ b/src/tools/user.c
@@ -1,4 +1,5 @@
#include
+#include
struct passwd {
char username[32];