Here we have it folks! Step right up, new make system!
[newos.git] / templates / lib.mk
blobcce23399b1282b3e1e181a191d0040b1943fc8dc
1 MY_TARGET_IN := $(MY_TARGET)
2 MY_STATIC_TARGET_IN := $(MY_STATIC_TARGET)
3 MY_TARGETDIR_IN := $(MY_TARGETDIR)
4 MY_SRCDIR_IN := $(MY_SRCDIR)
5 MY_OBJS_IN := $(MY_OBJS)
6 MY_CFLAGS_IN := $(MY_CFLAGS)
7 MY_INCLUDES_IN := $(MY_INCLUDES)
8 MY_LINKSCRIPT_IN := $(MY_LINKSCRIPT)
10 # create a new version in the target directory
11 _TEMP_OBJS := $(addprefix $(MY_TARGETDIR_IN)/,$(MY_OBJS_IN))
13 ALL_OBJS := $(ALL_OBJS) $(_TEMP_OBJS)
15 # add to the global deps
16 ALL_DEPS := $(ALL_DEPS) $(_TEMP_OBJS:.o=.d)
18 ifneq ($(MY_TARGET_IN), )
19 $(MY_TARGET_IN): MY_TARGET_IN:=$(MY_TARGET_IN)
20 $(MY_TARGET_IN): MY_LINKSCRIPT_IN:=$(MY_LINKSCRIPT_IN)
21 $(MY_TARGET_IN): MY_TARGETDIR_IN:=$(MY_TARGETDIR_IN)
22 $(MY_TARGET_IN): $(LIBGLUE) $(_TEMP_OBJS)
23 @mkdir -p $(MY_TARGETDIR_IN)
24 $(LD) $(GLOBAL_LDFLAGS) -shared -soname $(notdir $(MY_TARGET_IN)) --script=$(MY_LINKSCRIPT_IN) -o $@ $^
25 endif
26 ifneq ($(MY_STATIC_TARGET_IN), )
27 $(MY_STATIC_TARGET_IN): MY_TARGETDIR_IN:=$(MY_TARGETDIR_IN)
28 $(MY_STATIC_TARGET_IN): $(_TEMP_OBJS)
29 @mkdir -p $(MY_TARGETDIR_IN)
30 $(AR) r $@ $^
31 endif
33 include templates/compile.mk
35 MY_TARGET :=
36 MY_STATIC_TARGET :=
37 MY_TARGETDIR :=
38 MY_SRCDIR :=
39 MY_OBJS :=
40 MY_CFLAGS :=
41 MY_INCLUDES :=
42 MY_LINKSCRIPT :=