Subject: mupdf: FTBFS on mips64el: segmentation fault

From: Bastian Germann <[email-masked]>
Date: Sun, 23 Mar 2025 17:29:20 +0100

Control: retitle -1 mupdf: FTBFS on mips64el: is_function_variadic(): assert self.kind == TypeKind.FUNCTIONPROTO

This does not segfault anymore:

./scripts/mupdfwrap.py  -d build/shared-debug -b 01
(+4.2s): state.py:358:set_dir_so: self.Py_LIMITED_API=None
(+4.3s): -d: state.py:358:set_dir_so: self.Py_LIMITED_API=None
(+4.3s): -b: 0: __main__.py:1272:build_0: Generating C++ source code ...
(+4.4s): -b: 0: cpp.py:5030:close: File updated: platform/c++/include/mupdf/extra.h
(+4.4s): -b: 0: cpp.py:5030:close: File updated: platform/c++/implementation/extra.cpp
(+14.2s): -b: 0: cpp.py:5423:cpp_source: Creating wrapper functions...
Traceback (most recent call last):
    scripts/mupdfwrap.py:6:<module>(): wrap.__main__.main()
    scripts/wrap/__main__.py:3089:main(): jlib.exception_info()
    ^except raise:
    scripts/wrap/__main__.py:3087:main(): main2()
    scripts/wrap/__main__.py:2470:main2(): build( build_dirs, swig_command, args, vs_upgrade, make_command)
    scripts/wrap/__main__.py:1609:build(): build_0(
    scripts/wrap/__main__.py:1295:build_0(): cpp.cpp_source(
    scripts/wrap/cpp.py:5424:cpp_source(): make_function_wrappers(
    scripts/wrap/cpp.py:2038:make_function_wrappers(): function_wrapper(
    scripts/wrap/cpp.py:833:function_wrapper(): if cursor.type.is_function_variadic() and fnname != 'fz_warn':
    /usr/lib/python3/dist-packages/clang/cindex.py:2516:is_function_variadic(): assert self.kind == TypeKind.FUNCTIONPROTO
AssertionError
make[2]: *** [Makefile:634: c++-debug] Error 1
make[2]: Leaving directory '/home/bage/mupdf-1.25.1+ds1'
dh_auto_build: error: make -j4 "INSTALL=install --strip-program=true" build=debug shared=yes OS=Linux "XCFLAGS=-g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/home/bage/mupdf-1.25.1+ds1=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -DFZ_ENABLE_ICC=0 -fPIC -DNDEBUG -O2" "XLDFLAGS=-Wl,-z,relro -Wl,-z,now" LINUX_OR_OPENBSD=yes USE_SYSTEM_MUJS=yes USE_SYSTEM_LIBS=yes USE_SYSTEM_LCMS2=yes LD=mips64el-linux-gnuabi64-ld verbose=yes HAVE_OBJCOPY=no VENV_FLAG= shared c\+\+ python returned exit code 2
make[1]: *** [debian/rules:61: override_dh_auto_build] Error 2