Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

qibuild configure should not fail if "Host SDK dir for project XXX does not exist." #104

Open
sbarthelemy opened this issue Dec 8, 2016 · 1 comment

Comments

@sbarthelemy
Copy link

currently (qibuild 3.11.6), given a qiproject like this

<project version="3">
  <qibuild name="libalmath">
    <depends buildtime="true" runtime="true" names="boost eigen3 python libqi rosbag" />
    <depends buildtime="true" names="gtest" />
    <depends host="true" names="libqilang" />
  </qibuild>
</project>

and assuming the python, libqi, rosbag and libqilang dependencies are optional (ie. not used/required by the cmake code)

qibuild configure -s

  • won't complain if the projects python, libqi, rosbag are missing from the build tree and/or the toolchains. Even if they are in the worktree.
  • will fail with message "Host SDK dir for project libqilang does not exist." if libqilang is in the worktree but not in the build tree (ie. was not configured for the host config).

This behavior is inconsistent and prevents the host dependencies to be optional.
Could we change that? The fix would be located in https://github.com/aldebaran/qibuild/blob/master/python/qibuild/cmake_builder.py#L121
I do not see a convincing point for the current behavior. It fails early, but is not very safe anyway.

In the meantime we have some workarounds:

  • patch the qiproject to remove the host dep
  • create a dedicated worktree without the host dep
  • split the project in two projects: one with the dep on libqilang, one without.
@victorpaleologue
Copy link

I agree this should be changed, this bothered me regularly too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants