Re: [proaudio] [1944] fix for amd64 / !amd64 : only amd64 need 32bit flag for jack-audio-connection-kit

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


On Wednesday 27 April 2011 20:52:07 Dominique Michel wrote:
> Le Wed, 27 Apr 2011 20:49:08 +0200,
> 
> Xavier Miller <xavier.miller@xxxxxxxxx> a écrit :
> > Maybe...
...
> > > I've always been curious why jack in pro-audio has a "32bit" use
> > > flag. IMHO it should be something like "multilib" instead, seeing
> > > as it can install to both lib directories.
> 
> It is a little bit different. A multilib setting allow 32bits programs
> to run on a 64 bits linux system. 32bit (or mixed) allow jack to use 32
> bits programs with a 64 bits jack server.
> 
> Cheers,
> Dominique
> 
> > > Best
> > > Gav

Understood.
I thought that was the whole point of multilib though; to maintain 
compatibility with 32-bit applications by installing what ever is needed to 
lib32 directories. With jack mixed mode it's supposed to install a library in 
/usr/lib32 and /usr/lib64, the jack ebuild in pro-audio however fails the 
portage FEATURES=multilib-strict check, so either the pro-audio ebuild or 
portage is getting things wrong.

I've been hesitant to touch jack as so many things depend on it and I don't 
want to go breaking a ton of things for people if the jack ebuild works for 
them. However, if you want to, please look at the ebuild I've been using in my 
overlay for the 1.9.* series for quite a while. The USE flags are very 
different to that of pro-audio ebuild but IMHO more easier to read, plus it 
allows jack-dbus and the classic jackd to be installed simultaneously.

Best Regards
Gav
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

EAPI=3
inherit eutils multilib toolchain-funcs waf-utils

DESCRIPTION="JACK is a sound server system for handling real-time, low latency audio and MIDI"
HOMEPAGE="http://www.jackaudio.org";
SRC_URI="http://www.grame.fr/~letz/jack-${PV}.tar.bz2";

RESTRICT="mirror"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="alsa celt +dbus doc freebob ieee1394 jackd multilib"

RDEPEND=">=media-libs/libsndfile-1.0.0
	media-libs/libsamplerate
	alsa? ( >=media-libs/alsa-lib-0.9.1 )
	dbus? ( sys-apps/dbus )
	celt? ( media-libs/celt )
	ieee1394? ( media-libs/libffado )
	freebob? ( sys-libs/libfreebob )"
DEPEND="${RDEPEND}
	dev-util/pkgconfig
	doc? ( app-doc/doxygen )"

S="${WORKDIR}/jack-${PV}"

pkg_setup() {
	if ! use dbus && ! use jackd ; then
		eerror "For ${PN} to function,"
		eerror "USE=\"dbus\" and/or USE=\"jackd\" flags need to be enabled"
		die "Invalid USE flags for ${PN} package, enable dbus and/or jackd"
	fi
}

src_configure() {
	local mylibdir=
	if use multilib || has_multilib_profile ; then
		mylibdir="--libdir=/$(get_libdir)"
	else
		mylibdir="--libdir32=/$(get_libdir)"
	fi

	tc-export CC CXX CPP AR RANLIB

	waf-utils_src_configure \
		--mandir="/share/man/man1" \
		${mylibdir} \
		$(use alsa && echo --alsa) \
		$(use celt && echo --celt) \
		$(use dbus && echo --dbus) \
		$(use doc && echo --doxygen) \
		$(use ieee1394 && echo --firewire) \
		$(use freebob && echo --freebob) \
		$(use jackd && echo --classic) \
		$(use multilib || has_multilib_profile && echo --mixed)
}

src_install() {
	waf-utils_src_install
	dodoc ChangeLog README README_NETJACK2 TODO
}

pkg_postinst() {
	if ! use alsa; then
		einfo "NOTE: alsa has not been enabled as a USE flag, enable it to"
		einfo "utilise alsa and drive your sound card for audio output"
	fi
	if use dbus && use jackd; then
		einfo "WARNING !! mixing both jackd and jackdbus may cause issues:"
		einfo "WARNING !! jackdbus does not use .jackdrc nor qjackctl settings"
	fi
}


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