# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/eclass/ccc.eclass,v 1.23 2010/01/11 20:26:53 armin76 Exp $

# @DEAD
# To be removed on 2012/01/11
ewarn "Please fix your package (${CATEGORY}/${PF}) to not use ${ECLASS}.eclass"

