Clean up user library include paths (XCC)
authorBarret Rhoden <brho@cs.berkeley.edu>
Tue, 16 Feb 2016 19:33:42 +0000 (14:33 -0500)
committerBarret Rhoden <brho@cs.berkeley.edu>
Wed, 17 Feb 2016 22:26:28 +0000 (17:26 -0500)
commit674c8f0e93580d1042af5d520e1238039849c39a
tree8179e736ee9f4c47d4adc4e1e6fc68c02b0f655e
parent2598c7e54f51a8239eaaad9a4c8093531de5e242
Clean up user library include paths (XCC)

Allowing libraries to search their own include/ for <foo.h> is a huge mess
that results in issues when glibc has foo.h.  The fix is to not allow that,
and to insist libraries refer to their own files by their full name
(libname/foo.h).

All user libraries (other than pthread) now have their include directories
arranged as:

user/LIBNAME/include/LIBNAME/FOO.h

With their include path being set to user/LIBNAME/include/, and all
 #includes explicitly list the libname.

Due to moving parlib's arch symlink, you'll need to do something like:

$ rm user/parlib/include/arch
$ make mrproper
$ mv .config.old .config
$ make ARCH=x86 oldconfig
$ make userclean

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
214 files changed:
.gitignore
Makefile
tools/compilers/gcc-glibc/Makefile
user/Makefrag-user-lib
user/benchutil/include/alarm.h [deleted file]
user/benchutil/include/benchutil [deleted symlink]
user/benchutil/include/benchutil/alarm.h [new file with mode: 0644]
user/benchutil/include/benchutil/measure.h [new file with mode: 0644]
user/benchutil/include/benchutil/pvcalarm.h [new file with mode: 0644]
user/benchutil/include/measure.h [deleted file]
user/benchutil/include/pvcalarm.h [deleted file]
user/iplib/include/icmp.h [deleted file]
user/iplib/include/iplib [deleted symlink]
user/iplib/include/iplib.h [deleted file]
user/iplib/include/iplib/icmp.h [new file with mode: 0644]
user/iplib/include/iplib/iplib.h [new file with mode: 0644]
user/ndblib/include/fcallfmt.h [deleted file]
user/ndblib/include/ndb.h [deleted file]
user/ndblib/include/ndbhf.h [deleted file]
user/ndblib/include/ndblib [deleted symlink]
user/ndblib/include/ndblib/fcallfmt.h [new file with mode: 0644]
user/ndblib/include/ndblib/ndb.h [new file with mode: 0644]
user/ndblib/include/ndblib/ndbhf.h [new file with mode: 0644]
user/ndblib/ndbopen.c
user/parlib/include/arc.h [deleted file]
user/parlib/include/assert.h [deleted file]
user/parlib/include/bitmask.h [deleted file]
user/parlib/include/ceq.h [deleted file]
user/parlib/include/common.h [deleted file]
user/parlib/include/dtls.h [deleted file]
user/parlib/include/evbitmap.h [deleted file]
user/parlib/include/event.h [deleted file]
user/parlib/include/mcs.h [deleted file]
user/parlib/include/net.h [deleted file]
user/parlib/include/parlib [deleted symlink]
user/parlib/include/parlib.h [deleted file]
user/parlib/include/parlib/arc.h [new file with mode: 0644]
user/parlib/include/parlib/assert.h [new file with mode: 0644]
user/parlib/include/parlib/bitmask.h [new file with mode: 0644]
user/parlib/include/parlib/ceq.h [new file with mode: 0644]
user/parlib/include/parlib/common.h [new file with mode: 0644]
user/parlib/include/parlib/dtls.h [new file with mode: 0644]
user/parlib/include/parlib/evbitmap.h [new file with mode: 0644]
user/parlib/include/parlib/event.h [new file with mode: 0644]
user/parlib/include/parlib/mcs.h [new file with mode: 0644]
user/parlib/include/parlib/net.h [new file with mode: 0644]
user/parlib/include/parlib/parlib.h [new file with mode: 0644]
user/parlib/include/parlib/poke.h [new file with mode: 0644]
user/parlib/include/parlib/pool.h [new file with mode: 0644]
user/parlib/include/parlib/printf-ext.h [new file with mode: 0644]
user/parlib/include/parlib/riscv/arch.h [new file with mode: 0644]
user/parlib/include/parlib/riscv/atomic.h [new file with mode: 0644]
user/parlib/include/parlib/riscv/bitmask.h [new file with mode: 0644]
user/parlib/include/parlib/riscv/trap.h [new file with mode: 0644]
user/parlib/include/parlib/riscv/vcore.h [new file with mode: 0644]
user/parlib/include/parlib/ros_debug.h [new file with mode: 0644]
user/parlib/include/parlib/serialize.h [new file with mode: 0644]
user/parlib/include/parlib/signal.h [new file with mode: 0644]
user/parlib/include/parlib/slab.h [new file with mode: 0644]
user/parlib/include/parlib/spinlock.h [new file with mode: 0644]
user/parlib/include/parlib/stdio.h [new file with mode: 0644]
user/parlib/include/parlib/timing.h [new file with mode: 0644]
user/parlib/include/parlib/tsc-compat.h [new file with mode: 0644]
user/parlib/include/parlib/ucq.h [new file with mode: 0644]
user/parlib/include/parlib/uthread.h [new file with mode: 0644]
user/parlib/include/parlib/vcore.h [new file with mode: 0644]
user/parlib/include/parlib/waitfreelist.h [new file with mode: 0644]
user/parlib/include/parlib/x86/arch.h [new file with mode: 0644]
user/parlib/include/parlib/x86/atomic.h [new file with mode: 0644]
user/parlib/include/parlib/x86/bitmask.h [new file with mode: 0644]
user/parlib/include/parlib/x86/trap.h [new file with mode: 0644]
user/parlib/include/parlib/x86/vcore.h [new file with mode: 0644]
user/parlib/include/parlib/x86/vcore32.h [new file with mode: 0644]
user/parlib/include/parlib/x86/vcore64.h [new file with mode: 0644]
user/parlib/include/poke.h [deleted file]
user/parlib/include/pool.h [deleted file]
user/parlib/include/printf-ext.h [deleted file]
user/parlib/include/riscv/arch.h [deleted file]
user/parlib/include/riscv/atomic.h [deleted file]
user/parlib/include/riscv/bitmask.h [deleted file]
user/parlib/include/riscv/trap.h [deleted file]
user/parlib/include/riscv/vcore.h [deleted file]
user/parlib/include/ros_debug.h [deleted file]
user/parlib/include/serialize.h [deleted file]
user/parlib/include/signal.h [deleted file]
user/parlib/include/slab.h [deleted file]
user/parlib/include/spinlock.h [deleted file]
user/parlib/include/stdio.h [deleted file]
user/parlib/include/timing.h [deleted file]
user/parlib/include/tsc-compat.h [deleted file]
user/parlib/include/ucq.h [deleted file]
user/parlib/include/uthread.h [deleted file]
user/parlib/include/vcore.h [deleted file]
user/parlib/include/waitfreelist.h [deleted file]
user/parlib/include/x86/arch.h [deleted file]
user/parlib/include/x86/atomic.h [deleted file]
user/parlib/include/x86/bitmask.h [deleted file]
user/parlib/include/x86/trap.h [deleted file]
user/parlib/include/x86/vcore.h [deleted file]
user/parlib/include/x86/vcore32.h [deleted file]
user/parlib/include/x86/vcore64.h [deleted file]
user/vmm/include/acpi/acakaros.h [deleted file]
user/vmm/include/acpi/acakarosex.h [deleted file]
user/vmm/include/acpi/acbuffer.h [deleted file]
user/vmm/include/acpi/acconfig.h [deleted file]
user/vmm/include/acpi/acenv.h [deleted file]
user/vmm/include/acpi/acenvex.h [deleted file]
user/vmm/include/acpi/acexcep.h [deleted file]
user/vmm/include/acpi/acgcc.h [deleted file]
user/vmm/include/acpi/acnames.h [deleted file]
user/vmm/include/acpi/acoutput.h [deleted file]
user/vmm/include/acpi/acpi.h [deleted file]
user/vmm/include/acpi/acpi_bus.h [deleted file]
user/vmm/include/acpi/acpi_drivers.h [deleted file]
user/vmm/include/acpi/acpi_io.h [deleted file]
user/vmm/include/acpi/acpi_lpat.h [deleted file]
user/vmm/include/acpi/acpi_numa.h [deleted file]
user/vmm/include/acpi/acpiosxf.h [deleted file]
user/vmm/include/acpi/acpixf.h [deleted file]
user/vmm/include/acpi/acrestyp.h [deleted file]
user/vmm/include/acpi/actbl.h [deleted file]
user/vmm/include/acpi/actbl1.h [deleted file]
user/vmm/include/acpi/actbl2.h [deleted file]
user/vmm/include/acpi/actbl3.h [deleted file]
user/vmm/include/acpi/actypes.h [deleted file]
user/vmm/include/acpi/acuuid.h [deleted file]
user/vmm/include/acpi/apei.h [deleted file]
user/vmm/include/acpi/button.h [deleted file]
user/vmm/include/acpi/ghes.h [deleted file]
user/vmm/include/acpi/hed.h [deleted file]
user/vmm/include/acpi/pdc_intel.h [deleted file]
user/vmm/include/acpi/platform/acakaros.h [deleted file]
user/vmm/include/acpi/platform/acakarosex.h [deleted file]
user/vmm/include/acpi/platform/acenv.h [deleted file]
user/vmm/include/acpi/platform/acenvex.h [deleted file]
user/vmm/include/acpi/platform/acgcc.h [deleted file]
user/vmm/include/acpi/processor.h [deleted file]
user/vmm/include/acpi/reboot.h [deleted file]
user/vmm/include/acpi/video.h [deleted file]
user/vmm/include/coreboot_tables.h [deleted file]
user/vmm/include/linux_bootparam.h [deleted file]
user/vmm/include/virtio.h [deleted file]
user/vmm/include/virtio_9p.h [deleted file]
user/vmm/include/virtio_balloon.h [deleted file]
user/vmm/include/virtio_blk.h [deleted file]
user/vmm/include/virtio_config.h [deleted file]
user/vmm/include/virtio_console.h [deleted file]
user/vmm/include/virtio_ids.h [deleted file]
user/vmm/include/virtio_input.h [deleted file]
user/vmm/include/virtio_mmio.h [deleted file]
user/vmm/include/virtio_net.h [deleted file]
user/vmm/include/virtio_pci.h [deleted file]
user/vmm/include/virtio_ring.h [deleted file]
user/vmm/include/virtio_rng.h [deleted file]
user/vmm/include/virtio_scsi.h [deleted file]
user/vmm/include/virtio_types.h [deleted file]
user/vmm/include/vmm [deleted symlink]
user/vmm/include/vmm.h [deleted file]
user/vmm/include/vmm/acpi/acakaros.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acakarosex.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acbuffer.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acconfig.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acenv.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acenvex.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acexcep.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acgcc.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acnames.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acoutput.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi_bus.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi_drivers.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi_io.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi_lpat.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpi_numa.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpiosxf.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acpixf.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acrestyp.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/actbl.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/actbl1.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/actbl2.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/actbl3.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/actypes.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/acuuid.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/apei.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/button.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/ghes.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/hed.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/pdc_intel.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/platform/acakaros.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/platform/acakarosex.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/platform/acenv.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/platform/acenvex.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/platform/acgcc.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/processor.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/reboot.h [new file with mode: 0644]
user/vmm/include/vmm/acpi/video.h [new file with mode: 0644]
user/vmm/include/vmm/coreboot_tables.h [new file with mode: 0644]
user/vmm/include/vmm/linux_bootparam.h [new file with mode: 0644]
user/vmm/include/vmm/virtio.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_9p.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_balloon.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_blk.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_config.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_console.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_ids.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_input.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_mmio.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_net.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_pci.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_ring.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_rng.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_scsi.h [new file with mode: 0644]
user/vmm/include/vmm/virtio_types.h [new file with mode: 0644]
user/vmm/include/vmm/vmm.h [new file with mode: 0644]