# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License, v2
# $Header: /var/cvsroot/gentoo-x86/profiles/base/virtuals,v 1.120 2009/08/12 19:26:00 ssuominen Exp $

# This file describes the packages that by default satisfy a certain virtual
# That this file exists in the base profile implies that these packages will
# work on any architecture that needs that virtual

# KEEP THIS FILE SORTED ALPHABETICALLY OR RISK WRATH

virtual/alsa				sys-kernel/gentoo-sources
virtual/antivirus			app-antivirus/clamav
virtual/aspell-dict			app-dicts/aspell-en
virtual/blackbox			x11-wm/blackbox
virtual/commonlisp			dev-lisp/sbcl
virtual/cron				sys-process/vixie-cron
virtual/dev-manager			sys-fs/udev
virtual/dhcpc				net-misc/dhcpcd
virtual/fam				app-admin/gamin
virtual/gsasl				net-libs/libgsasl
virtual/gzip				app-arch/gzip
virtual/httpd-php			dev-lang/php
virtual/imap-c-client		net-libs/c-client
virtual/imapd				net-mail/courier-imap
virtual/inetd				sys-apps/xinetd
virtual/j2ee				dev-java/sun-j2ee
virtual/jabber-server		net-im/jabberd
virtual/krb5				app-crypt/mit-krb5
virtual/libc				sys-libs/glibc
virtual/libpcap				net-libs/libpcap
virtual/linux-sources		sys-kernel/gentoo-sources
virtual/logger				app-admin/rsyslog
virtual/lpr					net-print/cups
virtual/m3					dev-lang/cm3-bin
virtual/mailx				mail-client/mailx
virtual/man					sys-apps/man
virtual/mda					mail-filter/procmail
virtual/modutils			sys-apps/module-init-tools
virtual/mta					mail-mta/ssmtp
virtual/ooo					app-office/openoffice-bin
# Only have this for >=pam-0.78, as we want to make use of the 'include'
# directive to phase out pam_stack.
virtual/pam					>=sys-libs/pam-0.78
virtual/pbs					sys-cluster/torque
virtual/php					dev-lang/php
virtual/portage				sys-apps/portage
virtual/python				dev-lang/python
virtual/quicktime			media-libs/libquicktime
virtual/ruby				dev-lang/ruby
virtual/skkserv				app-i18n/skkserv
virtual/squeak-image		dev-lang/squeak-basicimage
virtual/ssh					net-misc/openssh
virtual/tftp				net-ftp/tftp-hpa
virtual/utempter			sys-libs/libutempter
virtual/w3m					www-client/w3m
