

config BR2_TARGET_TEST_PACKAGES
	bool "Enable most packages for testing purposes"
	help
	  Enables most packages.
	  X-Windows and Qtopia are significant exceptions

#	select BR2_LARGEFILE
#	select BR2_INET_IPV6
#	select BR2_INET_RPC
#	select BR2_USE_WCHAR

	select BR2_PACKAGE_BUSYBOX
	select BR2_BUSYBOX_VERSION_1_13_X
	select BR2_PACKAGE_BUSYBOX_FULLINSTALL
	select BR2_PACKAGE_BUSYBOX_HIDE_OTHERS
	select BR2_PACKAGE_BZIP2
	select BR2_PACKAGE_FLEX
		select BR2_PACKAGE_FLEX_LIBFL
# BR2_PACKAGE_GCC_TARGET is not set
	select BR2_PACKAGE_MAKE
	select BR2_PACKAGE_AUTOCONF
	select BR2_PACKAGE_AUTOMAKE
	select BR2_PACKAGE_BISON
	select BR2_PACKAGE_CCACHE_TARGET
	select BR2_PACKAGE_CVS
	select BR2_PACKAGE_CVS_SERVER
	select BR2_PACKAGE_DISTCC
	select BR2_PACKAGE_DMALLOC
	select BR2_PACKAGE_FAKEROOT
	select BR2_HOST_FAKEROOT
	select BR2_PACKAGE_GETTEXT
	select BR2_PACKAGE_GETTEXT_STATIC
	select BR2_PACKAGE_LIBINTL
	select BR2_PACKAGE_LIBGMP
		select BR2_PACKAGE_LIBGMP_HEADERS

	select BR2_PACKAGE_GPERF
	select BR2_PACKAGE_LIBMPFR
		select BR2_PACKAGE_LIBMPFR_HEADERS

	select BR2_PACKAGE_LIBTOOL
	select BR2_PACKAGE_M4
	select BR2_PACKAGE_MPATROL
	select BR2_PACKAGE_OPROFILE
	select BR2_PACKAGE_READLINE
		select BR2_PACKAGE_READLINE_TARGET
		select BR2_PACKAGE_READLINE_HEADERS

	select BR2_PACKAGE_PCRE
	select BR2_PACKAGE_AT
	select BR2_PACKAGE_BEECRYPT
	select BR2_PACKAGE_BERKELEYDB
	select BR2_PACKAGE_BSDIFF
	select BR2_PACKAGE_CUPS
	select BR2_PACKAGE_CUSTOMIZE
	select BR2_PACKAGE_FILE
	select BR2_PACKAGE_GAMIN
	select BR2_PACKAGE_ICU
	select BR2_PACKAGE_KEXEC
		select BR2_PACKAGE_KEXEC_ZLIB

	select BR2_PACKAGE_LIBCONFIG
	select BR2_PACKAGE_LIBCONFUSE
	select BR2_PACKAGE_LIBDAEMON
	select BR2_PACKAGE_LIBELF
		select BR2_PACKAGE_LIBELF_HEADERS

	select BR2_PACKAGE_LIBEVENT
	select BR2_PACKAGE_LIBGCRYPT
	select BR2_PACKAGE_LIBGPG_ERROR
	select BR2_PACKAGE_LIBICONV
	select BR2_PACKAGE_LIBIDN
	select BR2_PACKAGE_LIBLOCKFILE
	select BR2_PACKAGE_LIBOIL
	select BR2_PACKAGE_LIBSYSFS
	select BR2_PACKAGE_LOCKFILE_PROGS
	select BR2_PACKAGE_LOGROTATE
	select BR2_PACKAGE_LSOF
	select BR2_PACKAGE_LTP-TESTSUITE
	select BR2_PACKAGE_LTRACE
# BR2_PACKAGE_LTT is not set
	select BR2_PACKAGE_MEMSTAT
	select BR2_PACKAGE_NG_SPICE_REWORK
	select BR2_PACKAGE_POPT
	select BR2_PACKAGE_SCREEN
	select BR2_PACKAGE_STARTUP_NOTIFICATION
	select BR2_PACKAGE_STRACE
	select BR2_PACKAGE_SUDO
	select BR2_PACKAGE_MYSQL_CLIENT
	select BR2_PACKAGE_SQLITE
	select BR2_PACKAGE_ARGUS
	select BR2_PACKAGE_AVAHI
		select BR2_PACKAGE_AVAHI_AUTOIPD
		select BR2_PACKAGE_AVAHI_DAEMON

	select BR2_PACKAGE_AXEL
	select BR2_PACKAGE_BIND
	select BR2_PACKAGE_BRIDGE
	select BR2_PACKAGE_DNSMASQ
		select BR2_PACKAGE_DNSMASQ_TFTP

	select BR2_PACKAGE_DROPBEAR
	select BR2_PACKAGE_ETHTOOL
	select BR2_PACKAGE_HASERL
# 		BR2_PACKAGE_HASERL_VERSION_0_8_X is not set
		select BR2_PACKAGE_HASERL_VERSION_0_9_X

	select BR2_PACKAGE_IFPLUGD
	select BR2_PACKAGE_IPERF
	select BR2_PACKAGE_IPROUTE2
	select BR2_PACKAGE_IPSEC_TOOLS
		select BR2_PACKAGE_IPSEC_TOOLS_STATS
		select BR2_PACKAGE_IPSEC_TOOLS_ADMINPORT
		select BR2_PACKAGE_IPSEC_TOOLS_NATT
		select BR2_PACKAGE_IPSEC_TOOLS_FRAG
		select BR2_PACKAGE_IPSEC_TOOLS_READLINE
# BR2_PACKAGE_IPSEC_TOOLS_IPV6 is not set
# BR2_PACKAGE_IPSEC_TOOLS_LIBS is not set
	select BR2_PACKAGE_IPTABLES
	select BR2_PACKAGE_KISMET
	select BR2_PACKAGE_L2TP
	select BR2_PACKAGE_LIBCGI
	select BR2_PACKAGE_LIBCGICC
	select BR2_PACKAGE_LIBCURL
		select BR2_PACKAGE_CURL

	select BR2_PACKAGE_LIBDNET
		select BR2_PACKAGE_LIBDNET_PYTHON

	select BR2_PACKAGE_LIBOSIP2
	select BR2_PACKAGE_LIBEXOSIP2
	select BR2_PACKAGE_LIBPCAP
	select BR2_PACKAGE_LIBUPNP
	select BR2_PACKAGE_LINKS
	select BR2_PACKAGE_LRZSZ
	select BR2_PACKAGE_MDNSRESPONDER
		select BR2_PACKAGE_MDNSRESPONDER_UTILS

	select BR2_PACKAGE_MICROCOM
	select BR2_PACKAGE_MIIDIAG
	select BR2_PACKAGE_MROUTED
	select BR2_PACKAGE_MUTT
	select BR2_PACKAGE_NBD
	select BR2_PACKAGE_NCFTP
		select BR2_PACKAGE_NCFTP_GET
		select BR2_PACKAGE_NCFTP_PUT
		select BR2_PACKAGE_NCFTP_LS
		select BR2_PACKAGE_NCFTP_BATCH
		select BR2_PACKAGE_NCFTP_SPOOLER
		select BR2_PACKAGE_NCFTP_BOOKMARKS

	select BR2_PACKAGE_NEON
		select BR2_PACKAGE_NEON_ZLIB
# BR2_PACKAGE_NEON_EXPAT is not set
		select BR2_PACKAGE_NEON_LIBXML2
# BR2_PACKAGE_NEON_NOXML is not set

	select BR2_PACKAGE_NETKITBASE
	select BR2_PACKAGE_NETKITTELNET
	select BR2_PACKAGE_NETPLUG
	select BR2_PACKAGE_NETSNMP
	select BR2_PACKAGE_NFS_UTILS
		select BR2_PACKAGE_NFS_UTILS_RPCDEBUG
		select BR2_PACKAGE_NFS_UTILS_RPC_LOCKD
		select BR2_PACKAGE_NFS_UTILS_RPC_RQUOTAD

	select BR2_PACKAGE_NTP
		select BR2_PACKAGE_NTP_SNTP

	select BR2_PACKAGE_OLSR
	select BR2_PACKAGE_OPENNTPD
	select BR2_PACKAGE_OPENSSH
	select BR2_PACKAGE_OPENSSL
		select BR2_PACKAGE_OPENSSL_BIN
		select BR2_PACKAGE_OPENSSL_ENGINES

	select BR2_PACKAGE_OPENVPN
	select BR2_PACKAGE_OPENSWAN
# 		BR2_PACKAGE_OPENSWAN_DEBUGGING is not set

	select BR2_PACKAGE_PORTMAP
	select BR2_PACKAGE_PPPD
	select BR2_PACKAGE_RP_PPPOE
	select BR2_PACKAGE_PPTP_LINUX
	select BR2_PACKAGE_PROFTPD

#
# quagga suite
#
	select BR2_PACKAGE_QUAGGA_ZEBRA
	select BR2_PACKAGE_QUAGGA_BGPD
	select BR2_PACKAGE_QUAGGA_RIPD
	select BR2_PACKAGE_QUAGGA_RIPNGD
	select BR2_PACKAGE_QUAGGA_OSPFD
	select BR2_PACKAGE_QUAGGA_OSPF6D
	select BR2_PACKAGE_QUAGGA_WATCHQUAGGA
	select BR2_PACKAGE_QUAGGA_ISISD
	select BR2_PACKAGE_QUAGGA_BGP_ANNOUNCE
	select BR2_PACKAGE_QUAGGA_NETLINK
	select BR2_PACKAGE_QUAGGA_SNMP
	select BR2_PACKAGE_QUAGGA_TCP_ZEBRA
	select BR2_PACKAGE_QUAGGA_OPAGUE_LSA
	select BR2_PACKAGE_QUAGGA_CONFIGURE

	select BR2_PACKAGE_RSYNC

	select BR2_PACKAGE_SAMBA
		select BR2_PACKAGE_SAMBA_CIFS
		select BR2_PACKAGE_SAMBA_EVENTLOGADM
		select BR2_PACKAGE_SAMBA_FINDSMB
		select BR2_PACKAGE_SAMBA_NET
		select BR2_PACKAGE_SAMBA_NMBD
		select BR2_PACKAGE_SAMBA_NMBLOOKUP
		select BR2_PACKAGE_SAMBA_NTLM_AUTH
		select BR2_PACKAGE_SAMBA_PDBEDIT
		select BR2_PACKAGE_SAMBA_PROFILES
		select BR2_PACKAGE_SAMBA_RPCCLIENT
		select BR2_PACKAGE_SAMBA_SMBCACLS
		select BR2_PACKAGE_SAMBA_SMBCLIENT
		select BR2_PACKAGE_SAMBA_SMBCONTROL
		select BR2_PACKAGE_SAMBA_SMBCQUOTAS
		select BR2_PACKAGE_SAMBA_SMBGET
		select BR2_PACKAGE_SAMBA_SMBPASSWD
		select BR2_PACKAGE_SAMBA_SMBSPOOL
		select BR2_PACKAGE_SAMBA_SMBSTATUS
		select BR2_PACKAGE_SAMBA_SMBTREE
		select BR2_PACKAGE_SAMBA_SWAT
		select BR2_PACKAGE_SAMBA_SMBTAR
		select BR2_PACKAGE_SAMBA_TDB
		select BR2_PACKAGE_SAMBA_TESTPARM
		select BR2_PACKAGE_SAMBA_WINBINDD
		select BR2_PACKAGE_SAMBA_WBINFO



	select BR2_PACKAGE_SOCAT
	select BR2_PACKAGE_STUNNEL
	select BR2_PACKAGE_TCPDUMP
		select BR2_PACKAGE_TCPDUMP_SMB

	select BR2_PACKAGE_DHCPDUMP
	select BR2_PACKAGE_TFTPD
# BR2_PACKAGE_TN5250 is not set
	select BR2_PACKAGE_TTCP
	select BR2_PACKAGE_UDPCAST
		select BR2_PACKAGE_UDPCAST_SENDER
		select BR2_PACKAGE_UDPCAST_RECEIVER

	select BR2_PACKAGE_VPNC
	select BR2_PACKAGE_VSFTPD
	select BR2_PACKAGE_VTUN
	select BR2_PACKAGE_WEBIF
		select BR2_PACKAGE_WEBIF_INSTALL_INDEX_HTML
		select BR2_PACKAGE_WEBIF_LANGUAGES

	select BR2_PACKAGE_WIRELESS_TOOLS

#
# Hardware handling / blockdevices and filesystem maintenance
#
	select BR2_PACKAGE_DBUS
	select BR2_DBUS_EXPAT
		select BR2_DBUS_LIBXML2
		select BR2_PACKAGE_DBUS_GLIB

	select BR2_PACKAGE_DEVMEM2
	select BR2_PACKAGE_DM
	select BR2_PACKAGE_DMRAID
	select BR2_PACKAGE_E2FSPROGS
		select BR2_PACKAGE_E2FSPROGS_BADBLOCKS
		select BR2_PACKAGE_E2FSPROGS_BLKID
		select BR2_PACKAGE_E2FSPROGS_CHATTR
		select BR2_PACKAGE_E2FSPROGS_DUMPE2FS
		select BR2_PACKAGE_E2FSPROGS_E2FSCK
		select BR2_PACKAGE_E2FSPROGS_E2LABEL
		select BR2_PACKAGE_E2FSPROGS_FILEFRAG
		select BR2_PACKAGE_E2FSPROGS_FINDFS
		select BR2_PACKAGE_E2FSPROGS_FSCK
		select BR2_PACKAGE_E2FSPROGS_LOGSAVE
		select BR2_PACKAGE_E2FSPROGS_LSATTR
		select BR2_PACKAGE_E2FSPROGS_MKE2FS
		select BR2_PACKAGE_E2FSPROGS_MKLOSTFOUND
		select BR2_PACKAGE_E2FSPROGS_TUNE2FS
		select BR2_PACKAGE_E2FSPROGS_UUIDGEN
		select BR2_PACKAGE_EEPROG

	select BR2_PACKAGE_FCONFIG
	select BR2_PACKAGE_FIS
	select BR2_PACKAGE_LIBFUSE
	select BR2_PACKAGE_GADGETFS_TEST
#		BR2_PACKAGE_GADGETFS_TEST_USE_AIO is not set

	select BR2_PACKAGE_HAL
	select BR2_PACKAGE_HWDATA
	select BR2_PACKAGE_I2C_TOOLS
	select BR2_PACKAGE_INPUT_TOOLS
		select BR2_PACKAGE_INPUT_TOOLS_EVTEST
		select BR2_PACKAGE_INPUT_TOOLS_INPUTATTACH
		select BR2_PACKAGE_INPUT_TOOLS_JSCAL
		select BR2_PACKAGE_INPUT_TOOLS_JSTEST

	select BR2_PACKAGE_IOSTAT
	select BR2_PACKAGE_LIBAIO
# BR2_PACKAGE_LIBRAW1394 is not set
	select BR2_PACKAGE_LIBUSB
	select BR2_PACKAGE_LM_SENSORS
	select BR2_PACKAGE_LVM2
	select BR2_PACKAGE_MDADM
	select BR2_PACKAGE_MEMTESTER
	select BR2_PACKAGE_MKDOSFS
	select BR2_PACKAGE_MTD
# BR2_PACKAGE_MTD_UTILS is not set
		select BR2_PACKAGE_MTD_20061007
# 		BR2_PACKAGE_MTD_20050122 is not set
# 		BR2_PACKAGE_MTD_UTILS_GIT is not set

#
# MTD tools selection
#
		select BR2_PACKAGE_MTD_DOCFDISK
		select BR2_PACKAGE_MTD_DOC_LOADBIOS
		select BR2_PACKAGE_MTD_FLASHCP
		select BR2_PACKAGE_MTD_FLASH_ERASE
		select BR2_PACKAGE_MTD_FLASH_ERASEALL
		select BR2_PACKAGE_MTD_FLASH_INFO
		select BR2_PACKAGE_MTD_FLASH_LOCK
		select BR2_PACKAGE_MTD_FLASH_UNLOCK
		select BR2_PACKAGE_MTD_FTL_CHECK
		select BR2_PACKAGE_MTD_FTL_FORMAT
		select BR2_PACKAGE_MTD_JFFS2DUMP
		select BR2_PACKAGE_MTD_MKFSJFFS2
		select BR2_PACKAGE_MTD_MKFSJFFS
		select BR2_PACKAGE_MTD_MTD_DEBUG
		select BR2_PACKAGE_MTD_NANDDUMP
		select BR2_PACKAGE_MTD_NANDWRITE
		select BR2_PACKAGE_MTD_NFTL_FORMAT
		select BR2_PACKAGE_MTD_NFTLDUMP
		select BR2_PACKAGE_MTD_SUMTOOL
		select BR2_PACKAGE_NTFS-3G
# BR2_PACKAGE_PCIUTILS is not set
# BR2_PACKAGE_PCMCIA is not set
# BR2_PACKAGE_RAIDTOOLS is not set
	select BR2_PACKAGE_SETSERIAL
	select BR2_PACKAGE_SMARTMONTOOLS
	select BR2_PACKAGE_UDEV_VOLUME_ID
	select BR2_PACKAGE_UDEV_SCSI_ID
	select BR2_PACKAGE_USBMOUNT
	select BR2_PACKAGE_USBUTILS
	select BR2_PACKAGE_WIPE
# BR2_PACKAGE_XFSPROGS is not set

#
# Audio and video libraries and applications
#
	select BR2_PACKAGE_ALSA_LIB
	select BR2_PACKAGE_ALSA_LIB_PYTHON
	select BR2_PACKAGE_ALSA_UTILS

#
# ALSA utils selection
#
	select BR2_PACKAGE_ALSA_UTILS_ALSACONF
	select BR2_PACKAGE_ALSA_UTILS_ALSACTL
	select BR2_PACKAGE_ALSA_UTILS_ALSAMIXER
# BR2_PACKAGE_ALSA_UTILS_AMIDI is not set
	select BR2_PACKAGE_ALSA_UTILS_AMIXER
	select BR2_PACKAGE_ALSA_UTILS_APLAY
# BR2_PACKAGE_ALSA_UTILS_ARECORD is not set
# BR2_PACKAGE_ALSA_UTILS_IECSET is not set
# BR2_PACKAGE_ALSA_UTILS_ACONNECT is not set
# BR2_PACKAGE_ALSA_UTILS_APLAYMIDI is not set
# BR2_PACKAGE_ALSA_UTILS_ARECORDMIDI is not set
# BR2_PACKAGE_ALSA_UTILS_ASEQDUMP is not set
# BR2_PACKAGE_ALSA_UTILS_ASEQNET is not set
# BR2_PACKAGE_ALSA_UTILS_SPEAKER_TEST is not set
# BR2_PACKAGE_ASTERISK is not set
	select BR2_PACKAGE_AUMIX
	select BR2_PACKAGE_GSTREAMER
	select BR2_PACKAGE_GST_PLUGINS_BASE
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_ADDER is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_AUDIOCONVERT
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_AUDIORATE is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_AUDIORESAMPLE
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_AUDIOTESTSRC is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_FFMPEGCOLORSPACE
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_GDP is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_PLAYBACK
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_SUBPARSE is not set
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_TCP is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_TYPEFIND
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VIDEOTESTSRC is not set
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VIDEORATE is not set
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VIDEOSCALE
	select BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VOLUME
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_OGG is not set
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_THEORA is not set
# BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_VORBIS is not set
	select BR2_PACKAGE_GST_PLUGINS_GOOD
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_VIDEOFILTER is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_ALPHA is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_APETAG is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_AUDIOFX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_AUPARSE is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_AUTODETECT is not set
	select BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_AVI
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_CUTTER is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_DEBUG is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_EFFECTV is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_EQUALIZER is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_ID3DEMUX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_ICYDEMUX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_INTERLEAVE is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_FLX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_GOOM is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_GOOM2K1 is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_LAW is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_LEVEL is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_MATROSKA is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_MONOSCOPE is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_MULTIFILE is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_MULTIPART is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_QTDEMUX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_REPLAYGAIN is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_RTP is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_RTSP is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_SMPTE is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_SPECTRUM is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_UDP is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_VIDEOBOX is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_VIDEOCROP is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_VIDEOMIXER is not set
# BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_WAVENC is not set
	select BR2_PACKAGE_GST_PLUGINS_GOOD_PLUGIN_WAVPARSE
	select BR2_PACKAGE_GST_PLUGINS_UGLY
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_ASFDEMUX is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_DVDLPCMDEC is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_DVDSUB is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_IEC958 is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_MPEGAUDIOPARSE is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_MPEGSTREAM is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_REALMEDIA is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_SYNAESTHESIA is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_ID3TAG is not set
# BR2_PACKAGE_GST_PLUGINS_UGLY_PLUGIN_MAD is not set
	select BR2_PACKAGE_LIBID3TAG
	select BR2_PACKAGE_LIBMAD
	select BR2_PACKAGE_LIBMAD_TARGET_HEADERS
	select BR2_PACKAGE_LIBMPD
	select BR2_PACKAGE_LIBOGG
	select BR2_PACKAGE_LIBSNDFILE
	select BR2_PACKAGE_LIBTHEORA
	select BR2_PACKAGE_LIBVORBIS
	select BR2_PACKAGE_LIBVORBIS_TREMOR
	select BR2_PACKAGE_MADPLAY
	select BR2_PACKAGE_MADPLAY_ALSA
	select BR2_PACKAGE_MPG123
	select BR2_PACKAGE_MPG123_ALSA
	select BR2_PACKAGE_MPLAYER
	select BR2_PACKAGE_SPEEX
		select BR2_PACKAGE_SPEEX_ARM_GENERIC
	select BR2_PACKAGE_FESTIVAL
	select BR2_PACKAGE_SPEECH_TOOLS
		select BR2_PACKAGE_FESTLEX_CMU
		select BR2_PACKAGE_FESTLEX_OALD
		select BR2_PACKAGE_FESTLEX_POS
	select BR2_PACKAGE_FESTVOX_AWB
	select BR2_PACKAGE_FESTVOX_BDL
	select BR2_PACKAGE_FESTVOX_JMK
	select BR2_PACKAGE_FESTVOX_SLT
# BR2_PACKAGE_FESTVOX_AWB_MULTISYN is not set
# BR2_PACKAGE_FESTVOX_JMK_MULTISYN is not set
# BR2_PACKAGE_FESTVOX_KAL_SIXTEENK is not set
# BR2_PACKAGE_FESTVOX_KED_EIGHTK is not set
# BR2_PACKAGE_FESTVOX_KED_SIXTEENK is not set
	select BR2_PACKAGE_VLC
	select BR2_PACKAGE_NCURSES
	select BR2_PACKAGE_NCURSES_TARGET_PANEL
	select BR2_PACKAGE_NCURSES_TARGET_FORM
	select BR2_PACKAGE_NCURSES_TARGET_MENU
	select BR2_PACKAGE_NCURSES_TARGET_HEADERS
	select BR2_PACKAGE_NEWT
	select BR2_PACKAGE_SLANG
	select BR2_PACKAGE_DIALOG
	select BR2_PACKAGE_DIRECTFB
	select BR2_PACKAGE_DIRECTFB_MULTI
	select BR2_PACKAGE_DIRECTFB_KEYBOARD
	select BR2_PACKAGE_DIRECTFB_SERIALMOUSE
	select BR2_PACKAGE_DIRECTFB_PNG
	select BR2_PACKAGE_DIRECTFB_TSLIB
	select BR2_PACKAGE_DIRECTFB_GIF
	select BR2_PACKAGE_DIRECTFB_JPEG
	select BR2_PACKAGE_DIRECTFB_EXAMPLES
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_ANDI
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_BLTLOAD
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_CPULOAD
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_DATABUFFER
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_DIOLOAD
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_DOK
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_DRIVERTEST
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_FIRE
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_FLIP
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_FONTS
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_INPUT
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_JOYSTICK
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_KNUCKLES
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_LAYER
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_NEO
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_NETLOAD
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_PALETTE
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_PARTICLE
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_PORTER
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_STRESS
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_TEXTURE
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_VIDEO_PARTICLE
	select BR2_PACKAGE_DIRECTFB_EXAMPLES_WINDOW
	select BR2_PACKAGE_FBDUMP
	select BR2_PACKAGE_IMAGEMAGICK
	select BR2_PACKAGE_JPEG
	select BR2_PACKAGE_LIBART
	select BR2_PACKAGE_LIBPNG
	select BR2_PACKAGE_LIBUNGIF
	select BR2_PACKAGE_LINUX_FUSION
	select BR2_PACKAGE_LITE
	select BR2_PACKAGE_PIXMAN
	select BR2_PACKAGE_SAWMAN
	select BR2_PACKAGE_SDL
	select BR2_PACKAGE_SDL_FBCON
	select BR2_PACKAGE_SDL_DIRECTFB
# BR2_PACKAGE_SDL_QTOPIA is not set
# BR2_PACKAGE_SDL_X11 is not set
	select BR2_PACKAGE_SDL_IMAGE
	select BR2_PACKAGE_SDL_IMAGE_BMP
	select BR2_PACKAGE_SDL_IMAGE_GIF
	select BR2_PACKAGE_SDL_IMAGE_JPEG
# BR2_PACKAGE_SDL_IMAGE_LBM is not set
# BR2_PACKAGE_SDL_IMAGE_PCX is not set
# BR2_PACKAGE_SDL_IMAGE_PNG is not set
# BR2_PACKAGE_SDL_IMAGE_PNM is not set
# BR2_PACKAGE_SDL_IMAGE_TARGA is not set
# BR2_PACKAGE_SDL_IMAGE_TIFF is not set
# BR2_PACKAGE_SDL_IMAGE_XCF is not set
# BR2_PACKAGE_SDL_IMAGE_XPM is not set
# BR2_PACKAGE_SDL_IMAGE_XV is not set
	select BR2_PACKAGE_SDL_MIXER
	select BR2_PACKAGE_SDL_NET
	select BR2_PACKAGE_SDL_TTF
	select BR2_PACKAGE_TIFF
	select BR2_PACKAGE_FBV
	select BR2_PACKAGE_FBSET
# BR2_PACKAGE_QT is not set
	select BR2_PACKAGE_XSERVER_none
# BR2_PACKAGE_XSERVER_xorg is not set
# BR2_PACKAGE_XSERVER_tinyx is not set
	select BR2_PACKAGE_ATK
	select BR2_PACKAGE_CAIRO
	select BR2_PACKAGE_PANGO
	select BR2_PACKAGE_LIBDRM
	select BR2_PACKAGE_LIBERATION
	select BR2_PACKAGE_LIBGLADE
	select BR2_PACKAGE_LIBGLIB12
	select BR2_PACKAGE_LIBGLIB2
	select BR2_PACKAGE_LIBGTK2
	select BR2_PACKAGE_LIBGTK2_ENGINES
	select BR2_PACKAGE_GTK2_THEME_HICOLOR
	select BR2_PACKAGE_LIBSEXY
# BR2_PACKAGE_OPENMOTIF is not set
	select BR2_PACKAGE_FONTCONFIG
	select BR2_PACKAGE_FREETYPE
# BR2_FREETYPE_VERSION_2_2_1 is not set
	select BR2_FREETYPE_VERSION_2_3_7
	select BR2_PACKAGE_TSLIB
	select BR2_PACKAGE_WEBKIT
# BR2_PACKAGE_MATCHBOX is not set
# BR2_PACKAGE_ALSAMIXERGUI is not set

#
# dillo		- disabled (requires jpeg,libglib12,libgtk12,zlib,libpng and Xorg(7))
#
# BR2_PACKAGE_GQVIEW is not set
# BR2_PACKAGE_GMPC is not set
# BR2_PACKAGE_GTKPERF is not set
# BR2_PACKAGE_LEAFPAD is not set

#
# midori		- disabled (requires Xorg(7))
#
# BR2_PACKAGE_PCMANFM is not set
# BR2_PACKAGE_SYLPHEED is not set
# BR2_PACKAGE_TORSMO is not set
# BR2_PACKAGE_X11VNC is not set
# BR2_PACKAGE_XPDF is not set
# BR2_PACKAGE_XSTROKE is not set
# BR2_PACKAGE_XVKBD is not set

#
# Compressors / decompressors
#
	select BR2_PACKAGE_LZO
# BR2_PACKAGE_LZMA is not set
	select BR2_PACKAGE_LZMA_HOST
	select BR2_PACKAGE_ZLIB
# BR2_PACKAGE_ZLIB_TARGET_HEADERS is not set

#
# Package managers
#
	select BR2_PACKAGE_IPKG
	select BR2_PACKAGE_PORTAGE

#
# Interpreter languages / Scripting
#
	select BR2_PACKAGE_LUA
	select BR2_PACKAGE_MICROPERL
	select BR2_PACKAGE_PYTHON
# BR2_PACKAGE_PYTHON_DEV is not set
	select BR2_PACKAGE_PYTHON_PY_ONLY
# BR2_PACKAGE_PYTHON_PYC_ONLY is not set
# BR2_PACKAGE_PYTHON_PY_PYC is not set

#
# The following modules are unusual or require extra libraries
#
# BR2_PACKAGE_PYTHON_BSDDB is not set
# BR2_PACKAGE_PYTHON_CODECSCJK is not set
# BR2_PACKAGE_PYTHON_CURSES is not set
# BR2_PACKAGE_PYTHON_GDBM is not set
# BR2_PACKAGE_PYTHON_NIS is not set
# BR2_PACKAGE_PYTHON_PYEXPAT is not set
# BR2_PACKAGE_PYTHON_READLINE is not set
# BR2_PACKAGE_PYTHON_SSL is not set
# BR2_PACKAGE_PYTHON_TKINTER is not set
# BR2_PACKAGE_PYTHON_UNICODEDATA is not set
	select BR2_PACKAGE_RUBY
	select BR2_PACKAGE_TCL
	select BR2_PACKAGE_TCL_DEL_ENCODINGS
	select BR2_PACKAGE_TCL_SHLIB_ONLY
	select BR2_PACKAGE_PHP
	select BR2_PACKAGE_PHP_CLI
	select BR2_PACKAGE_PHP_CGI
	select BR2_PACKAGE_PHP_FASTCGI

#
# PHP Extensions
#
# BR2_PACKAGE_PHP_EXT_SOCKETS is not set
	select BR2_PACKAGE_PHP_EXT_POSIX
	select BR2_PACKAGE_PHP_EXT_SPL
	select BR2_PACKAGE_PHP_EXT_SESSION
# BR2_PACKAGE_PHP_EXT_OPENSSL is not set
	select BR2_PACKAGE_PHP_EXT_LIBXML2
# BR2_PACKAGE_PHP_EXT_SIMPLEXML is not set
	select BR2_PACKAGE_PHP_EXT_ZLIB
# BR2_PACKAGE_PHP_EXT_EXIF is not set
	select BR2_PACKAGE_PHP_EXT_FTP
	select BR2_PACKAGE_PHP_EXT_GETTEXT
# BR2_PACKAGE_PHP_EXT_GMP is not set
# BR2_PACKAGE_PHP_EXT_JSON is not set
	select BR2_PACKAGE_PHP_EXT_READLINE
	select BR2_PACKAGE_PHP_EXT_NCURSES
# BR2_PACKAGE_PHP_EXT_SYSVMSG is not set
# BR2_PACKAGE_PHP_EXT_SYSVSEM is not set
# BR2_PACKAGE_PHP_EXT_SYSVSHM is not set
# BR2_PACKAGE_PHP_EXT_ZIP is not set
# BR2_PACKAGE_PHP_EXT_FILTER is not set
# BR2_PACKAGE_PHP_EXT_OPENSSL is not set
# BR2_PACKAGE_PHP_EXT_GMP is not set
#
# Database extensions
#
	select BR2_PACKAGE_PHP_EXT_SQLITE
# BR2_PACKAGE_PHP_EXT_SQLITE_UTF8 is not set
	select BR2_PACKAGE_PHP_EXT_PDO
	select BR2_PACKAGE_PHP_EXT_PDO_SQLITE
# BR2_PACKAGE_PHP_EXT_PDO_MYSQL is not set

#
# XML handling
#
	select BR2_PACKAGE_EXPAT
	select BR2_PACKAGE_EZXML
	select BR2_PACKAGE_LIBXML2
	select BR2_PACKAGE_LIBXSLT
	select BR2_PACKAGE_XERCES

#
# Java
#
# BR2_PACKAGE_CLASSPATH is not set

#
# Games
#
# BR2_PACKAGE_GNUCHESS is not set
# BR2_PACKAGE_MAGICCUBE4D is not set
# BR2_PACKAGE_PRBOOM is not set
# BR2_PACKAGE_RUBIX is not set
# BR2_PACKAGE_VICE is not set
# BR2_PACKAGE_XBOARD is not set

	select BR2_TARGET_UBOOT
	select BR2_TARGET_UBOOT_2009_01_RC3
#
# Kernel
#
# BR2_KERNEL_none is not set
	select BR2_KERNEL_LINUX_ADVANCED
# BR2_KERNEL_LINUX is not set
# BR2_KERNEL_HURD is not set
	select BR2_PACKAGE_LINUX
	select BR2_LINUX_2_6_28

