mirror of
https://github.com/RGBCube/serenity
synced 2025-07-25 16:07:47 +00:00
Switch over to building everything with i686-elf-g++.
This commit is contained in:
parent
afa6f88039
commit
75b100673f
17 changed files with 58 additions and 75 deletions
|
@ -5,19 +5,18 @@ APP = About
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static
|
||||||
|
|
||||||
all: $(APP)
|
all: $(APP)
|
||||||
|
|
||||||
|
|
|
@ -6,19 +6,18 @@ APP = FileManager
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static
|
||||||
|
|
||||||
all: $(APP)
|
all: $(APP)
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,6 @@ APP = FontEditor
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
|
@ -14,11 +13,11 @@ INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static
|
||||||
|
|
||||||
all: $(APP)
|
all: $(APP)
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@ APP = Launcher
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
|
@ -13,11 +12,11 @@ INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static
|
||||||
|
|
||||||
all: $(APP)
|
all: $(APP)
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,6 @@ APP = Terminal
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
|
@ -14,11 +13,11 @@ INCLUDE_FLAGS = -I../.. -I. -I../../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static
|
||||||
|
|
||||||
all: $(APP)
|
all: $(APP)
|
||||||
|
|
||||||
|
|
|
@ -66,9 +66,9 @@ BOOTLOADER = Boot/boot.bin
|
||||||
IMAGE = .floppy-image
|
IMAGE = .floppy-image
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
KERNEL_FLAGS = -ffreestanding -fno-stack-protector -fno-builtin
|
KERNEL_FLAGS =
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -mregparm=3 -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -mregparm=3 -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I.. -I.
|
INCLUDE_FLAGS = -I.. -I.
|
||||||
#SUGGEST_FLAGS = -Wsuggest-final-types -Wsuggest-final-methods -Wsuggest-override #-Wsuggest-attribute=noreturn
|
#SUGGEST_FLAGS = -Wsuggest-final-types -Wsuggest-final-methods -Wsuggest-override #-Wsuggest-attribute=noreturn
|
||||||
|
@ -76,9 +76,9 @@ INCLUDE_FLAGS = -I.. -I.
|
||||||
DEFINES = -DSERENITY -DKERNEL -DSANITIZE_PTRS
|
DEFINES = -DSERENITY -DKERNEL -DSANITIZE_PTRS
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(KERNEL_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(SUGGEST_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(KERNEL_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(SUGGEST_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = ~/opt/cross/bin/i686-elf-g++
|
||||||
LD = ld
|
LD = ~/opt/cross/bin/i686-elf-ld
|
||||||
LDFLAGS = -T linker.ld --strip-debug -melf_i386 --gc-sections
|
LDFLAGS = -T linker.ld
|
||||||
|
|
||||||
all: $(KERNEL) $(IMAGE) kernel.map
|
all: $(KERNEL) $(IMAGE) kernel.map
|
||||||
|
|
||||||
|
|
|
@ -16,8 +16,6 @@ $make_cmd -C ../Applications/Terminal clean && \
|
||||||
$make_cmd -C ../Applications/Terminal && \
|
$make_cmd -C ../Applications/Terminal && \
|
||||||
$make_cmd -C ../Applications/FontEditor clean && \
|
$make_cmd -C ../Applications/FontEditor clean && \
|
||||||
$make_cmd -C ../Applications/FontEditor && \
|
$make_cmd -C ../Applications/FontEditor && \
|
||||||
$make_cmd -C ../Applications/Clock clean && \
|
|
||||||
$make_cmd -C ../Applications/Clock && \
|
|
||||||
$make_cmd -C ../Applications/Launcher clean && \
|
$make_cmd -C ../Applications/Launcher clean && \
|
||||||
$make_cmd -C ../Applications/Launcher && \
|
$make_cmd -C ../Applications/Launcher && \
|
||||||
$make_cmd -C ../Applications/FileManager clean && \
|
$make_cmd -C ../Applications/FileManager clean && \
|
||||||
|
|
|
@ -6,14 +6,6 @@ AK_OBJS = \
|
||||||
../AK/StdLibExtras.o \
|
../AK/StdLibExtras.o \
|
||||||
../AK/kmalloc.o
|
../AK/kmalloc.o
|
||||||
|
|
||||||
SHAREDGRAPHICS_OBJS = \
|
|
||||||
../SharedGraphics/Painter.o \
|
|
||||||
../SharedGraphics/Font.o \
|
|
||||||
../SharedGraphics/Rect.o \
|
|
||||||
../SharedGraphics/GraphicsBitmap.o \
|
|
||||||
../SharedGraphics/CharacterBitmap.o \
|
|
||||||
../SharedGraphics/Color.o
|
|
||||||
|
|
||||||
LIBC_OBJS = \
|
LIBC_OBJS = \
|
||||||
stdio.o \
|
stdio.o \
|
||||||
unistd.o \
|
unistd.o \
|
||||||
|
@ -49,24 +41,24 @@ LIBC_OBJS = \
|
||||||
|
|
||||||
ASM_OBJS = setjmp.no
|
ASM_OBJS = setjmp.no
|
||||||
|
|
||||||
CPP_OBJS = $(AK_OBJS) $(WIDGETS_OBJS) $(LIBC_OBJS) $(SHAREDGRAPHICS_OBJS)
|
CPP_OBJS = $(AK_OBJS) $(WIDGETS_OBJS) $(LIBC_OBJS)
|
||||||
|
|
||||||
LIBRARY = LibC.a
|
LIBRARY = LibC.a
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
LIBC_FLAGS = -ffreestanding -fno-stack-protector -fno-builtin
|
LIBC_FLAGS =
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I.. -I.
|
INCLUDE_FLAGS = -I.. -I.
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DUSERLAND -DSANITIZE_PTRS
|
DEFINES = -DSERENITY -DUSERLAND -DSANITIZE_PTRS
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(LIBC_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(LIBC_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -T linker.ld --strip-debug -melf_i386 --gc-sections
|
LDFLAGS = -T linker.ld
|
||||||
|
|
||||||
all: $(LIBRARY)
|
all: $(LIBRARY)
|
||||||
|
|
||||||
|
|
|
@ -102,7 +102,7 @@ int memcmp(const void* v1, const void* v2, size_t n)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void* memcpy(void* dest_ptr, const void* src_ptr, dword n)
|
void* memcpy(void* dest_ptr, const void* src_ptr, size_t n)
|
||||||
{
|
{
|
||||||
if (n >= 1024)
|
if (n >= 1024)
|
||||||
return mmx_memcpy(dest_ptr, src_ptr, n);
|
return mmx_memcpy(dest_ptr, src_ptr, n);
|
||||||
|
@ -130,7 +130,7 @@ void* memcpy(void* dest_ptr, const void* src_ptr, dword n)
|
||||||
return dest_ptr;
|
return dest_ptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
void* memset(void* dest_ptr, int c, dword n)
|
void* memset(void* dest_ptr, int c, size_t n)
|
||||||
{
|
{
|
||||||
dword dest = (dword)dest_ptr;
|
dword dest = (dword)dest_ptr;
|
||||||
// FIXME: Support starting at an unaligned address.
|
// FIXME: Support starting at an unaligned address.
|
||||||
|
@ -293,7 +293,5 @@ char* strpbrk(const char* s, const char* accept)
|
||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ typedef uint32_t uid_t;
|
||||||
typedef uint32_t gid_t;
|
typedef uint32_t gid_t;
|
||||||
typedef int16_t pid_t;
|
typedef int16_t pid_t;
|
||||||
|
|
||||||
typedef uint32_t size_t;
|
typedef __SIZE_TYPE__ size_t;
|
||||||
typedef int32_t ssize_t;
|
typedef int32_t ssize_t;
|
||||||
|
|
||||||
typedef uint32_t ino_t;
|
typedef uint32_t ino_t;
|
||||||
|
|
|
@ -37,19 +37,18 @@ LIBS = ../LibC/LibC.a
|
||||||
LIBRARY = LibGUI.a
|
LIBRARY = LibGUI.a
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
LIBC_FLAGS = -ffreestanding -fno-stack-protector -fno-ident
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I../LibC -I.. -I.
|
INCLUDE_FLAGS = -I../LibC -I.. -I.
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DUSERLAND -DSANITIZE_PTRS -DLIBGUI
|
DEFINES = -DSERENITY -DUSERLAND -DSANITIZE_PTRS -DLIBGUI
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(LIBC_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -T linker.ld --strip-debug -melf_i386 --gc-sections
|
LDFLAGS =
|
||||||
|
|
||||||
all: $(LIBRARY)
|
all: $(LIBRARY)
|
||||||
|
|
||||||
|
|
|
@ -23,11 +23,13 @@ I always wanted to write my own operating system, but I never took it seriously.
|
||||||
|
|
||||||
## How do I get it to run?
|
## How do I get it to run?
|
||||||
|
|
||||||
I've only tested this on an Ubuntu 18.10 host with clang, so I'm not sure it works anywhere else. If you'd like to run it, here's how you'd get it to boot:
|
You need a cross-compiler for the i686-elf target.
|
||||||
|
I've only tested this on an Ubuntu 18.10 host with GCC, so I'm not sure it works anywhere else.
|
||||||
|
|
||||||
|
If you'd like to run it, here's how you'd get it to boot:
|
||||||
|
|
||||||
cd Kernel
|
cd Kernel
|
||||||
./makeall.sh
|
./makeall.sh
|
||||||
sudo ./sync.sh
|
|
||||||
./run q # Runs in QEMU
|
./run q # Runs in QEMU
|
||||||
./run # Runs in bochs
|
./run # Runs in bochs
|
||||||
|
|
||||||
|
|
|
@ -120,7 +120,7 @@ bool Font::write_to_file(const String& path)
|
||||||
header.glyph_width = m_glyph_width;
|
header.glyph_width = m_glyph_width;
|
||||||
header.glyph_height = m_glyph_height;
|
header.glyph_height = m_glyph_height;
|
||||||
header.type = 0;
|
header.type = 0;
|
||||||
memcpy(header.name, m_name.characters(), min(m_name.length(), 63u));
|
memcpy(header.name, m_name.characters(), min(m_name.length(), (size_t)63));
|
||||||
|
|
||||||
size_t bytes_per_glyph = sizeof(unsigned) * m_glyph_height;
|
size_t bytes_per_glyph = sizeof(unsigned) * m_glyph_height;
|
||||||
|
|
||||||
|
|
|
@ -71,19 +71,19 @@ APPS = \
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
USERLAND_FLAGS =
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I.. -I. -I../LibC
|
INCLUDE_FLAGS = -I.. -I. -I../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static -e _start
|
||||||
|
|
||||||
all: $(OBJS) $(APPS)
|
all: $(OBJS) $(APPS)
|
||||||
|
|
||||||
|
|
|
@ -19,7 +19,7 @@ struct GlobalState {
|
||||||
char hostname[32];
|
char hostname[32];
|
||||||
pid_t sid;
|
pid_t sid;
|
||||||
uid_t uid;
|
uid_t uid;
|
||||||
termios termios;
|
struct termios termios;
|
||||||
bool was_interrupted { false };
|
bool was_interrupted { false };
|
||||||
};
|
};
|
||||||
static GlobalState* g;
|
static GlobalState* g;
|
||||||
|
@ -159,7 +159,7 @@ static int sh_mp(int, char**)
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
printf("mapped file @ %p\n", data);
|
printf("mapped file @ %p\n", data);
|
||||||
printf("contents: %c%c%c%c%c%c%c...\n", data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]);
|
printf("contents: %c%c%c%c%c%c%c%c...\n", data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]);
|
||||||
|
|
||||||
printf("leaving it open :)\n");
|
printf("leaving it open :)\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -52,7 +52,7 @@ int show_all()
|
||||||
perror("opendir");
|
perror("opendir");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
char pathbuf[256];
|
char pathbuf[PATH_MAX];
|
||||||
|
|
||||||
while (auto* de = readdir(dirp)) {
|
while (auto* de = readdir(dirp)) {
|
||||||
if (de->d_name[0] == '.')
|
if (de->d_name[0] == '.')
|
||||||
|
|
|
@ -24,17 +24,16 @@ OBJS = $(SHAREDGRAPHICS_OBJS) $(WINDOWSERVER_OBJS)
|
||||||
|
|
||||||
ARCH_FLAGS =
|
ARCH_FLAGS =
|
||||||
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
STANDARD_FLAGS = -std=c++17 -nostdinc++ -nostdlib -nostdinc
|
||||||
USERLAND_FLAGS = -ffreestanding -fno-stack-protector
|
|
||||||
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
WARNING_FLAGS = -Wextra -Wall -Wundef -Wcast-qual -Wwrite-strings -Wimplicit-fallthrough
|
||||||
FLAVOR_FLAGS = -march=i686 -m32 -fno-exceptions -fno-rtti
|
FLAVOR_FLAGS = -fno-exceptions -fno-rtti
|
||||||
OPTIMIZATION_FLAGS = -Os
|
OPTIMIZATION_FLAGS = -Os
|
||||||
INCLUDE_FLAGS = -I.. -I. -I../LibC
|
INCLUDE_FLAGS = -I.. -I. -I../LibC
|
||||||
|
|
||||||
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
DEFINES = -DSERENITY -DSANITIZE_PTRS -DUSERLAND
|
||||||
|
|
||||||
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(USERLAND_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
CXXFLAGS = -MMD -MP $(WARNING_FLAGS) $(OPTIMIZATION_FLAGS) $(FLAVOR_FLAGS) $(ARCH_FLAGS) $(STANDARD_FLAGS) $(INCLUDE_FLAGS) $(DEFINES)
|
||||||
CXX = clang
|
CXX = i686-elf-g++
|
||||||
LD = ld
|
LD = i686-elf-ld
|
||||||
AR = ar
|
AR = ar
|
||||||
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
LDFLAGS = -static --strip-debug -melf_i386 -e _start --gc-sections
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue