Build fix: ocelot build fix for newer bison environment

From the some version of bison, generated header contains yyparse
function prototype. Because it uses undeclared nested class and it contains
circular reference, we cannot build it with this prototype.
To avoid this compile error, we replace `yyparse(...)` to
`dummy_yyparse_to_avoid_compile_error(void)` by using C macro.
Use ADD_CUSTOM_COMMAND + OUTPUT instead of ADD_CUSTOM_TARGET

Since ADD_CUSTOM_TARGET considers the output as always out of date[1],
it always breaks the build cache.

[1]: http://www.cmake.org/cmake/help/v3.0/command/add_custom_target.html
Update travis config to build as and runtime