# Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ # Original author: Rob Cakebread # Rewritten by: Ryan Hill # # Currently maintained by the wxWidgets team # This eclass provides easy access to Gentoo's wxWidgets framework for # usage by your packages. inherit eutils flag-o-matic need-wxwidgets() { local wxtoolkit wxsuffix wxconfig # TODO: sanity checking here append-flags -fno-strict-aliasing # wx-config naming logic: # wx{base|gtk2}[u][d]-${WX_GTK_VER}-config # DEBUG echo eerror "need-wxwidgets: ${1}" echo case "$1" in ansi) check_wxuse X wxsuffix="" ;; ansi-debug) check_wxuse X check_wxuse debug wxsuffix="d" ;; unicode) check_wxuse X check_wxuse unicode wxsuffix="u" ;; unicode-debug) check_wxuse X check_wxuse unicode check_wxuse debug wxsuffix="ud" ;; base-ansi) wxsuffix="" ;; base-ansi-debug) check_wxuse debug wxsuffix="d" ;; base-unicode) check_wxuse unicode wxsuffix="u" ;; base-unicode-debug) check_wxuse unicode check_wxuse debug wxsuffix="ud" ;; # backwards compat gtk2) check_wxuse X wxsuffix="" ;; base) wxsuffix="" ;; *) echo eerror "${FUNCNAME} - called with an invalid argument: $1" eerror "See wxwidgets.eclass for a list of valid values." die "Invalid ${FUNCNAME} argument." ;; esac wxconfig_prefix="/usr/bin" if $(built_with_use =x11-libs/wxGTK-${WX_GTK_VER}* X); then wxtoolkit="gtk2" else wxtoolkit="base" fi wxconfig_name="wx${wxtoolkit}${wxsuffix}-${WX_GTK_VER}-config" wxconfig="${wxconfig_prefix}/${wxconfig_name}" # export handy vars that can be used in ebuilds # some packages also count on one or more of these to be set export WXCONFIG="${wxconfig}" export WX_CONFIG="${wxconfig}" export WX_CONFIG_NAME="${wxconfig_name}" export WXBASE_CONFIG_NAME="${wxconfig_name}" echo ewarn "Requested: ${1}" ewarn "Using: ${wxconfig}" echo } check_wxuse() { ebegin "Checking wxGTK-${WX_GTK_VER} for ${1} support" if $(built_with_use =x11-libs/wxGTK-${WX_GTK_VER}* ${1}); then eend 0 else eend 1 echo eerror "${FUNCNAME} - You have requested functionality that requires ${1} support to" eerror "have been built into x11-libs/wxGTK." eerror eerror "Please re-merge =x11-libs/wxGTK-${WX_GTK_VER}* with the ${1} USE flag enabled." die "Missing USE flags." fi }