Opened 5 months ago

Closed 5 months ago

#18907 closed enhancement (fixed)

libreoffice 7.6.3.2

Reported by: martyj19 Owned by: Douglas R. Reno
Priority: normal Milestone: 12.1
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New point version.

Attachments (3)

libreoffice-external.patch (6.1 KB ) - added by Joe Locash 5 months ago.
libreoffice-7.6.3.2-libxml2_2.12_A-1.patch (6.5 KB ) - added by martyj19 5 months ago.
Adjustments in external tarballs needed for libxml2 2.12
libreoffice-7.6.3.2-libxml2_2.12_B-1.patch (7.2 KB ) - added by martyj19 5 months ago.
Adjustments in libreoffice code needed for libxml2 2.12

Download all attachments as: .zip

Change History (13)

comment:1 by martyj19, 5 months ago

libxml2 2.12.0 causes build failures in some of the external tarballs. I identified liblangtag and libcmis before I temporarily went to --without-system-libxml. At this time I have not yet developed fixes.

comment:2 by Douglas R. Reno, 5 months ago

Hi Marty,

Thank you for the heads up on the problem here. So far I'm thinking we may want to use --without-system-libxml like you suggested, if I remember right we *can* update the bundled packages but I don't remember how exactly we would do that

comment:3 by Douglas R. Reno, 5 months ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:4 by Joe Locash, 5 months ago

Attached is a patch that will create patches for the external packages that fail to build with libxml2-2.12.1 (libcmis, liblangtag, and xmlsec). The patch does not change any code in libreoffice itself other that applying the patches.

Libreoffice itself then fails with:

/tmp/build/libreoffice-7.6.3.2/helpcompiler/source/HelpLinker.cxx:879:41: error: invalid conversion from 'void (*)(void*, xmlErrorPtr)' {aka 'void (*)(void*, _xmlError*)'} to 'xmlStructuredErrorFunc' {aka 'void (*)(void*, const _xmlError*)'} [-fpermissive]
  879 |     xmlSetStructuredErrorFunc( nullptr, StructuredXMLErrorFunction );
      |                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |                                         |
      |                                         void (*)(void*, xmlErrorPtr) {aka void (*)(void*, _xmlError*)}
In file included from /usr/include/libxml2/libxml/valid.h:15,
                 from /usr/include/libxml2/libxml/parser.h:17,
                 from /tmp/build/libreoffice-7.6.3.2/helpcompiler/inc/HelpCompiler.hxx:30,
                 from /tmp/build/libreoffice-7.6.3.2/helpcompiler/source/HelpLinker.cxx:20:
/usr/include/libxml2/libxml/xmlerror.h:898:57: note:   initializing argument 2 of 'void xmlSetStructuredErrorFunc(void*, xmlStructuredErrorFunc)'
  898 |                                  xmlStructuredErrorFunc handler);
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~
[build DEP] LNK:Library/libreflectionlo.so.d
[build LNK] Library/libreflectionlo.so
[build DEP] LNK:Library/libstocserviceslo.so.d
[build LNK] Library/libstocserviceslo.so
make[1]: *** [/tmp/build/libreoffice-7.6.3.2/solenv/gbuild/LinkTarget.mk:334: /tmp/build/libreoffice-7.6.3.2/workdir/CxxObject/helpcompiler/source/HelpLinker.o] Error 1

by Joe Locash, 5 months ago

Attachment: libreoffice-external.patch added

comment:5 by Douglas R. Reno, 5 months ago

It looks like this has been reported upstream at https://bugs.documentfoundation.org/show_bug.cgi?id=158302

in reply to:  2 comment:6 by martyj19, 5 months ago

Replying to Douglas R. Reno:

Hi Marty,

Thank you for the heads up on the problem here. So far I'm thinking we may want to use --without-system-libxml like you suggested, if I remember right we *can* update the bundled packages but I don't remember how exactly we would do that

You create a patch that creates a new .patch file and also adds instructions to UnpackedTarball_<package>.mk to apply it. See for example external/liblangtag/UnpackedTarball_liblangtag.mk that already applies two other patches.

See for another example libreoffice-external.patch that Joe Locash attached.

At this point we might be down to the only unresolved problem is the one in comment 4.

Last edited 5 months ago by martyj19 (previous) (diff)

comment:7 by martyj19, 5 months ago

Numerous missing includes and a const. Should have a patch ready soon after the build finishes. There is one missing edit to external xmlsec.

by martyj19, 5 months ago

Adjustments in external tarballs needed for libxml2 2.12

by martyj19, 5 months ago

Adjustments in libreoffice code needed for libxml2 2.12

comment:8 by martyj19, 5 months ago

Clean build achieved with two attached patches. The "A" patch is Joe's patch with the one additional change to xmlsec. The "B" patch is to the libreoffice code itself. I separated them for clarity and to give proper credit to Joe's work. They could be catted together if desired.

Caveat 1 is I don't build every corner of libreoffice and there could be something needed in a part I don't build.

Caveat 2 is upstream more than likely will put these fixes in different places in the source than I have. So this should be reexamined after they have done that to pick up the actual upstream changes.

comment:9 by Douglas R. Reno, 5 months ago

Thank you both for your work on this! I will try to get this in today.

comment:10 by Douglas R. Reno, 5 months ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.