Kernel: Move File.{cpp,h} into FileSystem/

Also tweak the kernel's Makefile to use -nostdinc and -nostdinc++.
This prevents us from picking up random headers from ../Root, which may
include older versions of kernel headers.

Since we still need <initializer_list> for Vector, we specifically include
the necessary GCC path. This is a bit hackish but it works for now.
This commit is contained in:
Andreas Kling 2019-07-09 14:46:23 +02:00
parent 6c87d3afa9
commit f4cec2f110
Notes: sideshowbarker 2024-07-19 13:21:36 +09:00
11 changed files with 13 additions and 11 deletions

View file

@ -9,7 +9,7 @@
// There are two main subclasses:
// - BlockDevice (random access)
// - CharacterDevice (sequential)
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/UnixTypes.h>
class Device : public File {

View file

@ -1,7 +1,7 @@
#include <Kernel/Devices/IDEDiskDevice.h>
#include <Kernel/FileSystem/ProcFS.h>
#include <Kernel/IO.h>
#include <Kernel/PIC.h>
#include <Kernel/Arch/i386/PIC.h>
#include <Kernel/Process.h>
#include <Kernel/StdLib.h>
#include <Kernel/VM/MemoryManager.h>

View file

@ -1,7 +1,7 @@
#include <Kernel/Arch/i386/CPU.h>
#include <Kernel/Arch/i386/PIT.h>
#include <Kernel/Devices/PCSpeaker.h>
#include <Kernel/IO.h>
#include <Kernel/i8253.h>
void PCSpeaker::tone_on(int frequency)
{

View file

@ -1,7 +1,7 @@
#pragma once
#include <Kernel/DoubleBuffer.h>
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/UnixTypes.h>
class FileDescription;

View file

@ -1,4 +1,4 @@
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/FileSystem/FileDescription.h>
File::File()

View file

@ -1,6 +1,6 @@
#pragma once
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
class Inode;

View file

@ -54,7 +54,7 @@ KERNEL_OBJS = \
Devices/PCSpeaker.o \
FileSystem/InodeFile.o \
FileSystem/Custody.o \
File.o
FileSystem/File.o
VFS_OBJS = \
FileSystem/ProcFS.o \
@ -97,7 +97,9 @@ OBJS = $(CXX_OBJS) Boot/boot.ao
KERNEL = kernel
CXXFLAGS += -ffreestanding -mregparm=3 -mno-80387 -mno-mmx -mno-sse -mno-sse2
CXXFLAGS += -nostdlib
CXXFLAGS += -nostdlib -nostdinc -nostdinc++
CXXFLAGS += -I../Root/usr/local/include/c++/8.3.0/
CXXFLAGS += -I../Root/usr/local/include/c++/8.3.0/i686-pc-serenity/
DEFINES += -DKERNEL
LDFLAGS += -Ttext 0x10000 -Wl,-T linker.ld -nostdlib

View file

@ -4,7 +4,7 @@
#include <AK/RefPtr.h>
#include <AK/RefCounted.h>
#include <AK/Vector.h>
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/KResult.h>
#include <Kernel/Lock.h>
#include <Kernel/UnixTypes.h>

View file

@ -1,7 +1,7 @@
#pragma once
#include <AK/CircularQueue.h>
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/UnixTypes.h>
class ProcessTracer : public File {

View file

@ -3,7 +3,7 @@
#include <AK/AKString.h>
#include <AK/RefPtr.h>
#include <AK/RefCounted.h>
#include <Kernel/File.h>
#include <Kernel/FileSystem/File.h>
#include <Kernel/KResult.h>
#include <Kernel/UnixTypes.h>