-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathglobal_variables.mk
36 lines (29 loc) · 1 KB
/
global_variables.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
KERNELFOLDER = kernel
ARCHFOLDER = arch
INTEGRATEDFOLDER = integrated
FILESYSTEMFOLDER = filesystem
DRIVERSFOLDER = drivers
LOADERFOLDER = loader
FINALIMAGEFOLDER = image
ROOTBINARYFOLDER = bin
COMMON_HEADERFOLDER = include
COMMON_SRCFOLDER = src
KERNEL_ELF = Kernel.elf
KERNEL_IMG = Kernel.krn
KERNEL_IMG_LOCATION = $(ROOTBINARYFOLDER)
BUILD_KERNEL_IMG_MAKEFILE = build_kernel_img.mk
ARCH_CONFIGURATION_MAKEFILE = $(ARCHFOLDER)/$(ARCH)/arch_configurations.mk
KERNEL_AS = $(AS)
KERNEL_CC = $(KERNEL_COMPILER)-$(CC)
KERNEL_LD = $(KERNEL_COMPILER)-$(LD)
KERNEL_OBJDUMP = $(KERNEL_COMPILER)-$(OBJDUMP)
KERNEL_OBJCOPY = $(KERNEL_COMPILER)-$(OBJCOPY)
KERNEL_LINKERSCRIPT = kernel_linker.ld
PWD = $(shell pwd)
ARCH_CONFIGURATION_FILE_LOC = $(ARCHFOLDER)/$(ARCH)
ARCH_CONFIGURATION_FILE = arch_configurations.hpp
define convert_hpp_to_ld
echo \#include \"$(notdir $(1))\" > $(dir $(1))dummy.ld
$(KERNEL_CC) -E -P -xc -DLINKER_SCRIPT $(dir $(1))dummy.ld > $(subst .hpp,.ld,$(1))
rm $(dir $(1))dummy.ld
endef