NativeLib - Including kernelland locks
[tpg/acess2.git] / Tools / nativelib / Makefile
1
2 KERNEL_DIR := ../../KernelLand/Kernel
3
4 NOBJ := logging.o misc.o threads_int.o
5
6 LOBJ := threads.o time.o
7 # mutex.o rwlock.o semaphore.o
8
9 KOBJ += vfs/main.o vfs/open.o vfs/acls.o vfs/io.o vfs/dir.o
10 KOBJ += vfs/nodecache.o vfs/mount.o vfs/memfile.o # vfs/select.o
11 KOBJ += vfs/fs/root.o vfs/fs/devfs.o
12 KOBJ += drv/proc.o
13 KOBJ += mutex.o rwlock.o semaphore.o
14
15 NOBJ := $(NOBJ:%.o=obj/%.o)
16 LOBJ := $(LOBJ:%.o=obj/%.o)
17 KOBJ := $(KOBJ:%.o=obj/_Kernel/%.o)
18 OBJ := $(NOBJ) $(LOBJ) $(KOBJ)
19 BIN := ../libnativelib.a
20
21 CFLAGS := -Wall -std=c99 -Werror
22 CPPFLAGS := -I include
23
24
25 .PHONY: all clean
26
27 all: $(BIN)
28
29 clean:
30         $(RM) $(BIN) $(OBJ)
31
32 $(BIN): $(OBJ)
33         ar cr $(BIN) $(OBJ)
34
35 $(NOBJ): obj/%.o: %.c Makefile
36         @echo [CC Native] $@
37         @mkdir -p $(dir $@)
38         @$(CC) -o $@ -c $< -MMD -MF [email protected] -MT $@ -MP $(CFLAGS) $(CPPFLAGS)
39 $(LOBJ): obj/%.o: %.c Makefile
40         @echo [CC Local] $@
41         @mkdir -p $(dir $@)
42         @$(CC) -o $@ -c $< -MMD -MF [email protected] -MT $@ -MP $(CFLAGS) $(CPPFLAGS) -I $(KERNEL_DIR)/include
43
44 $(KOBJ): obj/_Kernel/%.o: $(KERNEL_DIR)/%.c Makefile
45         @echo [CC Kernel] $@
46         @mkdir -p $(dir $@)
47         @$(CC) -o $@ -c $< -MMD -MF [email protected] -MT $@ -MP $(CFLAGS) $(CPPFLAGS) -I $(KERNEL_DIR)/include
48
49 -include $(OBJ:%=%.dep)

UCC git Repository :: git.ucc.asn.au