[oe] [meta-oe][PATCH 1/5] waf-samba: add new class

Koen Kooi koen at dominion.thruhere.net
Fri Aug 21 02:46:34 UTC 2015



Op 21 aug. 2015 om 04:26 heeft Bian, Naimeng <biannm at cn.fujitsu.com> het volgende geschreven:

>> -----Original Message-----
>> From: Koen Kooi [mailto:koen at dominion.thruhere.net]
>> Sent: Friday, August 21, 2015 9:42 AM
>> To: Bian, Naimeng
>> Cc: openembedded-devel at lists.openembedded.org
>> Subject: Re: [meta-oe][PATCH 1/5] waf-samba: add new class
>> 
>> Op 21 aug. 2015 om 03:11 heeft Bian, Naimeng <biannm at cn.fujitsu.com> het
>> volgende geschreven:
>> 
>>>> -----Original Message-----
>>>> From: Koen Kooi [mailto:koen at dominion.thruhere.net]
>>>> Sent: Thursday, August 20, 2015 11:59 PM
>>>> To: openembedded-devel at lists.openembedded.org
>>>> Cc: Bian, Naimeng; Koen Kooi
>>>> Subject: [meta-oe][PATCH 1/5] waf-samba: add new class
>>>> 
>>>> From: Bian Naimeng <biannm at cn.fujitsu.com>
>>>> 
>>>> waf-samba is a build system used by samba related software
>>>> 
>>>> Signed-off-by: Bian Naimeng <biannm at cn.fujitsu.com>
>>>> Signed-off-by: Koen Kooi <koen at dominion.thruhere.net>
>>>> ---
>>>> meta-oe/classes/waf-samba.bbclass | 51
>>>> +++++++++++++++++++++++++++++++++++++++
>>>> 1 file changed, 51 insertions(+)
>>>> create mode 100644 meta-oe/classes/waf-samba.bbclass
>>>> 
>>>> diff --git a/meta-oe/classes/waf-samba.bbclass
>>>> b/meta-oe/classes/waf-samba.bbclass
>>>> new file mode 100644
>>>> index 0000000..b8e010a
>>>> --- /dev/null
>>>> +++ b/meta-oe/classes/waf-samba.bbclass
>>>> @@ -0,0 +1,51 @@
>>>> +# waf is a build system which is used by samba related project.
>>>> +# Obtain details from https://wiki.samba.org/index.php/Waf
>>>> +#
>>>> +inherit qemu pythonnative
>>>> +
>>>> +DEPENDS += "qemu-native libxslt-native
>>>> +docbook-xsl-stylesheets-native
>>>> python"
>>>> +
>>>> +CONFIGUREOPTS = " --prefix=${prefix} ¥
>>>> +                  --bindir=${bindir} ¥
>>>> +                  --sbindir=${sbindir} ¥
>>>> +                  --libexecdir=${libexecdir} ¥
>>>> +                  --datadir=${datadir} ¥
>>>> +                  --sysconfdir=${sysconfdir} ¥
>>>> +                  --sharedstatedir=${sharedstatedir} ¥
>>>> +                  --localstatedir=${localstatedir} ¥
>>>> +                  --libdir=${libdir} ¥
>>>> +                  --includedir=${includedir} ¥
>>>> +                  --oldincludedir=${oldincludedir} ¥
>>>> +                  --infodir=${infodir} ¥
>>>> +                  --mandir=${mandir} ¥
>>>> +                "
>>>> +
>>>> +do_configure() {
>>>> +    qemu_binary="${@qemu_target_binary(d)}"
>>>> +    if [ ${qemu_binary} == "qemu-allarch" ]; then
>>>> +        qemu_binary="qemuwrapper"
>>>> +    fi
>>>> +
>>>> +    libdir_qemu="${STAGING_DIR_HOST}/${libdir}"
>>>> +    base_libdir_qemu="${STAGING_DIR_HOST}/${base_libdir}"
>>>> +    oldest_kernel_qemu=${OLDEST_KERNEL}
>>>> +
>>>> +    CROSS_EXEC="${qemu_binary} ¥
>>>> +                -r ${oldest_kernel_qemu} ¥
>>>> +                -L ${STAGING_DIR_HOST} ¥
>>>> +                -E LD_LIBRARY_PATH=${libdir_qemu}:${base_libdir_qemu}"
>>>> +
>>>> +    export BUILD_SYS=${BUILD_SYS}
>>>> +    export HOST_SYS=${HOST_SYS}
>>>> +    export BUILD_ARCH=${BUILD_ARCH}
>>>> +    export HOST_ARCH=${HOST_ARCH}
>>>> +    export STAGING_LIBDIR=${STAGING_LIBDIR}
>>>> +    export STAGING_INCDIR=${STAGING_INCDIR}
>>>> +    export PYTHONPATH=${STAGING_DIR_HOST}${PYTHON_SITEPACKAGES_DIR}
>>>> +
>>>> +    ./configure ${CONFIGUREOPTS} ${EXTRA_OECONF} --cross-compile
>>>> --cross-execute="${CROSS_EXEC}"
>>>> --cross-answers=${B}/cross-answers-${TARGET_ARCH}.txt
>>> 
>>> Thanks for your update.
>>> 
>>> Would you tell me why both --cross-execute and --cross-answer are required.
>> 
>> that's the new hybrid mode, it will generate crossanswers files using qemu.
>> I also have platforms without qemu support
> 
> Does it mean crossanswers file can be generated automatically by qemu while doing configure.
> If so, it's good to me.

that is exactly what it does

> 
> Thanks
> Bian
> 
>> 
>>> If the --cross-answers is not be required, IMO, we do not need support it.
>>> Because it will be not an easy job to maintain
>>> cross-answers-${TARGET_ARCH}.txt for each waf-samba.bbclass based recipe.
>>> 
>>> Thanks
>>> Bian
>>> 
>>>> +}
>>>> +
>>>> +do_install() {
>>>> +    oe_runmake install DESTDIR=${D}
>>>> +}
>>>> --
>>>> 2.0.1
>>> 



More information about the Openembedded-devel mailing list