Re: [proaudio] ardour 3.9999 convert to waf??

[ Thread Index | Date Index | More lists.tuxfamily.org/proaudio Archives ]


> I'll give it a go.. but maybe not just yet... Here is the final word
> from Paul himself.  Which basically says that we probably need to be
> prepared to cut the SVN version by hand from time to time. 
> 
> "We are definitely moving towards waf, but currently the build scripts
> for waf do not accomplish 100% of the build. So for now you need to use
> scons, which may break occasionally, and then optionally switch to
> waf." 

I tried to made some ebuilds using waf build system.
That doesnt compile for now. (Actually it does if you make some ugly
modifications in slv2 include files)
Some of the USE flag have no effects.
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=2

inherit eutils toolchain-funcs fdo-mime flag-o-matic subversion versionator

DESCRIPTION="multi-track hard disk recording software"
HOMEPAGE="http://ardour.org/";

ESVN_REPO_URI="http://subversion.ardour.org/svn/ardour2/branches/3.0";


LICENSE="GPL-2"
SLOT="3"
KEYWORDS=""
IUSE="nls lv2 vst sys-libs surfaces freesound debug"

RDEPEND="media-libs/liblo
	>=media-libs/taglib-1.5
	media-libs/aubio
	>=media-libs/liblrdf-0.4.0
	>=media-libs/raptor-1.4.2
	>=media-sound/jack-audio-connection-kit-0.116.2
	>=dev-libs/glib-2.10.3
	x11-libs/pango
	>=x11-libs/gtk+-2.8.8
	media-libs/flac
	>=media-libs/alsa-lib-1.0.14a-r1[midi]
	>=media-libs/libsamplerate-0.1.1-r1
	>=dev-libs/libxml2-2.6.0
	dev-libs/libxslt
	>=media-libs/libsndfile-1.0.18_pre24
	gnome-base/libgnomecanvas
	x11-themes/gtk-engines
	>=dev-cpp/gtkmm-2.12.3
	>=dev-cpp/glibmm-2.14.2
	>=dev-cpp/libgnomecanvasmm-2.20.0
	dev-cpp/cairomm
	>=dev-libs/libsigc++-2.0
	media-libs/libsoundtouch
	dev-libs/libusb
	=sci-libs/fftw-3*
	freesound? ( net-misc/curl )
	lv2? ( >=media-libs/slv2-0.6.4 )"

DEPEND="${RDEPEND}
	sys-devel/libtool
	dev-libs/boost
	dev-util/pkgconfig
	>=dev-util/scons-0.98.5
	nls? ( sys-devel/gettext )"

src_unpack() {
	subversion_src_unpack
	#waf cant retrieve svn version without .svn dir
	cp ${FILESDIR}/svn_revision.cc ${S}/libs/ardour/svn_revision.cc
	#cd "${S}"
}

src_configure() {
	#fpu-optimization nls surfaces syslib and tranzport have no effects (always True)
	local myconf="--fpu-optimization --freedesktop"
	use nls && myconf="${myconf} --nls"
	use vst && myconf="${myconf} --vst"
	use sys-libs && myconf="${myconf} --syslibs"
	use lv2 && myconf="${myconf} --lv2"
	use surfaces && myconf="${myconf} --surfaces"
	use freesound && myconf="${myconf} --freesound"
	use debug && myconf="${myconf} --debug"

	myconf="${myconf} --prefix /usr/"
	einfo "calling ./waf configure ${myconf}"
	./waf configure ${myconf} || die
}


	
src_compile() {
	./waf build ${MAKEOPTS} || die "compilation failed"
}

src_install() {
	./waf install --destdir ${D} || die "make install failed"
	#if use vst;then
	#	mv "${D}"/usr/bin/ardourvst "${D}"/usr/bin/ardour2
	#fi

	dodoc DOCUMENTATION/*

	newicon "icons/icon/ardour_icon_tango_48px_blue.png" "ardour3.png"
	make_desktop_entry "ardour3" "Ardour3" "ardour3" "AudioVideo;Audio"

	# fix wrapper
	#sed -i -e 's:ardour2:ardour3:g' ${D}/usr/bin/ardour3 || die
}

pkg_postinst() {
	fdo-mime_mime_database_update
	fdo-mime_desktop_database_update
	
	ewarn "---------------- WARNING -------------------"
	ewarn ""
	ewarn "MAKE BACKUPS OF THE SESSION FILES BEFORE TRYING THIS VERSION."
	ewarn ""
	ewarn "The simplest way to address this is to make a copy of the session file itself"
	ewarn "(e.g mysession/mysession.ardour) and make that file unreadable using chmod(1)."
	ewarn ""
}
#include <ardour/svn_revision.h>
namespace ARDOUR {
  extern const char* svn_revision = "gentoo svn";
}
# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-libs/slv2/slv2-0.6.2.ebuild,v 1.2 2009/04/16 08:42:29 aballier Exp $

EAPI=2

inherit multilib toolchain-funcs eutils

DESCRIPTION="A library to make the use of LV2 plugins as simple as possible for applications"
HOMEPAGE="http://wiki.drobilla.net/SLV2";
SRC_URI="http://download.drobilla.net/${P}.tar.bz2";

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="doc jack"

RDEPEND=">=dev-libs/redland-1.0.6
	>=media-libs/lv2core-1.0
	jack? ( >=media-sound/jack-audio-connection-kit-0.107.0 )
	media-libs/lv2core"
DEPEND="${RDEPEND}
	doc? ( app-doc/doxygen )
	dev-util/pkgconfig"

# src_prepare() {
# 	epatch "${FILESDIR}/ldconfig.patch"
# }

src_configure() {
	tc-export CC CXX CPP AR RANLIB
	./waf configure \
		  --prefix=/usr \
		  --libdir=/usr/$(get_libdir)/ \
		  --htmldir=/usr/share/doc/${PF}/html \
		  $(use doc && echo "--build-docs") \
		  $(use jack || echo "--no-jack") \
		  || die "failed to configure"
}

src_compile() {
	./waf || die "failed to build"
}

src_install() {
	./waf --destdir="${D}" install || die "install failed"
	dodoc AUTHORS README ChangeLog
}


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/