diff options
author | Richard Purdie <rpurdie@rpsys.net> | 2005-02-06 22:30:30 +0000 |
---|---|---|
committer | Richard Purdie <rpurdie@rpsys.net> | 2005-02-06 22:30:30 +0000 |
commit | 65f3fc9521119f91bf570481074e2cc4c296ece7 (patch) | |
tree | 4bac5f8587f316596f1d02c6d698ae432fe446c9 /classes | |
parent | fa7039f9d85c9355a5367ec7581b6e60392e8a4f (diff) |
classes/binconfig.bbclass: Fix namespace clash if you compile in /usr or friends
BKrev: 42069a8624BK350E1xrDCQmGxx2tWA
Diffstat (limited to 'classes')
-rw-r--r-- | classes/binconfig.bbclass | 31 |
1 files changed, 31 insertions, 0 deletions
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 +} |