From: Richard Purdie Date: Sun, 6 Feb 2005 22:30:30 +0000 (+0000) Subject: classes/binconfig.bbclass: Fix namespace clash if you compile in /usr or friends X-Git-Tag: Release-2010-05/1~15123 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=65f3fc9521119f91bf570481074e2cc4c296ece7;p=openembedded.git classes/binconfig.bbclass: Fix namespace clash if you compile in /usr or friends BKrev: 42069a8624BK350E1xrDCQmGxx2tWA --- diff --git a/classes/binconfig.bbclass b/classes/binconfig.bbclass index e69de29bb2..7011004026 100644 --- a/classes/binconfig.bbclass +++ b/classes/binconfig.bbclass @@ -0,0 +1,31 @@ +inherit base + +# The namespaces can clash here hence the two step replace +def get_binconfig_mangle(d): + import bb.data + s = "-e ''" + if not bb.data.inherits_class('native', d): + s += " -e 's:${libdir}:OELIBDIR:;'" + s += " -e 's:${includedir}:OEINCDIR:;'" + s += " -e 's:${datadir}:OEDATADIR:'" + s += " -e 's:${prefix}:OEPREFIX:'" + s += " -e 's:${exec_prefix}:OEEXECPREFIX:'" + s += " -e 's:OELIBDIR:${STAGING_LIBDIR}:;'" + s += " -e 's:OEINCDIR:${STAGING_INCDIR}:;'" + s += " -e 's:OEDATADIR:${STAGING_DATADIR}:'" + s += " -e 's:OEPREFIX:${STAGING_LIBDIR}/..:'" + s += " -e 's:OEEXECPREFIX:${STAGING_LIBDIR}/..:'" + return s + +def is_native(d): + import bb.data + return ["","-native"][bb.data.inherits_class('native', d)] + +do_stage_append() { + for config in `find ${S} -name '*-config'`; do + configname=`basename $config`${@is_native(d)} + install -d ${STAGING_BINDIR} + cat $config | sed ${@get_binconfig_mangle(d)} > ${STAGING_BINDIR}/$configname + chmod u+x ${STAGING_BINDIR}/$configname + done +}