# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/prefix/darwin/macos/arch/x86/package.use.mask,v 1.2 2012/01/09 04:36:35 tetromino Exp $

# The 32-bits profile is inherited by the 64-bits one!
# All the Mac OS X profiles inherit from their matching arch profile here.


# Alexandre Rostovtsev <tetromono@gentoo.org> (09 Jan 2012)
# jsc JIT compilation is supported only on amd64/arm/x86 and their prefixes, so
# it's masked in base profile and unmasked here (bug #396313).
net-libs/webkit-gtk -jit

# Jeremy Olexa <darkside@gentoo.org> (29 Jul 2010)
# Relocation issues on 32-bit OSX, bug #329859
media-sound/mpg123 mmx sse

# Fabian Groffen <grobian@gentoo.org> (01 Feb 2009)
# Doesn't compile, bug #257225
media-video/ffmpeg mmx
