The src-generator program must be built natively since it is executed during the build. This requires installing libxml2 and glib with BDEPEND. The build system isn't smart enough to handle this, though, so it needs to be compiled separately. (If the build system was correct, libxml2 could be removed from DEPEND.) I'll attach a patch that fixes the issue.
Created attachment 679515 [details, diff] fix.patch
Note that another alternative I found is to simply build with USE="-glib -introspection"
This went into 3.0.9: https://github.com/libical/libical/commit/1197d84b63dce179b55a6293cfd6d0523607baf1 Is there anything left for us to do after that?
Unless I'm misunderstanding that commit, it expects you to install libical natively and specify the path to the native src-generator CMake file when cross-compiling, so the ebuild would have to BDEPEND on itself to use that functionality which isn't going to work. This issue can be closed if no one else is affected. You can make it work manually with something like this: > emerge libical > MYCMAKEARGS=-DIMPORT_ICAL_GLIB_SRC_GENERATOR=/usr/lib64/cmake/LibIcal/IcalGlibSrcGenerator.cmake cross-emerge libical