From: IOhannes m zmölnig Date: Wed, 10 Feb 2016 19:28:05 +0000 (+0100) Subject: allow building Debug and Release libraries X-Git-Tag: archive/raspbian/5.4.5_ds0-1+rpi1~1^2~315 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e1ba8bdcc84fe6ad6da8e036dfeaf23734cd969c;p=juce.git allow building Debug and Release libraries --- diff --git a/debian/libbuilder/Makefile b/debian/libbuilder/Makefile index c45e2181..d91d430a 100644 --- a/debian/libbuilder/Makefile +++ b/debian/libbuilder/Makefile @@ -117,24 +117,27 @@ JUCE_LDFLAGS += \ OBJECTS_RELEASE=$(SOURCES:%.cpp=$(OBJDIR_RELEASE)/%.o) OBJECTS_DEBUG=$(SOURCES:%.cpp=$(OBJDIR_DEBUG)/%.o) -.PHONY: all clean install install-lib install-headers install-pkgconfig test introjucer +.PHONY: all clean install install-lib-release install-lib-debug install-headers install-pkgconfig introjucer all: $(TARGET) introjucer -$(OUTDIR)/$(TARGET_RELEASE): $(OBJECTS) $(RESOURCES) +$(OBJDIR_RELEASE)/dir_stamp: + @mkdir -p $(OBJDIR_RELEASE) + @touch $@ +$(OBJDIR_DEBUG)/dir_stamp: + @mkdir -p $(OBJDIR_DEBUG) + @touch $@ + +$(OUTDIR)/$(TARGET_RELEASE): $(OBJECTS_RELEASE) $(RESOURCES) @echo Linking $(TARGET_RELEASE) - -@mkdir -p $(OUTDIR) $(CXX) -o $@ $^ -Wl,-soname,$(TARGET_RELEASE).$(SHORTSONAME) $(JUCE_LDFLAGS) $(JUCE_LDFLAGS_RELEASE) $(LDFLAGS) $(TARGET_ARCH) -$(OBJDIR_RELEASE)/%.o: %.cpp libjuce_builddate.h - mkdir -p "$(OBJDIR_RELEASE)" +$(OBJDIR_RELEASE)/%.o: %.cpp libjuce_builddate.h $(OBJDIR_RELEASE)/dir_stamp $(CXX) $(JUCE_CPPFLAGS) $(JUCE_CFLAGS_RELEASE) $(JUCE_CFLAGS) $(JUCE_CXXFLAGS) $(CPPFLAGS) $(CXXFLAGS) -o "$@" -c "$<" -$(OUTDIR)/$(TARGET_DEBUG): $(OBJECTS) $(RESOURCES) +$(OUTDIR)/$(TARGET_DEBUG): $(OBJECTS_DEBUG) $(RESOURCES) @echo Linking $(TARGET_DEBUG) - -@mkdir -p $(OUTDIR) $(CXX) -o $@ $^ -Wl,-soname,$(TARGET_DEBUG).$(SHORTSONAME) $(JUCE_LDFLAGS) $(JUCE_LDFLAGS_DEBUG) $(LDFLAGS) $(TARGET_ARCH) -$(OBJDIR_DEBUG)/%.o: %.cpp libjuce_builddate.h - mkdir -p "$(OBJDIR_DEBUG)" +$(OBJDIR_DEBUG)/%.o: %.cpp libjuce_builddate.h $(OBJDIR_DEBUG)/dir_stamp $(CXX) $(JUCE_CPPFLAGS) $(JUCE_CFLAGS_DEBUG) $(JUCE_CFLAGS) $(JUCE_CXXFLAGS) $(CPPFLAGS) $(CXXFLAGS) -o "$@" -c "$<" libjuce_builddate.h: @@ -147,33 +150,38 @@ clean: $(MAKE) -C $(DEMO_PATH) clean $(MAKE) -C $(INTROJUCER_PATH) clean -install-lib: $(OUTDIR)/$(TARGET) - @echo Installing juce_dll +install-lib-release: $(OUTDIR)/$(TARGET_RELEASE) + @echo Installing $(TARGET_RELEASE) + install -d $(DESTDIR)$(libdir) + install -m664 $^ $(DESTDIR)$(libdir)/$(notdir $^).$(SONAME) + ln -s $(notdir $^).$(SONAME) $(DESTDIR)$(libdir)/$(notdir $^) + ln -s $(notdir $^).$(SONAME) $(DESTDIR)$(libdir)/$(notdir $^).$(SHORTSONAME) +install-lib-debug: $(OUTDIR)/$(TARGET_DEBUG) + @echo Installing $(TARGET_DEBUG) install -d $(DESTDIR)$(libdir) - install -m664 $^ $(DESTDIR)$(libdir)/$(TARGET).$(SONAME) - ln -s $(TARGET).$(SONAME) $(DESTDIR)$(libdir)/$(TARGET) - ln -s $(TARGET).$(SONAME) $(DESTDIR)$(libdir)/$(TARGET).$(SHORTSONAME) -install-pkgconfig: juce.pc - @echo Installing juce_dll + install -m664 $^ $(DESTDIR)$(libdir)/$(notdir $^).$(SONAME) + ln -s $(notdir $^).$(SONAME) $(DESTDIR)$(libdir)/$(notdir $^) + ln -s $(notdir $^).$(SONAME) $(DESTDIR)$(libdir)/$(notdir $^).$(SHORTSONAME) + +install-pkgconfig: juce-dbg.pc juce.pc + @echo Installing $^ + sed -e 's|^\(Libs: -ljuce\)|\1_d|' -i $< install -d $(DESTDIR)$(libdir)/pkgconfig - install -m664 $^ $(DESTDIR)$(libdir)/pkgconfig/$^ + install -m664 $^ $(DESTDIR)$(libdir)/pkgconfig/ install-headers: - @echo Installing juce_dll + @echo Installing JUCE headers install -d $(DESTDIR)$(includedir)/juce cd $(JUCE_PATH) && find modules/ -type f -name "juce_*.h" -exec cp --parent {} $(DESTDIR)$(includedir)/juce \; cd $(JUCE_PATH) && find modules/juce_box2d/box2d/ -type f -name "*.h" -exec cp --parent {} $(DESTDIR)$(includedir)/juce \; -install: install-headers install-lib install-pkgconfig +install: install-headers install-lib-release install-lib-debug install-pkgconfig -include $(OBJECTS:%.o=%.d) -test: - $(MAKE) -C $(DEMO_PATH) - introjucer: $(OUTDIR)/$(TARGET_RELEASE) - $(MAKE) -C $(INTROJUCER_PATH) CONFIG=Release CPPFLAGS="$(CPPFLAGS) $(JUCELIBS_CPPFLAGS)" CFLAGS="$(CFLAGS) $(JUCELIBS_CFLAGS)" LDFLAGS="$(LDFLAGS) $(JUCELIBS_LIBS)" + $(MAKE) -C $(INTROJUCER_PATH) CONFIG=Release CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" -juce.pc: juce.pc.in +juce-dbg.pc juce.pc: juce.pc.in sed \ -e 's|@prefix@|$(prefix)|g' \ -e 's|@libdir@|$(libdir)|g' \