All pastes #792858 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-11-21 19:41 UTC
rendered paste body
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

inherit autotools

DESCRIPTION="Pd-extended by Hans-Cristoph Steiner"
HOMEPAGE="http://www.puredata.org/"
SRC_URI="mirror://sourceforge/pd-overlay/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86"

IUSE_PD_EXTERNALS="boids bsaylor corelibs creb cxc cyclone deprecated ekext
ext13 flatspace flib freeverb gem2pdp ggee hardware hcs hid iem_ambi iem_bin_ambi iemlib
jasch_lib mapping markex maxlib mjlib motex mrpeach msd oscx pan pddp pdogg pdp
pidip pmpd sigpack smlib toxy unauthorized vbap zexy"
IUSE="${IUSE_PD_EXTERNALS}"

S="${WORKDIR}/pure-data"

DEPEND="!media-sound/pd
	unauthorized? ( >=media-libs/speex-1.1.12
		media-sound/lame )
	pdp? ( >=sci-libs/gsl-1.8
		virtual/glut
		media-libs/libsdl
		media-libs/libquicktime
		x11-libs/libX11
		x11-libs/libXv )
	pidip? ( media-libs/libtheora
		media-libs/libvorbis
		media-libs/libquicktime
		media-libs/imlib2
		media-libs/libsdl
		media-video/mpeg4ip
		media-libs/libmp4v2
		media-gfx/imagemagick
		media-libs/aalib )
	pdogg? ( media-libs/libogg
		media-libs/libvorbis )
	media-sound/lame
	media-libs/flac
	media-libs/libsndfile
	bsaylor? ( =sci-libs/fftw-3* )
	hcs? ( dev-libs/libusb )
	pdogg? ( media-libs/libogg )"
RDEPEND="${DEPEND}"
# I suspect we need both fftw version 2 and 3

src_unpack() {
	unpack ${A}
	cd "${S}"

	# Patch pd (current snapshot is already patched)
	#pushd packages
	#sed -i -e "s/patch\ -p0/patch\ -p0\ -t/g" Makefile || die "sed failed"
	#make patch_pd
	#popd

	pushd pd/src
	sed -i -e 's:\($(libdir)/pd\):$(DESTDIR)\1:' makefile.in
	eaclocal
	eautoconf
	popd
}

src_compile() {
	# build pd
	pushd pd/src
		econf || "Configure of 'pd' failed"
		emake OPT_CFLAGS="${CFLAGS}" DESTDIR="${D}" prefix="/usr" || \
			die "Build of 'pd' failed"
	popd
	# build externals in $USE
	for i in ${IUSE_PD_EXTERNALS}; do
		if use $i; then
			einfo "Building external: '$i'"
			local my_make_opts=""
			# libOSC and vocoder~ compilation fails with ccache and -j2
			if [ ${i} == oscx ] || [ ${i} == unauthorized ] ; then
				my_make_opts="${my_make_opts} -j1"
			fi
			emake OPT_CFLAGS="${CFLAGS}" DESTDIR="${D}" prefix="/usr" \
				-C externals ${my_make_opts} ${i} || die "Build of '${i}' failed"
		fi
	done
}

src_install() {
	#install pd
	pushd pd/src
	emake DESTDIR="${D}" prefix="/usr" install || \
		die "Install of 'pd' failed"
	popd
	# and externals
	for i in ${IUSE_PD_EXTERNALS}; do
		if use $i; then
			einfo "Building external: '${i}'"
			emake DESTDIR="${D}" prefix="/usr" -C externals ${i}_install || \
				die "Install of '${i}' failed"
		fi
	done
}