external/libxml2/libxml2-global-symbols.patch |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

New commits:
commit 7d9b3393e2632247624d8a1e3129365290d1b60b
Author:     Stephan Bergmann <sberg...@redhat.com>
AuthorDate: Fri May 26 09:13:04 2023 +0200
Commit:     Stephan Bergmann <sberg...@redhat.com>
CommitDate: Fri May 26 10:45:09 2023 +0200

    external/libxml2: Fix missing external symbols needed by xmllint
    
    After 5b42f148e206cda19467e76c2f9915fc2b6fa5f6 "ExternalProject_libxml2 
still
    needs to build the xmllint executable" (which I had happened to prepare on
    macOS, so didn't originally notice the issue addressed here now), Linux 
builds
    like <https://ci.libreoffice.org/job/lo_callgrind_linux/13374/> started to 
fail
    with
    
    >   CCLD     xmllint
    > /opt/rh/devtoolset-11/root/usr/libexec/gcc/x86_64-redhat-linux/11/ld: 
xmllint-xmllint.o: in function `testSAX':
    > 
/home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/UnpackedTarball/libxml2/xmllint.c:1646:
 undefined reference to `xmlNewSAXParserCtxt'
    > /opt/rh/devtoolset-11/root/usr/libexec/gcc/x86_64-redhat-linux/11/ld: 
xmllint-xmllint.o: in function `myReallocFunc':
    > 
/home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/UnpackedTarball/libxml2/xmllint.c:357:
 undefined reference to `xmlMemSize'
    > collect2: error: ld returned 1 exit status
    > make[2]: *** [Makefile:1007: xmllint] Error 1
    > make[1]: *** 
[/home/tdf/lode/jenkins/workspace/lo_callgrind_linux/external/libxml2/ExternalProject_libxml2.mk:37:
 
/home/tdf/lode/jenkins/workspace/lo_callgrind_linux/workdir/ExternalProject/libxml2/build]
 Error 1
    
    Turns out that those two functions have been introduced after the previously
    used libxml2 2.10.4.  No idea how things are supposed to work (given that
    workdir/UnpackedTarball/libxml2/libxml2.syms starts off with "Retained for
    backward compatibility. Don't add new symbols.", it appears that there 
should be
    some other mechanism at play to make xmllint on Linux find the libxml2.so
    symbols it needs, but which doesn't work as intended in our build), but 
just add
    those two symbols to libxml2.syms for now.  (With a new version named
    LIBXML2_2.11.4, even if the symbols can actually have been introduced in 
some
    other version between 2.10.4 and 2.11.4, but who cares.)
    
    Change-Id: Ib9d5c7901fe94b8014a87b049fc27ef5658fd954
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152292
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sberg...@redhat.com>

diff --git a/external/libxml2/libxml2-global-symbols.patch 
b/external/libxml2/libxml2-global-symbols.patch
index cfec9c530281..cbbe5a622284 100644
--- a/external/libxml2/libxml2-global-symbols.patch
+++ b/external/libxml2/libxml2-global-symbols.patch
@@ -13,10 +13,16 @@
  } LIBXML2_2.6.28;
  
  LIBXML2_2.6.32 {
-@@ -2231,3 +2231,43 @@
+@@ -2231,3 +2231,49 @@
    xmlPopOutputCallbacks;
  } LIBXML2_2.9.8;
  
++LIBXML2_2.11.4 {
++    global:
++    xmlMemSize;
++    xmlNewSAXParserCtxt;
++} LIBXML2_2.9.11;
++
 +# HACK: export global variable accessor functions (globals.h)
 +LIBXML2_GLOBAL_VARIABLES {
 +    global:

Reply via email to