[oe] [meta-oe] [PATCH] mariadb: drop anonymous function

Robert Yang liezhi.yang at windriver.com
Fri Sep 19 02:02:29 UTC 2014



On 09/16/2014 10:39 PM, Robert Yang wrote:
>
>
> On 09/16/2014 10:30 PM, Paul Eggleton wrote:
>> Hi Robert,
>>
>> On Tuesday 16 September 2014 06:54:40 Robert Yang wrote:
>>> The anonymous function redefined bindir to bindir_noprefix (and others),
>>> which broke the sstate between build dirs. After checked the vars in
>>> CMakeCache.txt, we can drop it safely, and the builds are OK.
>>>
>>> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
>>> ---
>>>   meta-oe/recipes-support/mysql/mariadb_5.5.39.inc |   28
>>> +++++++--------------- 1 file changed, 8 insertions(+), 20 deletions(-)
>>>
>>> diff --git a/meta-oe/recipes-support/mysql/mariadb_5.5.39.inc
>>> b/meta-oe/recipes-support/mysql/mariadb_5.5.39.inc index 9cc2cc9..f5c0a1f
>>> 100644
>>> --- a/meta-oe/recipes-support/mysql/mariadb_5.5.39.inc
>>> +++ b/meta-oe/recipes-support/mysql/mariadb_5.5.39.inc
>>> @@ -35,18 +35,6 @@ SYSTEMD_AUTO_ENABLE_mariadb-server = "disable"
>>>
>>>   EXTRA_OEMAKE = "'GEN_LEX_HASH=${STAGING_BINDIR_NATIVE}/gen_lex_hash'"
>>>
>>> -python __anonymous() {
>>> -    # This is a pain but it's the only way to pass these in since
>>> -    # MariaDB's cmake scripts insist on prepending the prefix to the
>>> -    # specified values for INSTALL_*
>>> -    localdata = d.createCopy()
>>> -    localdata.setVar('prefix', '')
>>> -    localdata.setVar('exec_prefix', '')
>>> -    d.setVar('bindir_noprefix', localdata.getVar('bindir',
>>> True).lstrip('/')) -    d.setVar('sbindir_noprefix',
>>> localdata.getVar('sbindir', True).lstrip('/')) -
>>> d.setVar('datadir_noprefix', localdata.getVar('datadir', True).lstrip('/'))
>>> -    d.setVar('libdir_noprefix', localdata.getVar('libdir',
>>> True).lstrip('/')) -}
>>>
>>>   PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam',
>>> '', d)}" PACKAGECONFIG_class-native = ""
>>> @@ -64,15 +52,15 @@ EXTRA_OECMAKE = "-DWITH_EMBEDDED_SERVER=ON \
>>>                    -DNROFF=FALSE \
>>>                    -DENABLE_DTRACE=FALSE \
>>>                    -DWITH_PIC=ON \
>>> -                 -DINSTALL_DOCDIR:PATH=${datadir_noprefix}/doc/${BPN} \
>>> -                 -DINSTALL_BINDIR:PATH=${bindir_noprefix} \
>>> -                 -DINSTALL_SBINDIR:PATH=${sbindir_noprefix} \
>>> -                 -DINSTALL_SCRIPTDIR:PATH=${bindir_noprefix} \
>>> -                 -DINSTALL_LIBDIR:PATH=${libdir_noprefix} \
>>> -                 -DINSTALL_PLUGINDIR:PATH=${libdir_noprefix}/plugin \
>>> +                 -DINSTALL_DOCDIR:PATH=${datadir}/doc/${BPN} \
>>> +                 -DINSTALL_BINDIR:PATH=${bindir} \
>>> +                 -DINSTALL_SBINDIR:PATH=${sbindir} \
>>> +                 -DINSTALL_SCRIPTDIR:PATH=${bindir} \
>>> +                 -DINSTALL_LIBDIR:PATH=${libdir} \
>>> +                 -DINSTALL_PLUGINDIR:PATH=${libdir}/plugin \
>>>                    -DINSTALL_SYSCONFDIR:PATH=${sysconfdir} \
>>> -                 -DINSTALL_MYSQLSHAREDIR:PATH=${datadir_noprefix}/mysql \
>>> -
>>> -DINSTALL_SUPPORTFILESDIR:PATH=${datadir_noprefix}/mysql-support-files \ +
>>>                 -DINSTALL_MYSQLSHAREDIR:PATH=${datadir}/mysql \
>>> +
>>> -DINSTALL_SUPPORTFILESDIR:PATH=${datadir}/mysql-support-files \
>>> -DMYSQL_DATADIR:PATH=/var/mysql \
>>>                    -DCAT_EXECUTABLE=`which cat` \
>>>                    -DCMAKE_AR:FILEPATH=${AR}"
>>
>> I'm pretty sure I tested this beforehand; the problem I found is that some of
>> the scripts end up with the prefix twice in substituted paths because it is
>> expected that the paths supplied at configuration time do not include the
>> prefix, but our paths normally include them.
>>
>> Did you do runtime tests with this change?
>
> Thanks, not yet, I will do and reply later.

Hi Paul,

You are right, there are problems when runtime testing. I will try to fix
it in another way, we need fix it is because it breaks the sstate which depends
on mariadb. (and several ones)

// Robert

>
> // Robert
>
>>
>> Cheers,
>> Paul
>>



More information about the Openembedded-devel mailing list