Browse Source

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.
Andreas Kling 6 years ago
parent
commit
f4cec2f110

+ 1 - 1
Kernel/Devices/Device.h

@@ -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 {

+ 1 - 1
Kernel/Devices/IDEDiskDevice.cpp

@@ -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>

+ 1 - 1
Kernel/Devices/PCSpeaker.cpp

@@ -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)
 {

+ 1 - 1
Kernel/FileSystem/FIFO.h

@@ -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;

+ 1 - 1
Kernel/File.cpp → Kernel/FileSystem/File.cpp

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

+ 0 - 0
Kernel/File.h → Kernel/FileSystem/File.h


+ 1 - 1
Kernel/FileSystem/InodeFile.h

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

+ 4 - 2
Kernel/Makefile

@@ -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
 

+ 1 - 1
Kernel/Net/Socket.h

@@ -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>

+ 1 - 1
Kernel/ProcessTracer.h

@@ -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 {

+ 1 - 1
Kernel/SharedMemory.h

@@ -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>