aa7d182ccb1f9932ce07e579b73710679cc1d6db
[akaros.git] / user / apps / parlib / Makefrag
1 USER_APPS_PARLIB_DIR = $(USER_APPS_DIR)/parlib
2 OBJDIRS += $(USER_APPS_PARLIB_DIR)
3
4 USER_APPS_PARLIB_CFLAGS    := $(USER_CFLAGS) \
5                               -I$(USER_PARLIB_NEWLIB_DIR)/include
6
7 USER_APPS_PARLIB_LDFLAGS   := $(USER_LDFLAGS) -static \
8                               -T $(USER_APPS_PARLIB_DIR)/apps.ld
9
10 USER_APPS_PARLIB_LDDIRS    := -L$(OBJDIR)/$(USER_PARLIB_DIR) \
11                               -L$(USER_PARLIB_NEWLIB_DIR)/lib
12
13 USER_APPS_PARLIB_LDLIBS    := -lparlib -lc -lm -lg 
14
15 USER_APPS_PARLIB_LDOBJS    := $(OBJDIR)/$(USER_PARLIB_DIR)/entry.o
16
17 USER_APPS_PARLIB_LDDEPENDS := $(USER_APPS_PARLIB_LDOBJS) \
18                               $(OBJDIR)/$(USER_PARLIB_DIR)/libparlib.a \
19                               $(OBJDIR)/$(USER_APPS_PARLIB_DIR)/%.o       
20
21 USER_APPS_PARLIB_GCC_LIB   := $(GCC_LIB)
22
23 $(OBJDIR)/$(USER_APPS_PARLIB_DIR)/%.o: $(USER_APPS_PARLIB_DIR)/%.c
24         @echo + cc [APPS PARLIB] $<
25         @mkdir -p $(@D)
26         $(V)$(CC) $(USER_APPS_PARLIB_CFLAGS) -c -o $@ $<
27
28 $(OBJDIR)/$(USER_APPS_PARLIB_DIR)/%: $(USER_APPS_PARLIB_LDDEPENDS)
29         @echo + ld [APPS PARLIB] $@
30         $(V)$(LD) -o $@ $(USER_APPS_PARLIB_LDFLAGS) $@.o \
31                     $(USER_APPS_PARLIB_LDOBJS) $(USER_APPS_PARLIB_LDDIRS) \
32                     $(USER_APPS_PARLIB_LDLIBS) $(USER_APPS_PARLIB_GCC_LIB)
33         $(V)$(OBJDUMP) -S $@ > $@.asm
34         $(V)$(NM) -n $@ > $@.sym
35