summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2011-12-16 21:10:29 +0000
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2011-12-16 21:10:29 +0000
commit84205025c76b82343f157a4a21addecb72f7252b (patch)
tree9d011c744ed91c3bad5915095f0d9119de713e24
parent71c62c3e1b0e2c27447a00fef1367bb09edeb338 (diff)
downloadrockbox-84205025c76b82343f157a4a21addecb72f7252b.tar.gz
rockbox-84205025c76b82343f157a4a21addecb72f7252b.zip
libtools.make: add rule to build a DLL.
This only works for Windows, so you need to use it on Windows or set CROSS accordingly. Update mkamsboot to make mkamsboot.dll build and link against ucl.dll. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31333 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--rbutil/libtools.make10
-rw-r--r--rbutil/mkamsboot/Makefile7
2 files changed, 17 insertions, 0 deletions
diff --git a/rbutil/libtools.make b/rbutil/libtools.make
index 1ba0f77f72..227d61b7d4 100644
--- a/rbutil/libtools.make
+++ b/rbutil/libtools.make
@@ -98,6 +98,16 @@ lib$(OUTPUT)$(RBARCH): $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a
98 98
99$(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) \ 99$(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) \
100 $(addprefix $(OBJDIR),$(EXTRALIBOBJS)) 100 $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
101# rules to build a DLL. Only works for W32 as target (i.e. MinGW toolchain)
102dll: $(OUTPUT).dll
103$(OUTPUT).dll: $(TARGET_DIR)$(OUTPUT).dll
104$(TARGET_DIR)$(OUTPUT).dll: $(LIBOBJS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
105 @echo DLL $(notdir $@)
106 $(SILENT)mkdir -p $(dir $@)
107 $(SILENT)$(CROSS)$(CC) $(CFLAGS) -shared -o $@ $^ \
108 -Wl,--output-def,$(TARGET_DIR)$(OUTPUT).def
109
110$(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS))
101 @echo AR $(notdir $@) 111 @echo AR $(notdir $@)
102 $(SILENT)mkdir -p $(dir $@) 112 $(SILENT)mkdir -p $(dir $@)
103 $(SILENT)$(AR) rucs $@ $^ 113 $(SILENT)$(AR) rucs $@ $^
diff --git a/rbutil/mkamsboot/Makefile b/rbutil/mkamsboot/Makefile
index 5379e1376f..67fe91e51d 100644
--- a/rbutil/mkamsboot/Makefile
+++ b/rbutil/mkamsboot/Makefile
@@ -22,3 +22,10 @@ include ../libtools.make
22$(OBJDIR)mkamsboot.o: dualboot.h dualboot.c mkamsboot.c mkamsboot.h 22$(OBJDIR)mkamsboot.o: dualboot.h dualboot.c mkamsboot.c mkamsboot.h
23$(OBJDIR)main.o: dualboot.h dualboot.c main.c mkamsboot.h 23$(OBJDIR)main.o: dualboot.h dualboot.c main.c mkamsboot.h
24 24
25
26$(TARGET_DIR)$(OUTPUT).dll: EXTRALIBOBJS += $(TARGET_DIR)ucl.dll
27$(TARGET_DIR)$(OUTPUT).dll: $(TARGET_DIR)ucl.dll
28$(TARGET_DIR)ucl.dll:
29 $(SILENT)$(MAKE) -C ../../tools/ucl/src/ \
30 BUILD_DIR=$(BUILD_DIR) CC=$(CC) CROSS=$(CROSS) \
31 TARGET_DIR=$(TARGET_DIR)/ ucl.dll