On 13 April 2012 16:32, Lubos Lunak <l.lunak@suse.cz> wrote:
On Thursday 12 of April 2012, Matúš Kukan wrote:Maybe it is better to just let check target depend on build target ? In general.Do you mean making the toplevel targets depend on each other, or also in each module?
I mean to add into gbuild/Module.mk: unitcheck slowcheck : build So if you run make in sal it's for sal only. If you run make in tail_build, first everything is built and then tested. Note that the modules' dependencies (in the sense: first build sal then cppu) are written in <module>/prj/build.lst and build.pl reads them.
If this is meant to be also for all modules, wouldn't this possibly still miss some problems? I.e. if e.g. sw links the i18npool library, does or does not sw depend on i18npool/ build target? If sw depends only on the library itself, then localedata_en still might not be built by the time sw unittests are run (in this example sw is far too late after i18npool for this to be realistic, but consider whatever is more realistic).
Now i18npool is not yet in tail_build so when the time comes for sw everything is there. When everything will be in tail_build (or Makefile.post) sw/ won't depend on i18npool/ but with *check : build dependency all tests from all modules will be executed after everything is built.
Requiring everything be built before running any checks would avoid the problem, but I doubt anybody would want to rebuild everything just in order to run checks in sal/
You can still do: cd sal/ && make check Only sal is considered in that case, nothing before (solenv..) nor after (sw..)
I would expect that most of what the build target builds in each module is already a prerequisite for the module's checks (and it'd definitely be so in an ideal world where everything is tested).
Right, so it is good. Bjoern, what do you think about attached patch ? I left subsequentcheck untouched for now. (Sorry to involve you here but you can best understand) All the best, Matus
Attachment:
0001-gbuild-add-check-build-dependency.patch
Description: Binary data