# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/prefix/mint/use.mask,v 1.6 2013/02/02 13:12:29 grobian Exp $

# Re-add MiNT libc
-elibc_mintlib
-kernel_freemint

# these will more than likely never work on MiNT
3dfx
3dnow
3dnowext
acpi
alsa
apm
cap
caps
cman
clvm
directfb
divx4linux
djbfft
emul-linux-x86
fbcon
fdftk
fmod
ggi
gpm
hardened
icc
icc-pgo
ipv6
mmx
mmx2
# the following USE flag requires device-mapper
on-the-fly-crypt
oss
solid
sse
sse2
svga
sybase
sybase-ct
rtc
uclibc
voodoo3
pvm
v4l

# git doesn't work at this time, bug #339031\
git
