summaryrefslogtreecommitdiff
path: root/rbutil/libtools.make
diff options
context:
space:
mode:
Diffstat (limited to 'rbutil/libtools.make')
-rw-r--r--rbutil/libtools.make25
1 files changed, 17 insertions, 8 deletions
diff --git a/rbutil/libtools.make b/rbutil/libtools.make
index 1e5a297f79..d9ead7072d 100644
--- a/rbutil/libtools.make
+++ b/rbutil/libtools.make
@@ -58,11 +58,28 @@ all: $(BINARY)
58OBJS := $(patsubst %.c,%.o,$(addprefix $(OBJDIR),$(notdir $(SOURCES)))) 58OBJS := $(patsubst %.c,%.o,$(addprefix $(OBJDIR),$(notdir $(SOURCES))))
59LIBOBJS := $(patsubst %.c,%.o,$(addprefix $(OBJDIR),$(notdir $(LIBSOURCES)))) 59LIBOBJS := $(patsubst %.c,%.o,$(addprefix $(OBJDIR),$(notdir $(LIBSOURCES))))
60 60
61# additional link dependencies for the standalone executable
62# extra dependencies: libucl
63LIBUCL = libucl$(RBARCH).a
64$(LIBUCL): $(OBJDIR)$(LIBUCL)
65
66$(OBJDIR)$(LIBUCL):
67 $(SILENT)$(MAKE) -C $(TOP)/../tools/ucl/src TARGET_DIR=$(OBJDIR) $@
68
69# building the standalone executable
70$(BINARY): $(OBJS) $(EXTRADEPS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
71 @echo LD $@
72# $(SILENT)mkdir -p $(dir $@)
73# EXTRADEPS need to be built into OBJDIR.
74 $(SILENT)$(CROSS)$(CC) $(CFLAGS) -o $(BINARY) $(OBJS) $(addprefix $(OBJDIR),$(EXTRADEPS)) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
75
76# common rules
61$(OBJDIR)%.o: %.c 77$(OBJDIR)%.o: %.c
62 @echo CC $< 78 @echo CC $<
63 $(SILENT)mkdir -p $(dir $@) 79 $(SILENT)mkdir -p $(dir $@)
64 $(SILENT)$(CROSS)$(CC) $(CFLAGS) -c -o $@ $< 80 $(SILENT)$(CROSS)$(CC) $(CFLAGS) -c -o $@ $<
65 81
82# lib rules
66lib$(OUTPUT)$(RBARCH).a: $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a 83lib$(OUTPUT)$(RBARCH).a: $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a
67lib$(OUTPUT)$(RBARCH): $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a 84lib$(OUTPUT)$(RBARCH): $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a
68 85
@@ -71,14 +88,6 @@ $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) $(addprefix $(OBJDIR),$(EXTRALI
71 $(SILENT)mkdir -p $(dir $@) 88 $(SILENT)mkdir -p $(dir $@)
72 $(SILENT)$(AR) rucs $@ $^ 89 $(SILENT)$(AR) rucs $@ $^
73 90
74
75# building the standalone executable
76$(BINARY): $(OBJS) $(EXTRADEPS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
77 @echo LD $@
78# $(SILENT)mkdir -p $(dir $@)
79# EXTRADEPS need to be built into OBJDIR.
80 $(SILENT)$(CROSS)$(CC) $(CFLAGS) -o $(BINARY) $(OBJS) $(addprefix $(OBJDIR),$(EXTRADEPS)) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
81
82# some trickery to build ppc and i386 from a single call 91# some trickery to build ppc and i386 from a single call
83ifeq ($(RBARCH),) 92ifeq ($(RBARCH),)
84$(TARGET_DIR)lib$(OUTPUT)i386.a: 93$(TARGET_DIR)lib$(OUTPUT)i386.a: