# Unmask the flag which corresponds to ARCH.
-s390

# Stuff we don't want/not tested
pbins
chicken
clisp
R
octave
xindy
lyx
lasi
kde
mpi
fuse
prolog
libnl
autotrace
lqr
libproxy
libvirt
tokyocabinet
lpsol
openexr
enchant
fftw
systemd
devil
gts
clang
rtmp
metalink
lucene

# This file contains a list of useflags that cannot be used on s390.
bluetooth
dell
pcmcia
cdr
qt4
gpm
3dfx
acpi
afs
alsa
apm
directfb
lirc
trusted
voodoo3
wavelan
java
java-internal
java-external
hardened

# Needs java
pdfannotextractor

# not working for now
mzscheme

# no gnome love yet
fits
gconf
gimp
gtk
gtk2
gtk3
gnome
gnome-keyring

# mask wayland since dev-libs/wayland isn't keyworded
wayland

diet
m17n-lib
xemacs
Xaw3d
neXt
motif
glitz
mono
pike
ocaml
sdl
lm_sensors
wxwindows
wxwidgets

# Samuli Suominen <ssuominen@gentoo.org> (18 Jan 2013)
# libdlm and cman are not keyworded
cman
clvm

# Many X drivers make no sense on this platform.
input_devices_acecad
input_devices_aiptek
input_devices_elographics
input_devices_evdev
input_devices_fpit
input_devices_hyperpen
input_devices_joystick
input_devices_keyboard
input_devices_mouse
input_devices_mutouch
input_devices_penmount
input_devices_vmmouse
input_devices_synaptics
input_devices_tslib
input_devices_wacom
video_cards_apm
video_cards_ark
video_cards_ast
video_cards_chips
video_cards_cirrus
video_cards_fbdev
video_cards_geode
video_cards_glint
video_cards_i128
video_cards_i740
video_cards_i915
video_cards_i965
video_cards_ilo
video_cards_intel
video_cards_mach64
video_cards_mga
video_cards_modesetting
video_cards_neomagic
video_cards_newport
video_cards_nouveau
video_cards_nv
video_cards_r100
video_cards_r128
video_cards_r200
video_cards_r300
video_cards_r600
video_cards_radeon
video_cards_radeonsi
video_cards_rendition
video_cards_s3
video_cards_s3virge
video_cards_savage
video_cards_siliconmotion
video_cards_sis
video_cards_sisusb
video_cards_tdfx
video_cards_tga
video_cards_trident
video_cards_tseng
video_cards_v4l
video_cards_vesa

# Chí-Thanh Christopher Nguyễn <chithanh@gentoo.org> (22 Aug 2013)
# virtual/opencl is not keyworded
opencl

# Unmask once sys-libs/libunwind gets ported & keyworded.
unwind
