# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/hardened/linux/amd64/package.use,v 1.3 2011/03/25 16:19:06 blueness Exp $

# Magnus Granberg <zorry@gentoo.org> (06 Mar 2011)
# We will have pic enable on older package but not
# new one. This will be removed when newer get
# stable and older package is not in portage tree 
# any longer. Tracker bug #348050
<media-libs/mesa-7.10.1 pic
<media-libs/xvid-1.3.0 pic
<dev-lang/php-5.3.5-r1 pic

# Magnus Grenberg <zorry@gentoo.org> (17 Mar 2011)
# Bug 358929 the pic flag need to be on don't know way.
# Anthony Basile <blueness@gentoo.org>
# Bug 348050 comment 5 - fixed mispelling
app-emulation/open-vm-tools pic

