Restructure the tree in a sane way
Merge linux/src and linux/dev. But only if using a sane RCS, so leave it
as-is for now. Also, a bunch of (header) files from there may probably be
discarded.
Remove dead files from the GNU Mach source tree
For exported files (via make install), the plan is to first stick some
#error This file is scheduled for removal. Write to <bug-hurd@gnu.org> if you
have a reason to have it kept available. into them, and then actually remove
them after some months.
For some of the internal header files (containing function prototypes and the
like), it might actually be useful to use them. (And then get rid of a bunch
of extern ... statements in other files.)
This following list was assembled by putting such a #error ... line into each
of the gnumach-1-branch's header files (exported and internal; save the
linux/ ones (only internal) for simplicity), and then trying to build GNU
Mach until this would succeed again (by removing offending #error ...s), and
afterwards using the set of exported files for building a cross toolchain
(again still removing offending #error ...s). A very crude and imprecise
method.
So, additionally to the list given below, there may actually be a bunch of
further files (also exported ones) that serve no real value, but are being
#included through one way or another.
-
Currently used, but copyright violation? Rewrite?
-
Copyright violation? Currently unused, but could be used in principle (or be rewritten, to avoid the copyright oddity).
-
Copyright violation. Unused. Remove.
-
Might be usable for SMP? Remove otherwise.
i386/include/mach/i386/cthreads.h
Was probably once exported, but is no longer.
i386/include/mach/i386/ioccom.h
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Exported.
-
Currently not exported, but was probably once meant to be.
Remove dead functions, variables, etc. from source files
Rewrite ugly code
IRC, freenode, #hurd, 2012-09-06
<mcsim> hello. Why size parameter of rpc device_read has type
"mach_msg_type_number_t *"? Why not just "vm_size_t *"?
<mcsim> this parameter has name data_count
<braunr> that's one of the reasons mach is confusing
<braunr> i can't really tell you why, it's messy :/
