diff options
| author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2011-12-16 21:10:29 +0000 |
|---|---|---|
| committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2011-12-16 21:10:29 +0000 |
| commit | 84205025c76b82343f157a4a21addecb72f7252b (patch) | |
| tree | 9d011c744ed91c3bad5915095f0d9119de713e24 | |
| parent | 71c62c3e1b0e2c27447a00fef1367bb09edeb338 (diff) | |
| download | rockbox-84205025c76b82343f157a4a21addecb72f7252b.zip rockbox-84205025c76b82343f157a4a21addecb72f7252b.tar.gz rockbox-84205025c76b82343f157a4a21addecb72f7252b.tar.bz2 rockbox-84205025c76b82343f157a4a21addecb72f7252b.tar.xz | |
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.make | 10 | ||||
| -rw-r--r-- | rbutil/mkamsboot/Makefile | 7 |
2 files changed, 17 insertions, 0 deletions
diff --git a/rbutil/libtools.make b/rbutil/libtools.make index 1ba0f77..227d61b 100644 --- a/rbutil/libtools.make +++ b/rbutil/libtools.make @@ -98,6 +98,16 @@ lib$(OUTPUT)$(RBARCH): $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a $(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) \ $(addprefix $(OBJDIR),$(EXTRALIBOBJS)) +# rules to build a DLL. Only works for W32 as target (i.e. MinGW toolchain) +dll: $(OUTPUT).dll +$(OUTPUT).dll: $(TARGET_DIR)$(OUTPUT).dll +$(TARGET_DIR)$(OUTPUT).dll: $(LIBOBJS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS)) + @echo DLL $(notdir $@) + $(SILENT)mkdir -p $(dir $@) + $(SILENT)$(CROSS)$(CC) $(CFLAGS) -shared -o $@ $^ \ + -Wl,--output-def,$(TARGET_DIR)$(OUTPUT).def + +$(TARGET_DIR)lib$(OUTPUT)$(RBARCH).a: $(LIBOBJS) $(addprefix $(OBJDIR),$(EXTRALIBOBJS)) @echo AR $(notdir $@) $(SILENT)mkdir -p $(dir $@) $(SILENT)$(AR) rucs $@ $^ diff --git a/rbutil/mkamsboot/Makefile b/rbutil/mkamsboot/Makefile index 5379e13..67fe91e 100644 --- a/rbutil/mkamsboot/Makefile +++ b/rbutil/mkamsboot/Makefile @@ -22,3 +22,10 @@ include ../libtools.make $(OBJDIR)mkamsboot.o: dualboot.h dualboot.c mkamsboot.c mkamsboot.h $(OBJDIR)main.o: dualboot.h dualboot.c main.c mkamsboot.h + +$(TARGET_DIR)$(OUTPUT).dll: EXTRALIBOBJS += $(TARGET_DIR)ucl.dll +$(TARGET_DIR)$(OUTPUT).dll: $(TARGET_DIR)ucl.dll +$(TARGET_DIR)ucl.dll: + $(SILENT)$(MAKE) -C ../../tools/ucl/src/ \ + BUILD_DIR=$(BUILD_DIR) CC=$(CC) CROSS=$(CROSS) \ + TARGET_DIR=$(TARGET_DIR)/ ucl.dll |