46 lines
1.3 KiB
Text
46 lines
1.3 KiB
Text
#Config
|
|
Artifact=kernel
|
|
TempDir=obj
|
|
SourceDir=asm src
|
|
Files=trainscript/trainscript.y trainscript/trainscript.l
|
|
Files=trainscript/tsvm.cpp trainscript/variable.cpp trainscript/type.cpp
|
|
Files=trainscript/type-operators.cpp.tt
|
|
AdditionalObjects=obj/main.o
|
|
|
|
LexUseCpp
|
|
YaccUseCpp
|
|
|
|
# Tools
|
|
AS=gcc
|
|
CC=gcc
|
|
CXX=g++
|
|
LD=g++
|
|
LEX=flex
|
|
YACC=bison
|
|
TEMPLE=mono /home/felix/projects/temple/bin/Debug/temple.exe
|
|
|
|
# Flags
|
|
FLAGS=-m32 -Dnullptr=0 -D__cdecl="__attribute__((cdecl))" -mno-sse -mno-sse2 -mno-mmx
|
|
ASFLAGS=-masm=intel
|
|
CCFLAGS=-g -std=c11 -Dnullptr=0 -Wall -g -fno-stack-protector -ffreestanding -Iinclude
|
|
CXXFLAGS=-g -std=c++11 -Wall -g -fno-stack-protector -fno-use-cxa-atexit -nostdlib -fno-builtin -fno-rtti -fno-exceptions -fno-leading-underscore -Wall -Wextra -ffreestanding -Wno-unused-function -Iinclude
|
|
LDFLAGS=-g -m32 -nostdlib -fno-builtin -Tkernel.ld
|
|
|
|
--
|
|
obj/main.o: scripts/main.ts
|
|
objcopy -B i386 -I binary -O elf32-i386 \
|
|
scripts/main.ts obj/main.o
|
|
objcopy \
|
|
--redefine-sym _binary_scripts_main_ts_start=mainscript_start \
|
|
--redefine-sym _binary_scripts_main_ts_end=mainscript_end \
|
|
--redefine-sym _binary_scripts_main_ts_size=mainscript_size \
|
|
obj/main.o
|
|
|
|
|
|
.PHONY: run
|
|
run:
|
|
qemu-system-i386 -serial stdio -kernel kernel
|
|
|
|
.PHONY: debug
|
|
debug:
|
|
qemu-system-i386 -s -S -serial stdio -kernel kernel
|