Commit b8dde627 authored by Jonathan Wilkes's avatar Jonathan Wilkes
Browse files

port 93c4266dcbd1444af39a60e9638484eb482d9451 from Pd-l2ork: Update debuild...

port 93c4266dcbd1444af39a60e9638484eb482d9451 from Pd-l2ork: Update debuild packaging system for latest pd-l2ork source and Ubuntu 16.04
parent dbb62105
# The Pd-L2Ork version number used in this build. XXXFIXME: Is there a way to
# grab this from the source somewhere?
version = 0.42.6
# Make Debian packages. This builds a package from the current HEAD in a
# subdirectory named $(debdist). It also creates the source archive that goes
# along with it. All files will be created in the toplevel source directory.
# To make this work, you need to have the Debian package toolchain (debuild
# and friends) installed. Also make sure you have your DEBEMAIL and
# DEBFULLNAME environment variables set up as explained in the debchange(1)
# manual page. These are needed to create changelog entries and in order to
# sign the Debian packages created with 'make deb' and 'make debsrc'.
# and friends) installed. You should also set the DEBEMAIL environment (or
# make) variable to your full name and email address as explained in the
# debchange(1) manual page, e.g.: DEBEMAIL="John Doe <johndoe@mail.com>"
# This information is used to create changelog entries with 'make debchange',
# which in turn are used to sign the Debian packages created with 'make deb'
# and 'make debsrc'. (Otherwise some generic information supplied by the
# system will be used, and you may not be able to sign the package.)
# The typical workflow is as follows:
# 1. Run 'make debchange' once to create a new debian/changelog entry. You
# *must* do this once so that debuild knows about the proper version number of
# the package.
# *must* do this once after changes in the source repository so that debuild
# knows about the proper version number of the package.
# 2. Run 'make deb' to build a signed binary package. Or 'make deb-us' for an
# unsigned one.
......@@ -32,18 +31,17 @@ version = 0.42.6
# 4. Run 'make debclean' to get rid of any files that were created in steps 2
# and 3.
# The Debian version gets derived from the package version $(version) as well
# as the date and serial number of the last commit.
debversion = $(version)+git$(shell git log -1 --format=%cd --date=short | sed -e 's/-//g')+$(shell git rev-list --count HEAD)
# The Debian version gets derived from the date and serial number of the last
# commit.
debversion = $(shell git log -1 --format=%cd --date=short | sed -e 's/-//g')+git$(shell git rev-list --count HEAD)
# Debian revision number of the package.
debrevision = 1
# Source tarball and folder.
debsrc = pd-l2ork_$(debversion).orig.tar.gz
debdist = pd-l2ork-$(debversion)
# Secondary sources (Gem, wiringPi).
gemdebsrc = pd-l2ork_$(debversion).orig-Gem.tar.gz
pidebsrc = pd-l2ork_$(debversion).orig-wiringPi.tar.gz
# Submodules (Gem, etc.).
submodules = Gem externals/miXed $(addprefix l2ork_addons/, cwiid fftease3.0-32bit lyonpotpourri rtcmix-in-pd)
# This is used for automatically generated debian/changelog entries (cf. 'make
# debchange'). Adjust as needed.
......@@ -60,19 +58,16 @@ debchange:
debclean:
rm -rf $(debdist)
rm -f pd-l2ork_$(version)+git* pd-l2ork-*.tar.bz2
rm -f pd-l2ork_*+git*
deb: $(debsrc) $(gemdebsrc) $(pidebsrc)
# Unpack the primary source into our temporary build directory.
deb: $(debsrc)
# Unpack the source into our temporary build directory.
rm -rf $(debdist)
tar xfz $(debsrc)
# This works around some problems compiling externals on Precise and earlier
# (patch from pd-extended by Hans-Christoph Steiner, modified for pd-l2ork).
# This can be removed once Ubuntu 12.04 finally goes the way of the dodo.
cd $(debdist) && patch -p1 < ../precise-configure.patch
# Unpack the secondary sources.
cd $(debdist) && rm -Rf Gem && tar xfz ../$(gemdebsrc)
cd $(debdist) && rm -Rf wiringPi && tar xfz ../$(pidebsrc)
# cd $(debdist) && patch -p1 < ../precise-configure.patch
# Make sure to copy the Debian files which may have uncommitted changes.
# Then run debuild to create the package.
cd $(debdist) && cp -R ../debian . && debuild $(DEBUILD_FLAGS)
......@@ -89,20 +84,13 @@ debsrc-us:
$(MAKE) deb DEBUILD_FLAGS="-S -us -uc"
$(debsrc):
git -C .. archive --format=tar.gz -o $(CURDIR)/$(debsrc) --prefix=$(debdist)/ HEAD
$(gemdebsrc): ../Gem/ChangeLog
# Make sure that the Gem submodule is updated.
git -C .. submodule update
git -C ../Gem archive --format=tar.gz -o $(CURDIR)/$(gemdebsrc) --prefix=Gem/ HEAD
../Gem/ChangeLog:
# Make sure that the Gem submodule is initialized.
git -C .. submodule init
$(pidebsrc): wiringPi/INSTALL
git -C wiringPi pull
git -C wiringPi archive --format=tar.gz -o $(CURDIR)/$(pidebsrc) --prefix=wiringPi/ HEAD
wiringPi/INSTALL:
git clone git://git.drogon.net/wiringPi
rm -rf $(debdist)
# Make sure that the submodules are initialized.
git -C .. submodule update --init
# Grab the main source.
git -C .. archive --format=tar.gz --prefix=$(debdist)/ HEAD | tar xfz -
# Grab the submodules.
for x in $(submodules); do (cd $(debdist) && rm -rf $$x && git -C ../../$$x archive --format=tar.gz --prefix=$$x/ HEAD | tar xfz -); done
# Create the source tarball.
tar cfz $(debsrc) $(debdist)
rm -rf $(debdist)
pd-l2ork (20160601+git1680-1) xenial; urgency=low
* Build from latest upstream source.
-- Albert Graef <aggraef@gmail.com> Mon, 06 Jun 2016 08:08:17 +0200
pd-l2ork (0.42.6+git20141114+1491-1) trusty; urgency=low
* Build from latest upstream source.
......
......@@ -2,7 +2,7 @@ Source: pd-l2ork
Section: sound
Priority: extra
Maintainer: Albert Graef <aggraef@gmail.com>
Build-Depends: debhelper (>= 7.0.50~), autoconf, automake, libtool, pkg-config, bison, flex, tcl-dev, tk-dev, libgtk2.0-dev, python-dev, python-support, flite1-dev, ladspa-sdk, libasound2-dev, libjack-dev, libbluetooth-dev, libcairo2-dev, libglew-dev, libgsl0-dev, libmagick++-dev, libavifile-0.7-dev, libdc1394-22-dev, libfftw3-dev, libfluidsynth-dev, libftgl-dev, libgmerlin-dev, libgsm1-dev, libjpeg-dev, libmp3lame-dev, libmpeg3-dev, libquicktime-dev, libraw1394-dev, libsmpeg-dev, libsndobj-dev, libspeex-dev, libstk0-dev, libv4l-dev, libvorbis-dev, libxv-dev, rsync, curl
Build-Depends: debhelper (>= 7.0.50~), autoconf, automake, libtool, pkg-config, bison, flex, tcl-dev, tk-dev, libgtk2.0-dev, python-dev, python-support | dh-python, flite1-dev, ladspa-sdk, libasound2-dev, libjack-dev, libbluetooth-dev, libcairo2-dev, libglew-dev, libgsl-dev, libmagick++-dev, libavifile-0.7-dev, libdc1394-22-dev, libfftw3-dev, libfluidsynth-dev, libftgl-dev, libgmerlin-dev, libgsm1-dev, libjpeg-dev, libmp3lame-dev, libmpeg3-dev, libquicktime-dev, libraw1394-dev, libsmpeg-dev, libsndobj-dev, libspeex-dev, libstk0-dev, libv4l-dev, libvorbis-dev, libxv-dev, rsync, curl
Standards-Version: 3.9.5
Homepage: http://l2ork.music.vt.edu
......@@ -12,7 +12,7 @@ Architecture: any
# since most of the corresponding development packages are already in the build
# dependencies. However, some of these might be loaded dynamically rather than
# being linked at compile time, so for safety we just include them all.
Depends: ${shlibs:Depends}, ${misc:Depends}, python, tkpng, tclxapian, ttf-dejavu-core, libavifile-0.7c2, libbluetooth3, libdc1394-22, libfftw3-3, libflite1, libftgl2, libgmerlin0, libgmerlin-avdec1, libgsl0ldbl, libgsm1, libjpeg62, libmp3lame0, libmpeg3-1, libquicktime2, libraw1394-11, libsmpeg0, libspeex1, libv4l-0, libvorbis0a, libxv1
Depends: ${shlibs:Depends}, ${misc:Depends}, python, tkpng, tclxapian, ttf-dejavu-core, libavifile-0.7c2, libbluetooth3, libdc1394-22, libfftw3-3, libflite1, libftgl2, libgmerlin0, libgmerlin-avdec1, libgsl2, libgsm1, libjpeg62, libmp3lame0, libmpeg3-2, libquicktime2, libraw1394-11, libsmpeg0, libspeex1, libv4l-0, libvorbis0a, libxv1
Recommends: xdg-utils, pulseaudio-utils, tap-plugins, ladspa-foo-plugins, invada-studio-plugins-ladspa, blepvco, swh-plugins, mcp-plugins, cmt, blop, omins, ubuntustudio-audio-plugins, rev-plugins, dssi-utils, vco-plugins, wah-plugins, fil-plugins, mda-lv2
Provides: pd-l2ork
Replaces: pd-l2ork
......
......@@ -3,5 +3,5 @@ l2ork_addons/K12 usr/lib/pd-l2ork/extra
packages/linux_make/default.settings usr/lib/pd-l2ork
packages/linux_make/pd-l2ork.gif usr/lib/pd-l2ork
packages/linux_make/pd-l2ork*.png usr/share/icons/hicolor/128x128/apps
packages/linux_make/text-x-puredata.png usr/share/icons/hicolor/128x128/mimetypes
packages/linux_make/text-x-pd-l2ork.png usr/share/icons/hicolor/128x128/mimetypes
packages/linux_make/pd-l2ork*.desktop usr/share/applications
......@@ -10,8 +10,6 @@
override_dh_auto_configure:
override_dh_auto_build:
cd wiringPi/wiringPi && make static
cd l2ork_addons/raspberry_pi/disis_gpio && ln -sf $(CURDIR)/wiringPi .
cd l2ork_addons && inst_dir=/usr ./tar_em_up.sh -F -n
override_dh_auto_install:
......@@ -19,8 +17,10 @@ override_dh_auto_install:
# Remove some unneeded files.
cd debian/pd-l2ork/ && rm -f Makefile README.txt
cd debian/pd-l2ork/usr/lib/pd-l2ork/extra && rm -rf */*.pd_linux_o */*.la
# Remove cyclist and pdsend/pdreceive which are provided by other packages.
cd debian/pd-l2ork/usr/bin && rm -rf pdsend pdreceive cyclist
# Move cyclist and pdsend/pdreceive to the pd-l2ork lib directory to prevent
# conflicts with other packages providing these files.
cd debian/pd-l2ork/usr/bin && mv pdsend pdreceive cyclist ../lib/pd-l2ork/bin
# Also remove the corresponding man pages.
cd debian/pd-l2ork/usr/share/man/man1 && rm -rf pdsend.* pdreceive.*
# Move the Gem include files into the pd-l2ork include directory to prevent
# conflicts with other packages providing these files.
......@@ -30,10 +30,10 @@ override_dh_auto_install:
# Default preferences file.
install -d debian/pd-l2ork/etc/pd-l2ork && ln -s -f /usr/lib/pd-l2ork/default.settings debian/pd-l2ork/etc/pd-l2ork/default.settings
# XXXTODO: This is deprecated, so we might have to migrate to dh_python2 in
# the future. See http://deb.li/dhs2p.
override_dh_pysupport:
dh_pysupport -n -Xxmlrpc-test.py
# NOTE: Older systems use dh_pysupport instead of dh_python2. See
# http://deb.li/dhs2p.
override_dh_python2:
dh_python2 -n -Xxmlrpc-test.py
override_dh_compress:
dh_compress -X.pd -X.wav -X.aiff -X.txt -X.md
......@@ -41,3 +41,8 @@ override_dh_compress:
override_dh_fixperms:
dh_fixperms
chmod 0755 debian/pd-l2ork/usr/lib/pd-l2ork/bin/pd.tk
# Supply some options to get rid of a gazillion of warnings about shared
# library files which are really externals.
override_dh_shlibdeps:
dh_shlibdeps --dpkg-shlibdeps-params="--ignore-missing-info --warnings=0"
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment