Merge branch 'master' into proc-work
[akaros.git] / user / parlib / src / Makefrag
1 USER_PARLIB_SRC_DIR = $(USER_PARLIB_DIR)/src
2 OBJDIRS += $(USER_PARLIB_SRC_DIR)
3
4 USER_PARLIB_SRC_CFLAGS   := $(USER_CFLAGS) --nopatch \
5                             -I$(USER_PARLIB_DIR)/inc \
6                             -I$(USER_PARLIB_NEWLIB_DIR)/include
7
8 USER_PARLIB_SRC_SRCFILES := $(USER_PARLIB_SRC_DIR)/newlib_backend.c \
9                             $(USER_PARLIB_SRC_DIR)/debug.c \
10                             $(USER_PARLIB_SRC_DIR)/debugfmt.c \
11                             $(USER_PARLIB_SRC_DIR)/syscall.c \
12                             $(USER_PARLIB_SRC_DIR)/syscall_$(TARGET_ARCH).c \
13                             $(USER_PARLIB_SRC_DIR)/parlibmain.c \
14                             $(USER_PARLIB_SRC_DIR)/channel.c \
15                             $(USER_PARLIB_SRC_DIR)/entry_$(TARGET_ARCH).S  
16
17 USER_PARLIB_SRC_OBJFILES := $(patsubst $(USER_PARLIB_SRC_DIR)/%.c, \
18                             $(OBJDIR)/$(USER_PARLIB_DIR)/%.o, \
19                             $(USER_PARLIB_SRC_SRCFILES))
20 USER_PARLIB_SRC_OBJFILES := $(patsubst $(USER_PARLIB_SRC_DIR)/%.S, \
21                             $(OBJDIR)/$(USER_PARLIB_DIR)/%.o, \
22                             $(USER_PARLIB_SRC_OBJFILES))
23
24 $(OBJDIR)/$(USER_PARLIB_DIR)/%.o: $(USER_PARLIB_SRC_DIR)/%.c
25         @echo + cc [PARLIB] $<
26         @mkdir -p $(@D)
27         $(V)$(CC) $(USER_PARLIB_SRC_CFLAGS) -c -o $@ $<
28
29 $(OBJDIR)/$(USER_PARLIB_DIR)/%.o: $(USER_PARLIB_SRC_DIR)/%.S
30         @echo + as [PARLIB] $<
31         @mkdir -p $(@D)
32         $(V)$(CC) $(USER_PARLIB_SRC_CFLAGS) -c -o $@ $<
33
34 $(OBJDIR)/$(USER_PARLIB_DIR)/libparlib.a: $(USER_PARLIB_SRC_OBJFILES)
35         @echo + ar [PARLIB] $@
36         @mkdir -p $(@D)
37         $(V)$(AR) r $@ $(USER_PARLIB_SRC_OBJFILES) 2>/dev/null
38