Module: xenomai-forge Branch: next Commit: b41e996801024cd85b5dc4a084a4020c5168bf2a URL: http://git.xenomai.org/?p=xenomai-forge.git;a=commit;h=b41e996801024cd85b5dc4a084a4020c5168bf2a
Author: Philippe Gerum <r...@xenomai.org> Date: Tue Jun 25 17:13:52 2013 +0200 cobalt: introduce uapi headers Following the uapi introduction in recent kernels, this jumbo patch splits the former Xenomai POSIX headers into kernel and userland counterparts, privatizing the former into the kernel section when applicable. This change is aimed at centralizing the shared API types and definitions used in system calls, making it easier to track changes to the APIs that the kernel presents to user space, and solving inclusion dependency issues the right way. Headers defining the API bits shared between the Cobalt kernel and the support libraries in userland are available from include/cobalt/uapi, organized as follows: - uapi/*.h => Cobalt/POSIX interface bits - uapi/rtdm => RTDM bits - uapi/sys/*.h => Low-level Cobalt kernel bits As a consequence of this split, files below include/cobalt/kernel become kernel-only headers, and POSIX headers in include/cobalt are exclusively reserved for inclusion in user-space builds. As an added benefit, this change significantly reduces the number of headers to be installed for building Xenomai applications. --- configure | 5 +- configure.in | 3 + include/cobalt/Makefile.am | 31 +- include/cobalt/Makefile.in | 29 +- include/cobalt/asm-generic/Makefile.am | 3 +- include/cobalt/asm-generic/Makefile.in | 9 +- include/cobalt/asm-generic/sem_heap.h | 10 - include/cobalt/asm-generic/seqlock.h | 75 +++ include/cobalt/core.h | 4 +- include/cobalt/fcntl.h | 33 +- include/cobalt/kernel/Makefile.am | 67 +- include/cobalt/kernel/Makefile.in | 141 ++--- include/cobalt/kernel/assert.h | 1 - include/cobalt/kernel/bufd.h | 2 +- include/cobalt/kernel/clock.h | 4 - include/cobalt/kernel/heap.h | 26 +- include/cobalt/kernel/hostrt.h | 44 -- include/cobalt/kernel/intr.h | 13 +- include/cobalt/kernel/map.h | 2 +- include/cobalt/kernel/pipe.h | 14 +- include/cobalt/kernel/pod.h | 128 ++-- include/cobalt/kernel/registry.h | 22 +- include/cobalt/kernel/sched-idle.h | 4 - include/cobalt/kernel/sched-rt.h | 4 - include/cobalt/kernel/sched.h | 15 +- include/cobalt/kernel/seqlock.h | 57 -- include/cobalt/kernel/stat.h | 1 - include/cobalt/kernel/synch.h | 52 +-- include/cobalt/kernel/thread.h | 133 +---- include/cobalt/kernel/timer.h | 14 +- include/cobalt/kernel/trace.h | 73 +-- include/cobalt/kernel/types.h | 95 +--- include/cobalt/kernel/vdso.h | 46 +- include/cobalt/kernel/vfile.h | 1 - include/cobalt/mqueue.h | 56 +-- include/cobalt/pthread.h | 235 +------ include/cobalt/sched.h | 96 +--- include/cobalt/semaphore.h | 68 +-- include/cobalt/signal.h | 119 +--- include/cobalt/stdio.h | 29 +- include/cobalt/stdlib.h | 33 +- include/cobalt/sys/Makefile.am | 8 +- include/cobalt/sys/Makefile.in | 6 +- include/cobalt/sys/ioctl.h | 26 +- include/cobalt/sys/select.h | 32 +- include/cobalt/sys/socket.h | 32 +- include/cobalt/sys/time.h | 25 +- include/cobalt/syslog.h | 24 +- include/cobalt/time.h | 63 +-- include/cobalt/trace.h | 45 ++ include/cobalt/uapi/Makefile.am | 15 + include/cobalt/uapi/Makefile.in | 695 ++++++++++++++++++++ include/cobalt/uapi/cond.h | 42 ++ include/cobalt/uapi/event.h | 50 ++ include/cobalt/uapi/monitor.h | 49 ++ include/cobalt/uapi/mutex.h | 46 ++ include/cobalt/uapi/rtdm/Makefile.am | 2 + include/cobalt/uapi/rtdm/Makefile.in | 502 ++++++++++++++ include/{ => cobalt/uapi}/rtdm/syscall.h | 24 +- include/cobalt/uapi/sched.h | 78 +++ include/cobalt/uapi/sem.h | 42 ++ include/cobalt/uapi/signal.h | 38 ++ include/cobalt/uapi/sys/Makefile.am | 9 + include/cobalt/uapi/sys/Makefile.in | 563 ++++++++++++++++ include/cobalt/uapi/sys/heap.h | 36 + include/cobalt/uapi/sys/synch.h | 73 ++ include/cobalt/uapi/sys/thread.h | 131 ++++ include/cobalt/uapi/sys/trace.h | 30 + include/cobalt/uapi/sys/types.h | 41 ++ include/cobalt/uapi/sys/vdso.h | 58 ++ include/cobalt/{ => uapi}/syscall.h | 37 +- include/cobalt/uapi/thread.h | 51 ++ include/cobalt/uapi/time.h | 32 + include/cobalt/unistd.h | 30 +- include/cobalt/wrappers.h | 5 +- include/copperplate/eventobj.h | 2 +- include/copperplate/syncobj.h | 2 + include/copperplate/threadobj.h | 2 + include/rtdm/Makefile.am | 3 - include/rtdm/Makefile.in | 9 +- include/rtdm/rtdm_driver.h | 4 +- include/rtdm/rtipc.h | 2 +- kernel/cobalt/Makefile | 2 +- kernel/cobalt/bufd.c | 4 +- kernel/cobalt/pipe.c | 2 +- kernel/cobalt/pod.c | 41 +- kernel/cobalt/posix/Makefile | 4 +- kernel/cobalt/posix/clock.c | 3 +- kernel/cobalt/posix/clock.h | 28 +- kernel/cobalt/posix/cond.c | 28 + kernel/cobalt/posix/cond.h | 66 +-- kernel/cobalt/posix/cond_attr.c | 1 + kernel/cobalt/posix/event.h | 19 +- kernel/cobalt/posix/init.c | 2 +- kernel/cobalt/posix/internal.h | 27 +- kernel/cobalt/posix/monitor.h | 24 +- kernel/cobalt/posix/{mq.c => mqueue.c} | 14 +- kernel/cobalt/posix/{mq.h => mqueue.h} | 14 +- kernel/cobalt/posix/mutex.c | 59 ++- kernel/cobalt/posix/mutex.h | 127 +---- kernel/cobalt/posix/mutex_attr.c | 1 + kernel/cobalt/posix/registry.h | 23 +- kernel/cobalt/posix/sem.c | 2 +- kernel/cobalt/posix/sem.h | 31 +- kernel/cobalt/posix/syscall.c | 7 +- kernel/cobalt/posix/thread.c | 21 +- kernel/cobalt/posix/thread.h | 79 ++- kernel/cobalt/posix/timer.c | 2 - kernel/cobalt/posix/timer.h | 9 +- kernel/cobalt/rtdm/core.c | 3 +- kernel/cobalt/rtdm/init.c | 2 +- kernel/cobalt/rtdm/syscall.c | 3 +- {include => kernel/cobalt}/rtdm/syscall.h | 18 +- kernel/cobalt/sched.c | 2 +- kernel/cobalt/shadow.c | 8 +- kernel/cobalt/thread.c | 2 +- kernel/cobalt/timer.c | 1 + lib/cobalt/Makefile.am | 2 + lib/cobalt/Makefile.in | 12 +- lib/cobalt/assert_context.c | 6 +- lib/cobalt/attr.c | 2 + lib/cobalt/clock.c | 11 +- lib/cobalt/cond.c | 15 +- lib/cobalt/current.c | 10 +- .../cobalt/asm-generic => lib/cobalt}/current.h | 8 +- lib/cobalt/init.c | 14 +- lib/cobalt/internal.c | 15 +- lib/cobalt/internal.h | 31 +- lib/cobalt/mq.c | 3 +- lib/cobalt/mutex.c | 10 +- lib/cobalt/printf.c | 20 +- lib/cobalt/rtdm.c | 3 +- lib/cobalt/select.c | 3 +- lib/cobalt/sem_heap.c | 24 +- lib/cobalt/sem_heap.h | 14 +- lib/cobalt/semaphore.c | 5 +- lib/cobalt/sigshadow.c | 18 + lib/cobalt/thread.c | 5 +- lib/cobalt/timer.c | 4 +- lib/cobalt/trace.c | 62 ++ lib/copperplate/internal.c | 1 + lib/copperplate/regd/fs-cobalt.c | 5 +- lib/copperplate/registry.c | 3 +- scripts/prepare-kernel.sh | 18 +- testsuite/clocktest/clocktest.c | 25 +- testsuite/cyclic/cyclictest.c | 2 +- testsuite/latency/latency.c | 2 + testsuite/regression/posix/leaks.c | 2 +- testsuite/switchtest/switchtest.c | 2 +- testsuite/unit/Makefile.am | 1 + testsuite/unit/Makefile.in | 1 + testsuite/unit/check-vdso.c | 14 +- testsuite/unit/cond-torture.c | 16 +- testsuite/unit/mutex-torture.c | 4 +- 154 files changed, 3831 insertions(+), 2002 deletions(-) Diff: http://git.xenomai.org/?p=xenomai-forge.git;a=commitdiff;h=b41e996801024cd85b5dc4a084a4020c5168bf2a _______________________________________________ Xenomai-git mailing list Xenomai-git@xenomai.org http://www.xenomai.org/mailman/listinfo/xenomai-git