# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/prefix/darwin/macos/10.5/x86/package.use.force,v 1.1 2009/06/06 03:54:51 solar Exp $

# Elias Pipping <pipping@gentoo.org> (30 Sep 2007)
# compiles with -aqua, doesn't work, though
media-video/mplayer aqua
