[OE-core] Suggest removing classes/siteconfig.bbclass

Robert Yang liezhi.yang at windriver.com
Thu Jan 10 07:22:23 UTC 2019


Hi,

I reimplemented glibc's site config and did a lot of tests recently, finally,
I found that it isn't as useful as I had thought, so I'm leaning to remove
classes/siteconfig.bbclass.

* Here are the test results of with/without glibc's siteconfig:
$ bitbake recipe -cconfigure && bitbake recipe -ccleansstate && time bitbake 
recipe -cconfigure
- gettext:
     without: 2m38.382s
     with:    2m33.099s

- coreutils:
     without: 1m19.967s
     with:    1m13.574s

- bison:
     without: 0m56.203s
     with:    0m50.134s

These 3 recipes' do_configure are very time consuming, we can see that it saves
about 6s for bison/coreutils/gettext's do_configure, but they need depend on
glibc's site config recipe (glibc-site.bb), while glibc-site requires about 30s
to build, so if we count glibc-site's 30s, it seems not worth. And I also tested
again and again on core-image-minimal and core-image-sato with/without glibc's
siteconfig, there is nearly no difference, about 30s in 30m (1.6%)'s
differences, this maybe because of host rather than siteconfig. So I think that
we can remove classes/siteconfig.bbclass since it is not as useful as expected.

I've also tested remove siteconfig.bbclass (zlib and ncurses use it), there is
no difference when "time bitbake core-image-minimal".

The new implementation for glibc's site config is:
- Add a recipe called glibc-site_2.28.bb, find out the top 100 used functions
   and headers, and add them to site_config/funcs and site_config/headers. Please
   see patches' commit message on how to find out the top 100.

- Make target/nativesdk recipes depend on glibc-site when inherit autotools.bbclass

Here are the 2 patches:
   git://git.openembedded.org/openembedded-core-contrib rbt/glibc-site
   http://cgit.openembedded.org/openembedded-core-contrib/log/?h=rbt/glibc-site


Please feel free to give your comments, and I will remove it if no objections.

-- 
Thanks

Robert


More information about the Openembedded-core mailing list