[PD-dev] Extended debian/rules for pd-externals
Frank Barknecht
fbar at footils.org
Sun Feb 16 15:10:00 CET 2003
Hallo,
attached is an extended unofficial rules file to build externals
from sourceforge. I use this, you don't need to, but you can, too.
Changes compared to the rules file by Guenther include:
* builds flext with SndObj and STK (the STK-path needs to be set by
hand, as there isn't an STK for Debian, AFAIK)
* builds the following and puts them into pd-externals:
* grill/idelay
* grill/xsample (as a library)
* grill/fftease (as a library)
* grill/pool (edit config-pd-linux and comment out CXX=g++ if you
need g++-3.2 for now)
* creb (as a library. abs/*.pd are installed to $PDDIR/extra/creb.
You might want to comment remove abs.o from creb/modules/Makefile,
as abs~ is also in other libraries, at least 2 times. creb is a
candidate for Guenther's build/linux system, IMO, so my
rules-solution is only temporary and will fade away soon.)
* doesn't build my own externals yet. I'm an altruist.
To use g++-3.2 and gcc-3.2 for compilation do a
$ export CXX=g++-3.2 CPLUSPLUS=g++-3.2 CC=gcc-3.2
before you do
$ fakeroot debian/rules binary
Have fun.
ciao
--
Frank Barknecht _ ______footils.org__
-------------- next part --------------
#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
# This is the debhelper compatibility version to use.
export DH_COMPAT=3
ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
CFLAGS += -g
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif
configure: configure-stamp
configure-stamp:
dh_testdir
# Add here commands to configure the package.
touch configure-stamp
orig:
cd ..;tar --exclude=CVS -czvf pd-externals_0.2.orig.tar.gz externals
build: build-stamp
build-stamp: configure-stamp
dh_testdir
# Add here commands to compile the package.
# Build the common externals
(cd build/linux; $(MAKE))
# Build zexy
(cd zexy/src; $(MAKE) -f makefile.linux)
# Build flext
(cd grill/flext; $(MAKE) -f makefile.pd-linux STK=/usr/local/include/stk SNDOBJ=/usr/include/SndObj)
(cd grill/idelay; $(MAKE) -f makefile.pd-linux FLEXTPATH=$(CURDIR)/grill/flext/source FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a)
(cd grill/xsample; $(MAKE) -f makefile.pd-linux FLEXTPATH=$(CURDIR)/grill/flext/source FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a)
(cd grill/fftease; $(MAKE) -f makefile.pd-linux FLEXTPATH=$(CURDIR)/grill/flext/source FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a)
(cd grill/pool; $(MAKE) -f makefile.pd-linux FLEXTPATH=$(CURDIR)/grill/flext/source FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a)
# OSC
(cd OSCx/libOSC;$(MAKE))
(cd OSCx/OSC; $(MAKE))
# Build creb
(cd creb; $(MAKE))
#/usr/bin/docbook-to-man debian/pd-externals.sgml > pd-externals.1
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
-(cd build/linux;$(MAKE) clean)
(cd zexy/src; $(MAKE) -f makefile.linux clean)
(cd grill/flext; $(MAKE) -f makefile.pd-linux clean)
(cd grill/idelay; $(MAKE) -f makefile.pd-linux clean)
(cd grill/xsample; $(MAKE) -f makefile.pd-linux clean)
(cd grill/fftease; $(MAKE) -f makefile.pd-linux clean)
(cd grill/pool; $(MAKE) -f makefile.pd-linux clean)
(cd OSCx/libOSC;$(MAKE) clean)
(cd OSCx/OSC; $(MAKE) pd_linux_clean)
(cd creb; $(MAKE) clean)
dh_clean
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs
# Add here commands to install the package into debian/pd-externals.
(cd build/linux; $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp)
(cd zexy/src; $(MAKE) -f makefile.linux install DESTDIR=$(CURDIR)/debian/tmp \
INSTALL_PREFIX=/usr/ \
PDLIBDIR=lib/pd )
(cd grill/flext; $(MAKE) -f makefile.pd-linux install INSTDIR=$(CURDIR)/debian/tmp/usr/lib/pd/flext)
(cd grill/idelay; $(MAKE) -f makefile.pd-linux install INSTDIR=$(CURDIR)/debian/tmp/usr/lib/pd/extra FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a; \
install pd/*.pd $(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference)
(cd grill/xsample; $(MAKE) -f makefile.pd-linux install INSTDIR=$(CURDIR)/debian/tmp/usr/lib/pd/extra FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a; \
$(MAKE) -f makefile.pd-linux install-help HELPDIR=$(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference)
(cd grill/fftease; $(MAKE) -f makefile.pd-linux install INSTPATH=$(CURDIR)/debian/tmp/usr/lib/pd/extra FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a; \
install pd/*.pd $(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference)
(cd grill/pool; $(MAKE) -f makefile.pd-linux install INSTPATH=$(CURDIR)/debian/tmp/usr/lib/pd/extra FLEXTLIB=$(CURDIR)/grill/flext/pd-linux/flext.a; \
install *.pd $(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference)
# Install OSC
install OSCx/OSC/OSC.pd_linux $(CURDIR)/debian/tmp/usr/lib/pd/extra
install OSCx/doc/*.pd $(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference
(cd creb; \
install creb.pd_linux $(CURDIR)/debian/tmp/usr/lib/pd/extra; \
install doc/*.pd $(CURDIR)/debian/tmp/usr/lib/pd/doc/5.reference; \
install -d $(CURDIR)/debian/tmp/usr/lib/pd/extra/creb; \
install abs/*.pd $(CURDIR)/debian/tmp/usr/lib/pd/extra/creb; \
)
# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir
dh_testroot
dh_movefiles
# dh_installdebconf
dh_installdocs
dh_installexamples
dh_installmenu
# dh_installlogrotate
# dh_installemacsen
# dh_installpam
# dh_installmime
# dh_installinit
dh_installcron
dh_installman
dh_installinfo
# dh_undocumented
dh_installchangelogs
dh_link
dh_strip
dh_compress
dh_fixperms
# dh_makeshlibs
dh_installdeb
# dh_perl
dh_shlibdeps
dh_gencontrol
dh_md5sums
dh_builddeb
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure
More information about the Pd-dev
mailing list