summaryrefslogtreecommitdiff
path: root/service/Makefile
blob: b78cac306a80aec71422bd01e9205b4d49761cfc (plain)
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
37
include ../defaults.mk

LDFLAGS += -z max-page-size=4096 --export-dynamic -pic \
	   -z separate-code -pie -Bsymbolic -shared \
	   -z noexecstack -g

VPATH := ../lib arch/x86_64/ lib

TARGET := kjarna.os
.DEFAULT: $(TARGET)

CPPFLAGS += -I../api/posix -I../api/libc -I../api -I. 

CFLAGS += -fPIC -fvisibility=hidden -mgeneral-regs-only

LDSCRIPT := kjarna.ld

CRT_OBJS := start.o rtld_link.o dynamic.o elf64.o kjarna.o posix.o
LIB_OBJS := memcmp.o memcpy.o memmove.o memset.o string.o stdio.o \
			printf.o heap.o
APP_OBJS := main.o

OBJS := $(CRT_OBJS) $(LIB_OBJS) $(APP_OBJS) 

DEPS := $(patsubst %.o,%.d,$(OBJS))

$(TARGET): $(LDSCRIPT) $(MAKEFILE_LIST)
$(TARGET): $(OBJS)

CLEANLIST := $(wildcard $(OBJS) $(TARGET)) 
DCLEANLIST := $(wildcard $(DEPS))

include ../rules.mk
-include $(DEPS)

.DEFAULT: $(TARGET)