efl, e-wm: add a quick sed fix for e builds using system include paths
[openembedded.git] / classes / efl.bbclass
1 MAINTAINER = "Justin Patrin <papercrane@reversefold.com>"
2 HOMEPAGE = "http://www.enlightenment.org"
3 SECTION = "e/libs"
4
5 SRCNAME = "${@bb.data.getVar('PN', d, 1).replace('-native', '')}"
6 SRC_URI = "http://enlightenment.freedesktop.org/files/${SRCNAME}-${PV}.tar.gz"
7 S = "${WORKDIR}/${SRCNAME}-${PV}"
8
9 inherit autotools pkgconfig binconfig
10
11 do_prepsources () {
12   make clean distclean || true
13 }
14 addtask prepsources after do_fetch before do_unpack
15
16 INHIBIT_AUTO_STAGE_INCLUDES  = "1"
17 INHIBIT_NATIVE_STAGE_INSTALL = "1"
18
19 libdirectory = "src/lib"
20 libraries = "lib${SRCNAME}"
21 headers = "${@bb.data.getVar('SRCNAME',d,1).capitalize()}.h"
22
23 def binconfig_suffix(d):
24         import bb
25         return ["","-native"][bb.data.inherits_class('native', d)]
26
27 export CURL_CONFIG              = "${STAGING_BINDIR}/curl-config${@binconfig_suffix(d)}"
28 export EDB_CONFIG               = "${STAGING_BINDIR}/edb-config${@binconfig_suffix(d)}"
29 export EET_CONFIG               = "${STAGING_BINDIR}/eet-config${@binconfig_suffix(d)}"
30 export EVAS_CONFIG              = "${STAGING_BINDIR}/evas-config${@binconfig_suffix(d)}"
31 export ECORE_CONFIG             = "${STAGING_BINDIR}/ecore-config${@binconfig_suffix(d)}"
32 export EMBRYO_CONFIG            = "${STAGING_BINDIR}/embryo-config${@binconfig_suffix(d)}"
33 export ENGRAVE_CONFIG           = "${STAGING_BINDIR}/engrave-config${@binconfig_suffix(d)}"
34 export ENLIGHTENMENT_CONFIG     = "${STAGING_BINDIR}/enlightenment-config${@binconfig_suffix(d)}"
35 export EPSILON_CONFIG           = "${STAGING_BINDIR}/epsilon-config${@binconfig_suffix(d)}"
36 export EPEG_CONFIG              = "${STAGING_BINDIR}/epeg-config${@binconfig_suffix(d)}"
37 export ESMART_CONFIG            = "${STAGING_BINDIR}/esmart-config${@binconfig_suffix(d)}"
38 export FREETYPE_CONFIG          = "${STAGING_BINDIR}/freetype-config${@binconfig_suffix(d)}"
39 export IMLIB2_CONFIG            = "${STAGING_BINDIR}/imlib2-config${@binconfig_suffix(d)}"
40
41 do_compile_prepend() {
42         find ${S} -name Makefile | xargs sed -i 's:/usr/include:${STAGING_INCDIR}:'
43 }
44
45 do_stage_append () {
46         for i in ${libraries}
47         do
48                 oe_libinstall -C ${libdirectory} $i ${STAGING_LIBDIR}
49         done
50         for i in ${headers}
51         do
52                 install -m 0644 ${libdirectory}/$i ${STAGING_INCDIR}
53         done
54
55         # Install binaries automatically for native builds
56         if [ "${@binconfig_suffix(d)}" = "-native" ]
57         then
58
59                 # Most EFL binaries start with the package name
60                 for i in src/bin/${SRCNAME}*
61                 do
62                         if [ -x $i -a -f $i ]
63                         then
64
65                                 # Don't install anything with an extension (.so, etc)
66                                 if echo $i | grep -v \\.
67                                 then
68                                         ${HOST_SYS}-libtool --mode=install install -m 0755 $i ${STAGING_BINDIR}
69                                 fi
70                         fi
71                 done
72         fi
73 }
74
75 PACKAGES = "${SRCNAME} ${SRCNAME}-themes ${SRCNAME}-dev ${SRCNAME}-examples"
76 FILES_${SRCNAME} = "${libdir}/lib*.so*"
77 FILES_${SRCNAME}-themes = "${datadir}/${SRCNAME}/themes ${datadir}/${SRCNAME}/data ${datadir}/${SRCNAME}/fonts ${datadir}/${SRCNAME}/pointers ${datadir}/${SRCNAME}/images ${datadir}/${SRCNAME}/users ${datadir}/${SRCNAME}/images ${datadir}/${SRCNAME}/styles"
78 FILES_${SRCNAME}-dev += "${bindir}/${SRCNAME}-config ${libdir}/pkgconfig ${libdir}/lib*.?a ${datadir}/${SRCNAME}/include"
79 FILES_${SRCNAME}-examples = "${bindir} ${datadir}"
80