Error out if dependencies aren't met.

This ensures that a build won't become a no-op with confusing results, and no
clear indication of what the problem is.

Change-Id: Ie9ad14b8d8230cfd3b2772511b853d71f2eed977
Reviewed-by: Giulio Camuffo <giulio.camuffo@jollamobile.com>
Reviewed-by: Sergio Ahumada <sahumada@blackberry.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>