2.99.18: libgimpbase/gimpbase.h includes <libgimpbase/gimpchoice.h> which is not installed
Environment/Versions
- GIMP version: 2.99.18
- Operating System: Linux
Description of the bug
On porting plugin-gimp-fourier (https://github.com/rpeyron/plugin-gimp-fourier/) I found that build fails because libgimpbase/gimpbase.h includes <libgimpbase/gimpchoice.h> which is not installed:
make[1]: Entering directory '/home/tkloczko/rpmbuild/BUILD/plugin-gimp-fourier-0.4.5'
/usr/bin/gcc -DHAVE_CONFIG_H -I. -I. -I. -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -g -grecord-gcc-switches -pipe -mtls-dialect=gnu2 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fdata-sections -ffunction-sections -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -flto=auto -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -Wall -Werror=format-security -I. -I. -I/usr/include/gimp-3.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/cairo -I/usr/include/gegl-0.4 -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/json-glib-1.0 -I/usr/include/babl-0.1 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -O2 -g -grecord-gcc-switches -pipe -mtls-dialect=gnu2 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -fdata-sections -ffunction-sections -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -flto=auto -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -Wall -Werror=format-security -c -o fourier.o fourier.c
In file included from /usr/include/gimp-3.0/libgimp/gimp.h:30,
from fourier.c:32:
/usr/include/gimp-3.0/libgimpbase/gimpbase.h:29:10: fatal error: libgimpbase/gimpchoice.h: No such file or directory
29 | #include <libgimpbase/gimpchoice.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Missing header file should be added to list of installed headers or #include <libgimpbase/gimpchoice.h>
should be removed from libgimpbase/gimpbase.h
.
BTW: it would be good to filter all gimp code over iwyu (https://github.com/include-what-you-use/include-what-you-use/)