2015-08-14 09:58:16 +00:00
|
|
|
#Config
|
|
|
|
Artifact=kernel
|
|
|
|
TempDir=obj
|
|
|
|
SourceDir=asm src
|
|
|
|
Files=trainscript/trainscript.y trainscript/trainscript.l trainscript/tsvm.cpp
|
2015-08-14 13:38:01 +00:00
|
|
|
AdditionalObjects=obj/main.o
|
2015-08-14 09:58:16 +00:00
|
|
|
|
2015-08-14 11:27:04 +00:00
|
|
|
LexUseCpp
|
|
|
|
YaccUseCpp
|
|
|
|
|
2015-08-14 09:58:16 +00:00
|
|
|
# Tools
|
|
|
|
AS=gcc
|
|
|
|
CC=gcc
|
|
|
|
CXX=g++
|
|
|
|
LD=g++
|
|
|
|
LEX=flex
|
|
|
|
YACC=bison
|
|
|
|
|
|
|
|
# Flags
|
2015-08-14 13:55:12 +00:00
|
|
|
FLAGS=-m32 -Dnullptr=0 -D__cdecl="__attribute__((cdecl))"
|
2015-08-14 09:58:16 +00:00
|
|
|
ASFLAGS=
|
|
|
|
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
|
|
|
|
|
2015-08-14 11:34:14 +00:00
|
|
|
--
|
2015-08-14 13:38:01 +00:00
|
|
|
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
|
|
|
|
|
|
|
|
|
2015-08-14 11:34:14 +00:00
|
|
|
.PHONY: run
|
|
|
|
run:
|
|
|
|
qemu-system-i386 -kernel kernel kernel
|