← Back to team overview

kicad-developers team mailing list archive

Re: [PATCH 1/1] Fix build order for generated headers and sources

 

On 2019-07-02 11:31, Simon Richter wrote:
Hi,

On Mon, Jul 01, 2019 at 12:33:43PM -0400, Seth Hillbrand wrote:

[ 38%] Building CXX object eeschema/CMakeFiles/eeschema_kiface_objects.dir/widgets/symbol_tree_pane.cpp.o
/home/seth/code/kicad/kicad_bare/eeschema/dialogs/panel_sym_lib_table.cpp:29:10:
fatal error: lib_table_lexer.h: No such file or directory
 #include <lib_table_lexer.h>
          ^~~~~~~~~~~~~~~~~~~
compilation terminated.

Okay, that patch was some progress at least, as it reduced the problem from
"two paths build the same file" to "missing dependency".

With some help from #cmake on IRC, I think the problem is in the way the
OBJECT library is used -- we copy the bits we need (include path and
objects) by hand rather than using target_link_libraries(), because the
latter doesn't work with CMake < 3.9.

When I also add an explicit dependency, it seems to work, but that was just
the initial test now.

   Simon

Hi Simon-

Instead of banging on this dependency, I could push option #2 from my previous e-mail. This was creating a separate target to rebuild the generated files and checking them into the source tree. Then we don't try to rebuild them as part of our standard build. This is analogous to how we handle the bitmaps.

Best-
Seth


Follow ups

References