Hi!
gcc -pthread -W -Wall -Wextra -fPIC -O2 -ggdb -D_FORTIFY_SOURCE=2 -I../../include/ -L../../build/ -L. -Wl,--start-group test.o libtst.a -ltst_preload -lm -ldl -ltst -lrt -lGP -lrt -lm -lfreetype -lz -ldl -pthread -Wl,--end-group -o test ../../build//libGP.so: undefined reference to `XKeysymToString' ../../build//libGP.so: undefined reference to `XKeysymToKeycode' collect2: ld returned 1 exit status make[2]: *** [test] Error 1 make[2]: Leaving directory `/home/mvancura/gfxprim/tests/framework' make[1]: *** [framework] Error 2 make[1]: Leaving directory `/home/mvancura/gfxprim/tests' make: *** [tests] Error 2
This looks like leftover from build before commit:
backends,input: Move Input drivers to backends.
f7b1bfa7d24c44f3e03e6d3e8f20fe5d839964bd
Where X11 input parsing was part of the input library (which is compiled in libGP.so).
Look into the libs/input/ directory for GP_InputDriverX11.o and if its there remove it.
Here comes some background:
The build system only removes files it knows about in the 'make clean' so if some of the source files were moved or removed the object file may end up orphaned there and in case of libGP will end up in the .so library as well.
It's generally a good idea to look for orphaned files after 'make clean' with 'git clean'.
I will look at the build system and try to figure out how to make this case less confusing meanwhile.