Skip to content

Commit

Permalink
src: Fix missing ibusenumtypes.h with parallel build
Browse files Browse the repository at this point in the history
When `./autogen.sh && make -C src ibusresources.c -j2` runs,
it causes a build failure due to no ibusenumtypes.h file.

The chained dependencies are:
ibusresources.c -> compose/sequences-$(ENDIAN)-endian
-> gen-internal-compose-table -> gencomposetable.c

gencomposetable.c includes ibus.h and it causes no ibusenumtypes.h with
the parallel build with multi CPUs.

ibusenumtypes.h is in BUILT_SOURCES so it is built (with other files in
BUILT_SOURCES) before any other rules.
But ibus.h is included by gencomposetable.c which is needed to generate
ibusresources.c in BUILT_SOURCES.

Since gencomposetable.c is an internal build source file and
it doesn't have to include ibus.h but can include each ibus header
files.
Deleting ibus.h in gencomposetable.c can fix the build failure.

BUG=#2523
  • Loading branch information
mattst88 authored and fujiwarat committed Jul 5, 2023
1 parent 25a2dfc commit be1f1d0
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion src/gencomposetable.c
Expand Up @@ -20,7 +20,7 @@
* USA
*/

#include <ibus.h>
/* #2523 Should not include <ibus.h> but each IBus header file. */
#include <glib.h>
#include <glib/gstdio.h>
#include <errno.h>
Expand Down

0 comments on commit be1f1d0

Please sign in to comment.