bitbake.conf: use rootfs/${PN} for IMAGE_ROOTFS
[vuplus_openembedded] / classes / binconfig.bbclass
index 317e080..5789903 100644 (file)
@@ -1,5 +1,7 @@
 inherit base
 
+FILES_${PN}-dev += "${bindir}/*-config"
+
 # The namespaces can clash here hence the two step replace
 def get_binconfig_mangle(d):
        import bb.data
@@ -9,22 +11,21 @@ def get_binconfig_mangle(d):
                s += " -e 's:=%s${libdir}:=\\1OELIBDIR:;'" % optional_quote
                s += " -e 's:=%s${includedir}:=\\1OEINCDIR:;'" % optional_quote
                s += " -e 's:=%s${datadir}:=\\1OEDATADIR:'" % optional_quote
-               s += " -e 's:=%s${prefix}:=\\1OEPREFIX:'" % optional_quote
-               s += " -e 's:=%s${exec_prefix}:=\\1OEEXECPREFIX:'" % optional_quote
+               s += " -e 's:=%s${prefix}/:=\\1OEPREFIX/:'" % optional_quote
+               s += " -e 's:=%s${exec_prefix}/:=\\1OEEXECPREFIX/:'" % optional_quote
                s += " -e 's:-L${libdir}:-LOELIBDIR:;'"
                s += " -e 's:-I${includedir}:-IOEINCDIR:;'"
                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}/..:'"
+               s += " -e 's:OEPREFIX:${STAGING_DIR_HOST}${layout_prefix}:'"
+               s += " -e 's:OEEXECPREFIX:${STAGING_DIR_HOST}${layout_exec_prefix}:'"
+               s += " -e 's:-I${WORKDIR}:-I${STAGING_INCDIR}:'"
+               s += " -e 's:-L${WORKDIR}:-L${STAGING_LIBDIR}:'"
+               if bb.data.getVar("OE_BINCONFIG_EXTRA_MANGLE", d):
+                   s += bb.data.getVar("OE_BINCONFIG_EXTRA_MANGLE", d)
        return s
 
-# Native package configurations go in ${BINDIR}/<name>-config-native to prevent a collision with cross packages
-def is_native(d):
-       import bb.data
-       return ["","-native"][bb.data.inherits_class('native', d)]
-
 BINCONFIG_GLOB ?= "*-config"
 
 do_install_append() {
@@ -36,25 +37,25 @@ do_install_append() {
                -e 's:${STAGING_LIBDIR}:${libdir}:g;' \ 
                -e 's:${STAGING_INCDIR}:${includedir}:g;' \
                -e 's:${STAGING_DATADIR}:${datadir}:' \
-               -e 's:${STAGING_LIBDIR}/..:${prefix}:' > ${D}${bindir}/`basename $config`
+               -e 's:${STAGING_DIR_HOST}${layout_prefix}:${prefix}:' > ${D}${bindir}/`basename $config`
         done
     fi 
 
-       for lafile in `find ${D} -name *.la` ; do
+       for lafile in `find ${D} -name "*.la"` ; do
                sed -i \
                    -e 's:${STAGING_LIBDIR}:${libdir}:g;' \
                    -e 's:${STAGING_INCDIR}:${includedir}:g;' \
                    -e 's:${STAGING_DATADIR}:${datadir}:' \
-                   -e 's:${STAGING_LIBDIR}/..:${prefix}:' \
+                   -e 's:${STAGING_DIR_HOST}${layout_prefix}:${prefix}:' \
                    $lafile
        done        
 }
 
 do_stage_append() {
        for config in `find ${S} -name '${BINCONFIG_GLOB}'`; 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
+               configname=`basename $config`
+               install -d ${STAGING_BINDIR_CROSS}
+               cat $config | sed ${@get_binconfig_mangle(d)} > ${STAGING_BINDIR_CROSS}/$configname
+               chmod u+x ${STAGING_BINDIR_CROSS}/$configname
        done
 }