[SCM] pd-beatpipe/master: patched Makefile to build on kFreeBSD and Hurd (Closes: #605822)
eighthave-guest at users.alioth.debian.org
eighthave-guest at users.alioth.debian.org
Tue Dec 21 00:21:44 UTC 2010
The following commit has been merged in the master branch:
commit 6fec3a65a402281b389711342a8d9d3a8a3a9028
Author: Hans-Christoph Steiner <hans at eds.org>
Date: Mon Dec 20 19:13:55 2010 -0500
patched Makefile to build on kFreeBSD and Hurd (Closes: #605822)
diff --git a/debian/patches/makefile_update_for_kfreebsd_and_hurd b/debian/patches/makefile_update_for_kfreebsd_and_hurd
new file mode 100644
index 0000000..7fd346b
--- /dev/null
+++ b/debian/patches/makefile_update_for_kfreebsd_and_hurd
@@ -0,0 +1,358 @@
+Description: updated Makefile to build on kFreeBSD and Hurd
+ This patch takes the upstream template Makefile with new code for handling
+ building using kFreeBSD and Hurd kernels. This Makefile is already included
+ in the upstream SVN repository, but there is no new release yet.
+
+Author: Hans-Christoph Steiner <hans at eds.org>
+Bug-Debian: http://bugs.debian.org/605822
+Forwarded: not-needed
+Reviewed-By: Hans-Christoph Steiner <hans at eds.org>
+Last-Update: <2010-12-19>
+
+--- pd-beatpipe-0.1.orig/Makefile
++++ pd-beatpipe-0.1/Makefile
+@@ -1,21 +1,12 @@
+-## Pd library beatpipe version 1.0.1
+-# For instructions on how to use this beatpipe, see:
+-# http://puredata.info/docs/developer/MakefileBeatpipe
++## Pd library template version 1.0.6
++# For instructions on how to use this template, see:
++# http://puredata.info/docs/developer/MakefileTemplate
+ LIBRARY_NAME = beatpipe
+
+-# add your .c source files to the SOURCES variable, help files will be
+-# included automatically
++# add your .c source files, one object per file, to the SOURCES
++# variable, help files will be included automatically
+ SOURCES = beatpipe.c
+
+-# For objects that only build on certain platforms, add those to the SOURCES
+-# line for the right platforms.
+-SOURCES_android =
+-SOURCES_cygwin =
+-SOURCES_macosx =
+-SOURCES_iphoneos =
+-SOURCES_linux =
+-SOURCES_windows =
+-
+ # list all pd objects (i.e. myobject.pd) files here, and their helpfiles will
+ # be included automatically
+ PDOBJECTS =
+@@ -27,7 +18,7 @@ EXAMPLES =
+ MANUAL =
+
+ # if you want to include any other files in the source and binary tarballs,
+-# list them here. This can be anything from header files, example patches,
++# list them here. This can be anything from header files, test patches,
+ # documentation, etc. README.txt and LICENSE.txt are required and therefore
+ # automatically included
+ EXTRA_DIST =
+@@ -36,6 +27,17 @@ EXTRA_DIST =
+
+ #------------------------------------------------------------------------------#
+ #
++# things you might need to edit if you are using other C libraries
++#
++#------------------------------------------------------------------------------#
++
++# -I"$(PD_INCLUDE)/pd" supports the header location for 0.43
++CFLAGS = -I"$(PD_INCLUDE)/pd" -Wall -W -g
++LDFLAGS =
++LIBS =
++
++#------------------------------------------------------------------------------#
++#
+ # you shouldn't need to edit anything below here, if we did it right :)
+ #
+ #------------------------------------------------------------------------------#
+@@ -43,27 +45,25 @@ EXTRA_DIST =
+ # get library version from meta file
+ LIBRARY_VERSION = $(shell sed -n 's|^\#X text [0-9][0-9]* [0-9][0-9]* VERSION \(.*\);|\1|p' $(LIBRARY_NAME)-meta.pd)
+
+-# where Pd lives
+-PD_PATH = ../../pd
+-# where to install the library
++CFLAGS += -DPD -DVERSION='"$(LIBRARY_VERSION)"'
++
++PD_INCLUDE = $(PD_PATH)/include
++# where to install the library, overridden below depending on platform
+ prefix = /usr/local
+ libdir = $(prefix)/lib
+ pkglibdir = $(libdir)/pd-externals
+ objectsdir = $(pkglibdir)
+
+-
+ INSTALL = install
+-INSTALL_FILE = $(INSTALL) -p -m 644
++INSTALL_PROGRAM = $(INSTALL) -p -m 644
++INSTALL_DATA = $(INSTALL) -p -m 644
+ INSTALL_DIR = $(INSTALL) -p -m 755 -d
+
+-CFLAGS = -DPD -I$(PD_PATH)/src -Wall -W -g
+-LDFLAGS =
+-LIBS =
+ ALLSOURCES := $(SOURCES) $(SOURCES_android) $(SOURCES_cygwin) $(SOURCES_macosx) \
+ $(SOURCES_iphoneos) $(SOURCES_linux) $(SOURCES_windows)
+
+ DISTDIR=$(LIBRARY_NAME)-$(LIBRARY_VERSION)
+-ORIGDIR=pd-$(LIBRARY_NAME)_$(LIBRARY_VERSION)
++ORIGDIR=pd-$(LIBRARY_NAME:~=)_$(LIBRARY_VERSION)
+
+ UNAME := $(shell uname -s)
+ ifeq ($(UNAME),Darwin)
+@@ -72,6 +72,7 @@ ifeq ($(UNAME),Darwin)
+ SOURCES += $(SOURCES_iphoneos)
+ EXTENSION = pd_darwin
+ OS = iphoneos
++ PD_PATH = /Applications/Pd-extended.app/Contents/Resources
+ IPHONE_BASE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin
+ CC=$(IPHONE_BASE)/gcc
+ CPP=$(IPHONE_BASE)/cpp
+@@ -79,8 +80,7 @@ ifeq ($(UNAME),Darwin)
+ ISYSROOT = -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk
+ IPHONE_CFLAGS = -miphoneos-version-min=3.0 $(ISYSROOT) -arch armv6
+ OPT_CFLAGS = -fast -funroll-loops -fomit-frame-pointer
+- CFLAGS := $(IPHONE_CFLAGS) $(OPT_CFLAGS) $(CFLAGS) \
+- -I/Applications/Pd-extended.app/Contents/Resources/include
++ CFLAGS := $(IPHONE_CFLAGS) $(OPT_CFLAGS) $(CFLAGS)
+ LDFLAGS += -arch armv6 -bundle -undefined dynamic_lookup $(ISYSROOT)
+ LIBS += -lc
+ STRIP = strip -x
+@@ -89,6 +89,7 @@ ifeq ($(UNAME),Darwin)
+ SOURCES += $(SOURCES_macosx)
+ EXTENSION = pd_darwin
+ OS = macosx
++ PD_PATH = /Applications/Pd-extended.app/Contents/Resources
+ OPT_CFLAGS = -ftree-vectorize -ftree-vectorizer-verbose=2 -fast
+ # build universal 32-bit on 10.4 and 32/64 on newer
+ ifeq ($(shell uname -r | sed 's|\([0-9][0-9]*\)\.[0-9][0-9]*\.[0-9][0-9]*|\1|'), 8)
+@@ -97,8 +98,7 @@ ifeq ($(UNAME),Darwin)
+ FAT_FLAGS = -arch ppc -arch i386 -arch x86_64 -mmacosx-version-min=10.4
+ SOURCES += $(SOURCES_iphoneos)
+ endif
+- CFLAGS += $(FAT_FLAGS) -fPIC -I/sw/include \
+- -I/Applications/Pd-extended.app/Contents/Resources/include
++ CFLAGS += $(FAT_FLAGS) -fPIC -I/sw/include
+ LDFLAGS += $(FAT_FLAGS) -bundle -undefined dynamic_lookup -L/sw/lib
+ # if the 'pd' binary exists, check the linking against it to aid with stripping
+ LDFLAGS += $(shell test -e $(PD_PATH)/bin/pd && echo -bundle_loader $(PD_PATH)/bin/pd)
+@@ -110,9 +110,39 @@ ifeq ($(UNAME),Darwin)
+ endif
+ endif
+ ifeq ($(UNAME),Linux)
++ CPU := $(shell uname -m)
+ SOURCES += $(SOURCES_linux)
+ EXTENSION = pd_linux
+ OS = linux
++ PD_PATH = /usr
++ OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
++ CFLAGS += -fPIC
++ LDFLAGS += -Wl,--export-dynamic -shared -fPIC
++ LIBS += -lc
++ STRIP = strip --strip-unneeded -R .note -R .comment
++ DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m)
++endif
++ifeq ($(UNAME),GNU)
++ # GNU/Hurd, should work like GNU/Linux for basically all externals
++ CPU := $(shell uname -m)
++ SOURCES += $(SOURCES_linux)
++ EXTENSION = pd_linux
++ OS = linux
++ PD_PATH = /usr
++ OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
++ CFLAGS += -fPIC
++ LDFLAGS += -Wl,--export-dynamic -shared -fPIC
++ LIBS += -lc
++ STRIP = strip --strip-unneeded -R .note -R .comment
++ DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m)
++endif
++ifeq ($(UNAME),GNU/kFreeBSD)
++ # Debian GNU/kFreeBSD, should work like GNU/Linux for basically all externals
++ CPU := $(shell uname -m)
++ SOURCES += $(SOURCES_linux)
++ EXTENSION = pd_linux
++ OS = linux
++ PD_PATH = /usr
+ OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
+ CFLAGS += -fPIC
+ LDFLAGS += -Wl,--export-dynamic -shared -fPIC
+@@ -121,32 +151,39 @@ ifeq ($(UNAME),Linux)
+ DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m)
+ endif
+ ifeq (CYGWIN,$(findstring CYGWIN,$(UNAME)))
++ CPU := $(shell uname -m)
+ SOURCES += $(SOURCES_cygwin)
+ EXTENSION = dll
+ OS = cygwin
++ PD_PATH = $(cygpath $(PROGRAMFILES))/pd
+ OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
+ CFLAGS +=
+- LDFLAGS += -Wl,--export-dynamic -shared -L$(PD_PATH)/src
++ LDFLAGS += -Wl,--export-dynamic -shared -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin"
+ LIBS += -lc -lpd
+ STRIP = strip --strip-unneeded -R .note -R .comment
+ DISTBINDIR=$(DISTDIR)-$(OS)
+ endif
+ ifeq (MINGW,$(findstring MINGW,$(UNAME)))
++ CPU := $(shell uname -m)
+ SOURCES += $(SOURCES_windows)
+ EXTENSION = dll
+ OS = windows
+- OPT_CFLAGS = -O3 -funroll-loops -fomit-frame-pointer -march=i686 -mtune=pentium4
++ PD_PATH = $(shell cd "$(PROGRAMFILES)"/pd && pwd)
++ OPT_CFLAGS = -O3 -funroll-loops -fomit-frame-pointer
+ CFLAGS += -mms-bitfields
+ LDFLAGS += -s -shared -Wl,--enable-auto-import
+- LIBS += -L$(PD_PATH)/src -L$(PD_PATH)/bin -L$(PD_PATH)/obj -lpd -lwsock32 -lkernel32 -luser32 -lgdi32
++ LIBS += -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin" -L"$(PD_PATH)/obj" -lpd -lwsock32 -lkernel32 -luser32 -lgdi32
+ STRIP = strip --strip-unneeded -R .note -R .comment
+ DISTBINDIR=$(DISTDIR)-$(OS)
+ endif
+
++# in case somebody manually set the HELPPATCHES above
++HELPPATCHES ?= $(SOURCES:.c=-help.pd) $(PDOBJECTS:.pd=-help.pd)
++
+ CFLAGS += $(OPT_CFLAGS)
+
+
+-.PHONY = install libdir_install single_install install-doc install-exec install-examples install-manual clean dist etags
++.PHONY = install libdir_install single_install install-doc install-exec install-examples install-manual clean dist etags $(LIBRARY_NAME)
+
+ all: $(SOURCES:.c=.$(EXTENSION))
+
+@@ -162,56 +199,52 @@ $(LIBRARY_NAME): $(SOURCES:.c=.o) $(LIBR
+ $(CC) $(LDFLAGS) -o $(LIBRARY_NAME).$(EXTENSION) $(SOURCES:.c=.o) $(LIBRARY_NAME).o $(LIBS)
+ chmod a-x $(LIBRARY_NAME).$(EXTENSION)
+
+-
+ install: libdir_install
+
+ # The meta and help files are explicitly installed to make sure they are
+ # actually there. Those files are not optional, then need to be there.
+ libdir_install: $(SOURCES:.c=.$(EXTENSION)) install-doc install-examples install-manual
+ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+- $(INSTALL_FILE) $(LIBRARY_NAME)-meta.pd \
++ $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd \
+ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+ test -z "$(strip $(SOURCES))" || (\
+- $(INSTALL_FILE) $(SOURCES:.c=.$(EXTENSION)) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) && \
++ $(INSTALL_PROGRAM) $(SOURCES:.c=.$(EXTENSION)) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) && \
+ $(STRIP) $(addprefix $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/,$(SOURCES:.c=.$(EXTENSION))))
+ test -z "$(strip $(PDOBJECTS))" || \
+- $(INSTALL_FILE) $(PDOBJECTS) \
++ $(INSTALL_DATA) $(PDOBJECTS) \
+ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+
+ # install library linked as single binary
+ single_install: $(LIBRARY_NAME) install-doc install-exec
+ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+- $(INSTALL_FILE) $(LIBRARY_NAME).$(EXTENSION) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
++ $(INSTALL_PROGRAM) $(LIBRARY_NAME).$(EXTENSION) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+ $(STRIP) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/$(LIBRARY_NAME).$(EXTENSION)
+
+ install-doc:
+ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+- test -z "$(strip $(SOURCES))" || \
+- $(INSTALL_FILE) $(SOURCES:.c=-help.pd) \
++ test -z "$(strip $(SOURCES) $(PDOBJECTS))" || \
++ $(INSTALL_DATA) $(HELPPATCHES) \
+ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+- test -z "$(strip $(PDOBJECTS))" || \
+- $(INSTALL_FILE) $(PDOBJECTS:.pd=-help.pd) \
+- $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+- $(INSTALL_FILE) README.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/README.txt
+- $(INSTALL_FILE) LICENSE.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/LICENSE.txt
++ $(INSTALL_DATA) README.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/README.txt
++ $(INSTALL_DATA) LICENSE.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/LICENSE.txt
+
+ install-examples:
+ test -z "$(strip $(EXAMPLES))" || \
+ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/examples && \
+ for file in $(EXAMPLES); do \
+- $(INSTALL_FILE) examples/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/examples; \
++ $(INSTALL_DATA) examples/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/examples; \
+ done
+
+ install-manual:
+ test -z "$(strip $(MANUAL))" || \
+ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/manual && \
+ for file in $(MANUAL); do \
+- $(INSTALL_FILE) manual/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/manual; \
++ $(INSTALL_DATA) manual/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/manual; \
+ done
+
+
+ clean:
+- -rm -f -- $(SOURCES:.c=.o)
++ -rm -f -- $(SOURCES:.c=.o) $(SOURCES_LIB:.c=.o)
+ -rm -f -- $(SOURCES:.c=.$(EXTENSION))
+ -rm -f -- $(LIBRARY_NAME).o
+ -rm -f -- $(LIBRARY_NAME).$(EXTENSION)
+@@ -229,11 +262,11 @@ $(DISTBINDIR):
+ $(INSTALL_DIR) $(DISTBINDIR)
+
+ libdir: all $(DISTBINDIR)
+- $(INSTALL_FILE) $(LIBRARY_NAME)-meta.pd $(DISTBINDIR)
+- $(INSTALL_FILE) $(SOURCES) $(DISTBINDIR)
+- $(INSTALL_FILE) $(SOURCES:.c=-help.pd) $(DISTBINDIR)
++ $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd $(DISTBINDIR)
++ $(INSTALL_DATA) $(SOURCES) $(DISTBINDIR)
++ $(INSTALL_DATA) $(HELPPATCHES) $(DISTBINDIR)
+ test -z "$(strip $(EXTRA_DIST))" || \
+- $(INSTALL_FILE) $(EXTRA_DIST) $(DISTBINDIR)
++ $(INSTALL_DATA) $(EXTRA_DIST) $(DISTBINDIR)
+ # tar --exclude-vcs -czpf $(DISTBINDIR).tar.gz $(DISTBINDIR)
+
+ $(DISTDIR):
+@@ -243,29 +276,27 @@ $(ORIGDIR):
+ $(INSTALL_DIR) $(ORIGDIR)
+
+ dist: $(DISTDIR)
+- $(INSTALL_FILE) Makefile $(DISTDIR)
+- $(INSTALL_FILE) README.txt $(DISTDIR)
+- $(INSTALL_FILE) LICENSE.txt $(DISTDIR)
+- $(INSTALL_FILE) $(LIBRARY_NAME)-meta.pd $(DISTDIR)
++ $(INSTALL_DATA) Makefile $(DISTDIR)
++ $(INSTALL_DATA) README.txt $(DISTDIR)
++ $(INSTALL_DATA) LICENSE.txt $(DISTDIR)
++ $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd $(DISTDIR)
+ test -z "$(strip $(ALLSOURCES))" || \
+- $(INSTALL_FILE) $(ALLSOURCES) $(DISTDIR)
+- test -z "$(strip $(ALLSOURCES))" || \
+- $(INSTALL_FILE) $(ALLSOURCES:.c=-help.pd) $(DISTDIR)
+- test -z "$(strip $(PDOBJECTS))" || \
+- $(INSTALL_FILE) $(PDOBJECTS) $(DISTDIR)
++ $(INSTALL_DATA) $(ALLSOURCES) $(DISTDIR)
+ test -z "$(strip $(PDOBJECTS))" || \
+- $(INSTALL_FILE) $(PDOBJECTS:.pd=-help.pd) $(DISTDIR)
++ $(INSTALL_DATA) $(PDOBJECTS) $(DISTDIR)
++ test -z "$(strip $(HELPPATCHES))" || \
++ $(INSTALL_DATA) $(HELPPATCHES) $(DISTDIR)
+ test -z "$(strip $(EXTRA_DIST))" || \
+- $(INSTALL_FILE) $(EXTRA_DIST) $(DISTDIR)
++ $(INSTALL_DATA) $(EXTRA_DIST) $(DISTDIR)
+ test -z "$(strip $(EXAMPLES))" || \
+ $(INSTALL_DIR) $(DISTDIR)/examples && \
+ for file in $(EXAMPLES); do \
+- $(INSTALL_FILE) examples/$$file $(DISTDIR)/examples; \
++ $(INSTALL_DATA) examples/$$file $(DISTDIR)/examples; \
+ done
+ test -z "$(strip $(MANUAL))" || \
+ $(INSTALL_DIR) $(DISTDIR)/manual && \
+ for file in $(MANUAL); do \
+- $(INSTALL_FILE) manual/$$file $(DISTDIR)/manual; \
++ $(INSTALL_DATA) manual/$$file $(DISTDIR)/manual; \
+ done
+ tar --exclude-vcs -czpf $(DISTDIR).tar.gz $(DISTDIR)
+
+@@ -283,6 +314,10 @@ etags:
+ etags *.h $(SOURCES) ../../pd/src/*.[ch] /usr/include/*.h /usr/include/*/*.h
+
+ showsetup:
++ @echo "CFLAGS: $(CFLAGS)"
++ @echo "LDFLAGS: $(LDFLAGS)"
++ @echo "LIBS: $(LIBS)"
++ @echo "PD_INCLUDE: $(PD_INCLUDE)"
+ @echo "PD_PATH: $(PD_PATH)"
+ @echo "objectsdir: $(objectsdir)"
+ @echo "LIBRARY_NAME: $(LIBRARY_NAME)"
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..661cce5
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+makefile_update_for_kfreebsd_and_hurd
--
pd-beatpipe packaging
More information about the pkg-multimedia-commits
mailing list