[SCM] juce/master: allow building Debug and Release libraries

umlaeute at users.alioth.debian.org umlaeute at users.alioth.debian.org
Wed Feb 10 20:53:48 UTC 2016


The following commit has been merged in the master branch:
commit e1ba8bdcc84fe6ad6da8e036dfeaf23734cd969c
Author: IOhannes m zmölnig <zmoelnig at umlautQ.umlaeute.mur.at>
Date:   Wed Feb 10 20:28:05 2016 +0100

    allow building Debug and Release libraries

diff --git a/debian/libbuilder/Makefile b/debian/libbuilder/Makefile
index c45e218..d91d430 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)
-	- at 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)
-	- at 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' \

-- 
juce packaging



More information about the pkg-multimedia-commits mailing list