# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/hardened/linux/package.use.force,v 1.2 2013/03/18 03:18:19 blueness Exp $

# Kacper Kowalik <xarthisius@gentoo.org> (24 Aug 2011)
# Force hardened flag to make repoman happy
app-emulation/wine hardened

# Needed for XATTR_PAX flags (17 Mar 2013)
# Thanks Arfrever
sys-apps/portage xattr
