[SCM] pd-arraysize/master: fix FTBFS build issue on GNU/Hurd (Fixes: #681928)

eighthave at users.alioth.debian.org eighthave at users.alioth.debian.org
Tue Aug 7 01:31:02 UTC 2012


The following commit has been merged in the master branch:
commit e2987cea89c034e75dbbfe4c2dc3bfd1e16c55a0
Author: Hans-Christoph Steiner <hans at eds.org>
Date:   Mon Aug 6 20:47:54 2012 -0400

    fix FTBFS build issue on GNU/Hurd (Fixes: #681928)

diff --git a/debian/patches/fix-gnu-hurd-build.patch b/debian/patches/fix-gnu-hurd-build.patch
new file mode 100644
index 0000000..a70110b
--- /dev/null
+++ b/debian/patches/fix-gnu-hurd-build.patch
@@ -0,0 +1,526 @@
+Description: fix the GNU/Hurd build
+ This is a patch taken from upstream to fix the FTBFS on GNU/Hurd.
+Author: Hans-Christoph Steiner <hans at eds.org>
+
+Origin: upstream
+Bug-Debian: http://bugs.debian.org/681928
+Forwarded: http://pure-data.svn.sourceforge.net/viewvc/pure-data/trunk/externals/arraysize/Makefile?revision=16159&view=markup
+Last-Update: <2012-08-06>
+
+--- pd-arraysize-0.1.orig/Makefile
++++ pd-arraysize-0.1/Makefile
+@@ -1,21 +1,13 @@
+-## Pd library template version 1.0.1
++## Pd library template version 1.0.12
+ # For instructions on how to use this template, see:
+-#  http://puredata.info/docs/developer/MakefileArraysize
++#  http://puredata.info/docs/developer/MakefileTemplate
+ LIBRARY_NAME = arraysize
+ 
+-# 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, and for GUI
++# objects, the matching .tcl file too
+ SOURCES = arraysize.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,11 +19,26 @@ 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 = 
+ 
++# unit tests and related files here, in the 'unittests' subfolder
++UNITTESTS = 
++
++
++
++#------------------------------------------------------------------------------#
++#
++# things you might need to edit if you are using other C libraries
++#
++#------------------------------------------------------------------------------#
++
++ALL_CFLAGS = -I"$(PD_INCLUDE)"
++ALL_LDFLAGS =  
++SHARED_LDFLAGS =
++ALL_LIBS = 
+ 
+ 
+ #------------------------------------------------------------------------------#
+@@ -40,30 +47,34 @@ EXTRA_DIST =
+ #
+ #------------------------------------------------------------------------------#
+ 
++# these can be set from outside without (usually) breaking the build
++CFLAGS = -Wall -W -g
++LDFLAGS =
++LIBS =
++
+ # 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
++ALL_CFLAGS += -DPD -DVERSION='"$(LIBRARY_VERSION)"'
++
++PD_INCLUDE = $(PD_PATH)/include/pd
++# 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)
++	         $(SOURCES_iphoneos) $(SOURCES_linux) $(SOURCES_windows) \
++	         $(SOURCES_gnu)
+ 
+ DISTDIR=$(LIBRARY_NAME)-$(LIBRARY_VERSION)
+-ORIGDIR=pd-$(LIBRARY_NAME)_$(LIBRARY_VERSION)
++ORIGDIR=pd-$(LIBRARY_NAME:~=)_$(LIBRARY_VERSION)
+ 
+ UNAME := $(shell uname -s)
+ ifeq ($(UNAME),Darwin)
+@@ -71,7 +82,9 @@ ifeq ($(UNAME),Darwin)
+   ifeq ($(CPU),arm) # iPhone/iPod Touch
+     SOURCES += $(SOURCES_iphoneos)
+     EXTENSION = pd_darwin
++    SHARED_EXTENSION = dylib
+     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,16 +92,18 @@ 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
+-    LDFLAGS += -arch armv6 -bundle -undefined dynamic_lookup $(ISYSROOT)
+-    LIBS += -lc 
++    ALL_CFLAGS := $(IPHONE_CFLAGS) $(ALL_CFLAGS)
++    ALL_LDFLAGS += -arch armv6 -bundle -undefined dynamic_lookup $(ISYSROOT)
++    SHARED_LDFLAGS += -arch armv6 -dynamiclib -undefined dynamic_lookup $(ISYSROOT)
++    ALL_LIBS += -lc $(LIBS_iphoneos)
+     STRIP = strip -x
+     DISTBINDIR=$(DISTDIR)-$(OS)
+   else # Mac OS X
+     SOURCES += $(SOURCES_macosx)
+     EXTENSION = pd_darwin
++    SHARED_EXTENSION = dylib
+     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,124 +112,233 @@ 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
+-    LDFLAGS += $(FAT_FLAGS) -bundle -undefined dynamic_lookup -L/sw/lib
++    ALL_CFLAGS += $(FAT_FLAGS) -fPIC -I/sw/include
+     # 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)
+-    LIBS += -lc 
++    BUNDLE_LOADER = $(shell test ! -e $(PD_PATH)/bin/pd || echo -bundle_loader $(PD_PATH)/bin/pd)
++    ALL_LDFLAGS += $(FAT_FLAGS) -headerpad_max_install_names -bundle $(BUNDLE_LOADER) \
++	-undefined dynamic_lookup -L/sw/lib
++    SHARED_LDFLAGS += $(FAT_FLAGS) -dynamiclib -undefined dynamic_lookup \
++	-install_name @loader_path/$(SHARED_LIB) -compatibility_version 1 -current_version 1.0
++    ALL_LIBS += -lc $(LIBS_macosx)
+     STRIP = strip -x
+     DISTBINDIR=$(DISTDIR)-$(OS)
+ # install into ~/Library/Pd on Mac OS X since /usr/local isn't used much
+     pkglibdir=$(HOME)/Library/Pd
+   endif
+ endif
++# Tho Android uses Linux, we use this fake uname to provide an easy way to
++# setup all this things needed to cross-compile for Android using the NDK
++ifeq ($(UNAME),ANDROID)
++  CPU := arm
++  SOURCES += $(SOURCES_android)
++  EXTENSION = pd_linux
++  SHARED_EXTENSION = so
++  OS = android
++  PD_PATH = /usr
++  NDK_BASE := /usr/local/android-ndk
++  NDK_PLATFORM_VERSION := 5
++  NDK_SYSROOT=$(NDK_BASE)/platforms/android-$(NDK_PLATFORM_VERSION)/arch-arm
++  NDK_UNAME := $(shell uname -s | tr '[A-Z]' '[a-z]')
++  NDK_TOOLCHAIN_BASE=$(NDK_BASE)/toolchains/arm-linux-androideabi-4.4.3/prebuilt/$(NDK_UNAME)-x86
++  CC := $(NDK_TOOLCHAIN_BASE)/bin/arm-linux-androideabi-gcc --sysroot=$(NDK_SYSROOT)
++  OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
++  CFLAGS += 
++  LDFLAGS += -rdynamic -shared
++  SHARED_LDFLAGS += -Wl,-soname,$(SHARED_LIB) -shared
++  LIBS += -lc $(LIBS_android)
++  STRIP := $(NDK_TOOLCHAIN_BASE)/bin/arm-linux-androideabi-strip \
++	--strip-unneeded -R .note -R .comment
++  DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m)
++endif
+ ifeq ($(UNAME),Linux)
++  CPU := $(shell uname -m)
+   SOURCES += $(SOURCES_linux)
+   EXTENSION = pd_linux
++  SHARED_EXTENSION = so
+   OS = linux
++  PD_PATH = /usr
+   OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
+-  CFLAGS += -fPIC
+-  LDFLAGS += -Wl,--export-dynamic  -shared -fPIC
+-  LIBS += -lc
++  ALL_CFLAGS += -fPIC
++  ALL_LDFLAGS += -rdynamic -shared -fPIC -Wl,-rpath,"\$$ORIGIN",--enable-new-dtags
++  SHARED_LDFLAGS += -Wl,-soname,$(SHARED_LIB) -shared
++  ALL_LIBS += -lc $(LIBS_linux)
++  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
++  SHARED_EXTENSION = so
++  OS = linux
++  PD_PATH = /usr
++  OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
++  ALL_CFLAGS += -fPIC
++  ALL_LDFLAGS += -rdynamic -shared -fPIC -Wl,-rpath,"\$$ORIGIN",--enable-new-dtags
++  SHARED_LDFLAGS += -shared -Wl,-soname,$(SHARED_LIB)
++  ALL_LIBS += -lc $(LIBS_linux)
++  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
++  SHARED_EXTENSION = so
++  OS = linux
++  PD_PATH = /usr
++  OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
++  ALL_CFLAGS += -fPIC
++  ALL_LDFLAGS += -rdynamic -shared -fPIC -Wl,-rpath,"\$$ORIGIN",--enable-new-dtags
++  SHARED_LDFLAGS += -shared -Wl,-soname,$(SHARED_LIB)
++  ALL_LIBS += -lc $(LIBS_linux)
+   STRIP = strip --strip-unneeded -R .note -R .comment
+   DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m)
+ endif
+ ifeq (CYGWIN,$(findstring CYGWIN,$(UNAME)))
++  CPU := $(shell uname -m)
+   SOURCES += $(SOURCES_cygwin)
+   EXTENSION = dll
++  SHARED_EXTENSION = dll
+   OS = cygwin
++  PD_PATH = $(shell cygpath $$PROGRAMFILES)/pd
+   OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer
+-  CFLAGS += 
+-  LDFLAGS += -Wl,--export-dynamic -shared -L$(PD_PATH)/src
+-  LIBS += -lc -lpd
++  ALL_CFLAGS += 
++  ALL_LDFLAGS += -rdynamic -shared -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin"
++  SHARED_LDFLAGS += -shared -Wl,-soname,$(SHARED_LIB)
++  ALL_LIBS += -lc -lpd $(LIBS_cygwin)
+   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
++  SHARED_EXTENSION = dll
+   OS = windows
+-  OPT_CFLAGS = -O3 -funroll-loops -fomit-frame-pointer -march=i686 -mtune=pentium4
+-  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
++  PD_PATH = $(shell cd "$$PROGRAMFILES/pd" && pwd)
++  # MinGW doesn't seem to include cc so force gcc
++  CC=gcc
++  OPT_CFLAGS = -O3 -funroll-loops -fomit-frame-pointer
++  ALL_CFLAGS += -mms-bitfields
++  ALL_LDFLAGS += -s -shared -Wl,--enable-auto-import
++  SHARED_LDFLAGS += -shared
++  ALL_LIBS += -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin" -L"$(PD_PATH)/obj" \
++	-lpd -lwsock32 -lkernel32 -luser32 -lgdi32 -liberty $(LIBS_windows)
+   STRIP = strip --strip-unneeded -R .note -R .comment
+   DISTBINDIR=$(DISTDIR)-$(OS)
+ endif
++ifeq ($(UNAME),GNU)
++  SOURCES += $(SOURCES_gnu)
++  EXTENSION = pd_gnu
++  OS = gnu
++  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
+ 
+-CFLAGS += $(OPT_CFLAGS)
++# in case somebody manually set the HELPPATCHES above
++HELPPATCHES ?= $(SOURCES:.c=-help.pd) $(PDOBJECTS:.pd=-help.pd)
+ 
++ALL_CFLAGS := $(ALL_CFLAGS) $(CFLAGS) $(OPT_CFLAGS)
++ALL_LDFLAGS := $(LDFLAGS) $(ALL_LDFLAGS)
++ALL_LIBS := $(LIBS) $(ALL_LIBS)
+ 
+-.PHONY = install libdir_install single_install install-doc install-exec install-examples install-manual clean dist etags
++SHARED_SOURCE ?= $(wildcard lib$(LIBRARY_NAME).c)
++SHARED_HEADER ?= $(shell test ! -e $(LIBRARY_NAME).h || echo $(LIBRARY_NAME).h)
++SHARED_LIB ?= $(SHARED_SOURCE:.c=.$(SHARED_EXTENSION))
++SHARED_TCL_LIB = $(wildcard lib$(LIBRARY_NAME).tcl)
+ 
+-all: $(SOURCES:.c=.$(EXTENSION))
++.PHONY = install libdir_install single_install install-doc install-examples install-manual install-unittests clean distclean dist etags $(LIBRARY_NAME)
++
++all: $(SOURCES:.c=.$(EXTENSION)) $(SHARED_LIB)
+ 
+ %.o: %.c
+-	$(CC) $(CFLAGS) -o "$*.o" -c "$*.c"
++	$(CC) $(ALL_CFLAGS) -o "$*.o" -c "$*.c"
+ 
+-%.$(EXTENSION): %.o
+-	$(CC) $(LDFLAGS) -o "$*.$(EXTENSION)" "$*.o"  $(LIBS)
++%.$(EXTENSION): %.o $(SHARED_LIB)
++	$(CC) $(ALL_LDFLAGS) -o "$*.$(EXTENSION)" "$*.o"  $(ALL_LIBS) $(SHARED_LIB)
+ 	chmod a-x "$*.$(EXTENSION)"
+ 
+ # this links everything into a single binary file
+-$(LIBRARY_NAME): $(SOURCES:.c=.o) $(LIBRARY_NAME).o
+-	$(CC) $(LDFLAGS) -o $(LIBRARY_NAME).$(EXTENSION) $(SOURCES:.c=.o) $(LIBRARY_NAME).o $(LIBS)
++$(LIBRARY_NAME): $(SOURCES:.c=.o) $(LIBRARY_NAME).o lib$(LIBRARY_NAME).o
++	$(CC) $(ALL_LDFLAGS) -o $(LIBRARY_NAME).$(EXTENSION) $(SOURCES:.c=.o) \
++		$(LIBRARY_NAME).o lib$(LIBRARY_NAME).o $(ALL_LIBS)
+ 	chmod a-x $(LIBRARY_NAME).$(EXTENSION)
+ 
++$(SHARED_LIB): $(SHARED_SOURCE:.c=.o)
++	$(CC) $(SHARED_LDFLAGS) -o $(SHARED_LIB) $(SHARED_SOURCE:.c=.o) $(ALL_LIBS)
+ 
+ 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
++libdir_install: $(SOURCES:.c=.$(EXTENSION)) $(SHARED_LIB) install-doc install-examples install-manual install-unittests
+ 	$(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 $(SHARED_LIB))" || \
++		$(INSTALL_DATA) $(SHARED_LIB) \
++			$(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
++	test -z "$(strip $(wildcard $(SOURCES:.c=.tcl)))" || \
++		$(INSTALL_DATA) $(wildcard $(SOURCES:.c=.tcl)) \
++			$(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+ 	test -z "$(strip $(PDOBJECTS))" || \
+-		$(INSTALL_FILE) $(PDOBJECTS) \
++		$(INSTALL_DATA) $(PDOBJECTS) \
++			$(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
++	test -z "$(strip $(SHARED_TCL_LIB))" || \
++		$(INSTALL_DATA) $(SHARED_TCL_LIB) \
+ 			$(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)
+ 
+ # install library linked as single binary
+-single_install: $(LIBRARY_NAME) install-doc install-exec
++single_install: $(LIBRARY_NAME) install-doc install-examples install-manual install-unittests
+ 	$(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
+ 
++install-unittests:
++	test -z "$(strip $(UNITTESTS))" || \
++		$(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/unittests && \
++		for file in $(UNITTESTS); do \
++			$(INSTALL_DATA) unittests/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/unittests; \
++		done
+ 
+ clean:
+-	-rm -f -- $(SOURCES:.c=.o)
++	-rm -f -- $(SOURCES:.c=.o) $(SOURCES_LIB:.c=.o) $(SHARED_SOURCE:.c=.o)
+ 	-rm -f -- $(SOURCES:.c=.$(EXTENSION))
+ 	-rm -f -- $(LIBRARY_NAME).o
+ 	-rm -f -- $(LIBRARY_NAME).$(EXTENSION)
++	-rm -f -- $(SHARED_LIB)
+ 
+ distclean: clean
+ 	-rm -f -- $(DISTBINDIR).tar.gz
+@@ -229,11 +353,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) $(SHARED_SOURCE) $(SHARED_HEADER) $(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 +367,42 @@ $(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)
+-	test -z "$(strip $(ALLSOURCES))" || \
+-		$(INSTALL_FILE) $(ALLSOURCES)  $(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:.c=-help.pd) $(DISTDIR)
++		$(INSTALL_DATA) $(ALLSOURCES)  $(DISTDIR)
++	test -z "$(strip $(wildcard $(ALLSOURCES:.c=.tcl)))" || \
++		$(INSTALL_DATA) $(wildcard $(ALLSOURCES:.c=.tcl))  $(DISTDIR)
++	test -z "$(strip $(wildcard $(LIBRARY_NAME).c))" || \
++		$(INSTALL_DATA) $(LIBRARY_NAME).c  $(DISTDIR)
++	test -z "$(strip $(SHARED_HEADER))" || \
++		$(INSTALL_DATA) $(SHARED_HEADER)  $(DISTDIR)
++	test -z "$(strip $(SHARED_SOURCE))" || \
++		$(INSTALL_DATA) $(SHARED_SOURCE)  $(DISTDIR)
++	test -z "$(strip $(SHARED_TCL_LIB))" || \
++		$(INSTALL_DATA) $(SHARED_TCL_LIB)  $(DISTDIR)
+ 	test -z "$(strip $(PDOBJECTS))" || \
+-		$(INSTALL_FILE) $(PDOBJECTS)  $(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
++	test -z "$(strip $(UNITTESTS))" || \
++		$(INSTALL_DIR) $(DISTDIR)/unittests && \
++		for file in $(UNITTESTS); do \
++			$(INSTALL_DATA) unittests/$$file $(DISTDIR)/unittests; \
+ 		done
+ 	tar --exclude-vcs -czpf $(DISTDIR).tar.gz $(DISTDIR)
+ 
+@@ -279,17 +416,34 @@ dpkg-source:
+ 	rm -rf -- $(DISTDIR) $(ORIGDIR)
+ 	cd .. && dpkg-source -b $(LIBRARY_NAME)
+ 
+-etags:
+-	etags *.h $(SOURCES) ../../pd/src/*.[ch] /usr/include/*.h /usr/include/*/*.h
++etags: TAGS
++
++TAGS: $(wildcard $(PD_INCLUDE)/*.h) $(SOURCES) $(SHARED_SOURCE) $(SHARED_HEADER)
++	etags $(wildcard $(PD_INCLUDE)/*.h)
++	etags -a *.h $(SOURCES) $(SHARED_SOURCE) $(SHARED_HEADER)
++	etags -a --language=none --regex="/proc[ \t]+\([^ \t]+\)/\1/" *.tcl
+ 
+ showsetup:
++	@echo "CC: $(CC)"
++	@echo "CFLAGS: $(CFLAGS)"
++	@echo "LDFLAGS: $(LDFLAGS)"
++	@echo "LIBS: $(LIBS)"
++	@echo "ALL_CFLAGS: $(ALL_CFLAGS)"
++	@echo "ALL_LDFLAGS: $(ALL_LDFLAGS)"
++	@echo "ALL_LIBS: $(ALL_LIBS)"
++	@echo "PD_INCLUDE: $(PD_INCLUDE)"
+ 	@echo "PD_PATH: $(PD_PATH)"
+ 	@echo "objectsdir: $(objectsdir)"
+ 	@echo "LIBRARY_NAME: $(LIBRARY_NAME)"
+ 	@echo "LIBRARY_VERSION: $(LIBRARY_VERSION)"
+ 	@echo "SOURCES: $(SOURCES)"
++	@echo "SHARED_HEADER: $(SHARED_HEADER)"
++	@echo "SHARED_SOURCE: $(SHARED_SOURCE)"
++	@echo "SHARED_LIB: $(SHARED_LIB)"
++	@echo "SHARED_TCL_LIB: $(SHARED_TCL_LIB)"
+ 	@echo "PDOBJECTS: $(PDOBJECTS)"
+ 	@echo "ALLSOURCES: $(ALLSOURCES)"
++	@echo "ALLSOURCES TCL: $(wildcard $(ALLSOURCES:.c=.tcl))"
+ 	@echo "UNAME: $(UNAME)"
+ 	@echo "CPU: $(CPU)"
+ 	@echo "pkglibdir: $(pkglibdir)"
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..eed756a
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1 @@
+fix-gnu-hurd-build.patch

-- 
pd-arraysize packaging



More information about the pkg-multimedia-commits mailing list