[[meta copyright="Copyright © 2005, 2006, 2007 Free Software Foundation, Inc."]] [[meta license="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]] # 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 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 `#include`d through one way or another. * [[source_gnumach-1-branch ddb/db_expr.h]] Currently used, but copyright violation? Rewrite? * [[source_gnumach-1-branch ddb/db_print.h]] Copyright violation? Currently unused, but could be used in principle (or be rewritten, to avoid the copyright oddity). * [[source_gnumach-1-branch ddb/tr.h]] Copyright violation. Unused. Remove. * [[source_gnumach-1-branch device/dev_master.h]] Might be usable for SMP? Remove otherwise. * [[source_gnumach-1-branch i386/i386/kttd_machdep.h]] * [[source_gnumach-1-branch i386/i386/sched_param.h]] * [[source_gnumach-1-branch i386/include/mach/i386/cthreads.h]] Was probably once exported, but is no longer. * [[source_gnumach-1-branch i386/include/mach/i386/ioccom.h]] Exported. * [[source_gnumach-1-branch include/device/audio_status.h]] Exported. * [[source_gnumach-1-branch include/device/tape_status.h]] Exported. * [[source_gnumach-1-branch include/mach/alert.h]] Exported. * [[source_gnumach-1-branch include/mach/boot.h]] Exported. * [[source_gnumach-1-branch include/mach/macro_help.h]] Exported. * [[source_gnumach-1-branch include/mach/multiboot.h]] Exported. * [[source_gnumach-1-branch include/mach/profil.h]] Exported. * [[source_gnumach-1-branch include/mach/profilparam.h]] Exported. * [[source_gnumach-1-branch include/mach/exec/a.out.h]] Exported. * [[source_gnumach-1-branch include/mach_debug/pc_info.h]] Currently not exported, but was probably once meant to be. * [[source_gnumach-1-branch kern/act.h]] * [[source_gnumach-1-branch kern/refcount.h]] * [[source_gnumach-1-branch kern/shuttle.h]] # Remove dead functions, variables, etc. from source files # Rewrite ugly code