python: qibuild.deploy: trivial fix

Change-Id: I9bbf17993d9011a363743b463eb8bca7086b6b98
Reviewed-on: http://gerrit.aldebaran.lan:8080/4175
Reviewed-by: smartin <smartin@aldebaran-robotics.com>
Tested-by: smartin <smartin@aldebaran-robotics.com>
qibuild: refactored qibuild command line parsing

* Do not configure everything when not in a subdir of
  a qibuild project

* qibuild commands now accept both project names and project paths

* qibuild commands now solve both runtime and build deps by default,
  use `--build-deps` when you want to only take the build deps into
  account

* Get rid of ``toc.active_projects`` and ``toc.resolve_deps``,
  use ``qibuild.cmdparse.deps_from_args()`` instead

* Renamed qibuild.cmdparse -> qibuild.script
  (root_command_main and run_action have nothing to
  do with command line parsing)

* qibuild.project.project_from_cwd -> project.from_dir

Change-Id: I8b860bb99b80c1caee11329e74297536948b8cdc
qirc.sync: small refactoring

* qisrc sync will now call `git submodule update --init --recursive` for
  git projects containing submodules
* qisrc sync now refuses to erase a git submodule with a project from a
  qisrc manifest and raises an error instead
* qisrc sync now detects broken submodules configurations

* bug fix when using `qisrc.worktree.clone_project()` with a relative path
* add qisrc.git.update_submodules()
* qisrc.clone_project(): remove dangerous skip_if_exists option

* rewrite test_clone with py.test

Change-Id: Icc97427dbae8c673c77345cfdce4433e98c3f235
qisrc: improve cmdline API

* Merge qisrc add and qisrc add-project
* Renamed qisrc remove-project to qisrc remove
* qisrc list:
  Ask user to remove projects form the worktree if their paths no longer
  exist

Change-Id: I0a80e6931a0147e955123ea015bd7dc0a13e0f81
qibuild: auto-add missing projects

This fixes somewhat annoying qibuild behavior:

 $ cd worktree
 $ git clone git://newproj.git
 $ cd newproj
 $ qc
 ERROR:  no such project 'newproj'

Now instead of an error, qibuild will try its best
to fix the problem.

  $ qc
warning: Found a valid qiproject.xml but the
project name 'newproj' does not match any
buildable to project
Add the project to the worktree (Y/n)?

Change-Id: Ib8ade4f53ccaa318f1ed19c084f4c8b5385378b8
doc: move working in progress changelog to qibuild/contrib/cooking

Makes more sense this way :)
Document recent refactoring

Change-Id: I998ee3af9a3124a0047c5453a5c86876373ef4ff
qibuild.sh.is_inside_path: small bug fix

* also add automatic testing, and get rid of uniittest

Change-Id: Ib977e7cb63d625124cc1930662df0affc5983073
qibuild configure:  do not configure everything when at the root

If you *reall* want to do that, use qc --all

Change-Id: I2ef14c11593a05d358a8e5351a9aaa578bf942d4
qibuild: comectic changes

* qibuild init now display a nice message on success
* qibuidl list, qisrc list now display nice helpful messages
  when the worktree is empty

Change-Id: Ie96a36ad34dffe87fd97efd0a3a42ed3ffa1e7aa
qibuild deploy: bug fixes

Change-Id: If3b666ccf412209fa302d9ba39986bd8d65683ec
qibuild.interact.ask_yes_no: cosmetic changes

We no longer add the '?' automatically, this makes cleaner
output

Change-Id: I28827500dd1e257b087defbc9de9c0ff2a58270f
Reviewed-on: http://gerrit.aldebaran.lan:8080/3660
Reviewed-by: dmerejkowsky <dmerejkowsky@aldebaran-robotics.com>
Tested-by: dmerejkowsky <dmerejkowsky@aldebaran-robotics.com>
qiubild options parsers: cosmetic changes

* Make sure the names of the argument groups are consistent
* Fix minor problems in the help messages

Change-Id: I0e1591ae41c148223fe367855a621aa975435fc6
Reviewed-on: http://gerrit.aldebaran.lan:8080/3685
Reviewed-by: dmerejkowsky <dmerejkowsky@aldebaran-robotics.com>
Tested-by: dmerejkowsky <dmerejkowsky@aldebaran-robotics.com>
doc: add 'Writing new tests'

Change-Id: Ib65f7d8be933137c5e92443f167b5c7b059bc8e3
trivial bug fix

Change-Id: If037f497eb69dc18e225853a00a53584e5e96d04
python:  qitoolchain.toolchain: add cross_gdb key to the config

Change-Id: I16c6100bd7aa60fda28c5fe184584bf547b47132
Reviewed-on: http://gerrit.aldebaran.lan:8080/4180
Reviewed-by: smartin <smartin@aldebaran-robotics.com>
Tested-by: smartin <smartin@aldebaran-robotics.com>