You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by ji...@apache.org on 2026/08/04 14:17:59 UTC
(openoffice) branch trunk updated (a2d0bf344f -> 1bee600992)
This is an automated email from the ASF dual-hosted git repository.
jimjag pushed a change to branch trunk
in repository https://gitbox.apache.org/repos/asf/openoffice.git
from a2d0bf344f Link zlib explicitly against static libxml2.a on macOS
new c46d036de4 Build bundled libxml2/libxslt as static libs on macOS
new 1bee600992 python: prefer CPython's own expat.h over the solver's external copy
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
main/libxml2/makefile.mk | 8 +++++++-
main/libxslt/makefile.mk | 11 +++++++++--
main/python/makefile.mk | 12 ++++++++++++
3 files changed, 28 insertions(+), 3 deletions(-)
(openoffice) 01/02: Build bundled libxml2/libxslt as static libs on macOS
Posted by ji...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jimjag pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/openoffice.git
commit c46d036de4426f9a07612706d383be376a9967ef
Author: Jim Jagielski <ji...@gmail.com>
AuthorDate: Tue Aug 4 09:10:52 2026 -0400
Build bundled libxml2/libxslt as static libs on macOS
Community builds should bundle static libraries rather than system
dylibs.
---
main/libxml2/makefile.mk | 8 +++++++-
main/libxslt/makefile.mk | 11 +++++++++--
2 files changed, 16 insertions(+), 3 deletions(-)
diff --git a/main/libxml2/makefile.mk b/main/libxml2/makefile.mk
index c7599060f0..056e3a852f 100644
--- a/main/libxml2/makefile.mk
+++ b/main/libxml2/makefile.mk
@@ -91,6 +91,12 @@ CONFIGURE_DIR=
.IF "$(OS)"=="OS2"
CONFIGURE_ACTION=sh .$/configure
CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --without-lzma --enable-static=yes --with-sax1=yes ADDCFLAGS="$(xml2_CFLAGS)" CFLAGS="$(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)"
+.ELIF "$(OS)"=="MACOSX"
+# Community builds bundle a static libxml2 rather than a dylib -- see
+# main/xmlsecurity/util/makefile.mk and main/forms/util/makefile.mk for
+# the consumer side of this.
+CONFIGURE_ACTION=.$/configure
+CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --without-lzma --enable-static=yes --enable-shared=no --with-sax1=yes ADDCFLAGS="$(xml2_CFLAGS) $(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)"
.ELSE
CONFIGURE_ACTION=.$/configure
CONFIGURE_FLAGS=--enable-ipv6=no --without-python --without-zlib --without-lzma --enable-static=no --with-sax1=yes ADDCFLAGS="$(xml2_CFLAGS) $(EXTRA_CFLAGS)" LDFLAGS="$(xml2_LDFLAGS) $(EXTRA_LINKFLAGS)"
@@ -105,7 +111,7 @@ OUTDIR2INC=include$/libxml
.IF "$(OS)"=="MACOSX"
EXTRPATH=URELIB
-OUT2LIB+=.libs$/libxml2.*.dylib
+OUT2LIB+=.libs$/libxml2.a
OUT2BIN+=.libs$/xmllint
OUT2BIN+=xml2-config
.ELIF "$(OS)"=="WNT"
diff --git a/main/libxslt/makefile.mk b/main/libxslt/makefile.mk
index dbdd13a4da..e97b870bfa 100644
--- a/main/libxslt/makefile.mk
+++ b/main/libxslt/makefile.mk
@@ -106,7 +106,14 @@ CPPFLAGS+:=$(ARCH_FLAGS) -xc99=none
.ENDIF # "$(COMNAME)"=="sunpro5"
CONFIGURE_DIR=
CONFIGURE_ACTION=.$/configure
+.IF "$(OS)"=="MACOSX"
+# Community builds bundle a static libxslt/libexslt rather than a dylib --
+# see main/xmlsecurity/util/makefile.mk and main/forms/util/makefile.mk
+# for the analogous libxml2 case.
+CONFIGURE_FLAGS=--enable-ipv6=no --without-crypto --without-python --enable-static=yes --enable-shared=no --with-sax1=yes ac_cv_func_clock_gettime=false
+.ELSE
CONFIGURE_FLAGS=--enable-ipv6=no --without-crypto --without-python --enable-static=no --with-sax1=yes ac_cv_func_clock_gettime=false
+.ENDIF
BUILD_ACTION=chmod 777 xslt-config && $(GNUMAKE)
BUILD_FLAGS+= -j$(EXTMAXPROCESS)
BUILD_DIR=$(CONFIGURE_DIR)
@@ -115,8 +122,8 @@ BUILD_DIR=$(CONFIGURE_DIR)
OUT2INC=libxslt$/*.h
.IF "$(OS)"=="MACOSX"
-OUT2LIB+=libxslt$/.libs$/libxslt.*.dylib
-OUT2LIB+=libexslt$/.libs$/libexslt.*.dylib
+OUT2LIB+=libxslt$/.libs$/libxslt.a
+OUT2LIB+=libexslt$/.libs$/libexslt.a
OUT2BIN+=xsltproc$/.libs$/xsltproc
OUT2BIN+=xslt-config
.ELIF "$(OS)"=="WNT"
(openoffice) 02/02: python: prefer CPython's own expat.h over the solver's external copy
Posted by ji...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
jimjag pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/openoffice.git
commit 1bee6009929e8d9702c129fac7b07f6d4113cebb
Author: Jim Jagielski <ji...@gmail.com>
AuthorDate: Tue Aug 4 10:17:39 2026 -0400
python: prefer CPython's own expat.h over the solver's external copy
---
main/python/makefile.mk | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/main/python/makefile.mk b/main/python/makefile.mk
index 042a4cf092..55712c9097 100644
--- a/main/python/makefile.mk
+++ b/main/python/makefile.mk
@@ -76,6 +76,18 @@ CONFIGURE_DIR=
BUILD_DIR=
MYCWD=$(shell @pwd)/$(INPATH)/misc/build
+# CPython's own vendored expat (Modules/expat/expat.h) renames every public
+# symbol via pyexpatns.h so it can't clash with any expat also loaded into the
+# process. The solver's external include dir below also carries AOO's own
+# flat expat.h (main/expat delivers it to inc/external/expat.h for other
+# modules), which has no such renaming. Since -I dirs are searched in the
+# order given, put Python's own Modules/expat ahead of the solver dir so
+# "expat.h" resolves to CPython's copy — otherwise pyexpat.c/_elementtree.c
+# compile against the un-renamed declarations while linking against the
+# renamed symbols in libexpat.a, leaving XML_SetCommentHandler (and friends)
+# undefined at import time.
+python_CFLAGS+=-I$(MYCWD)$/$(TARFILE_NAME)$/Modules$/expat
+
# Point Python's setup.py at the bundled OpenSSL delivered to the solver.
# (Replaces the old python-ssl.patch: Python 3.11 discovers _ssl/_hashlib via
# the C compiler include/lib search paths, so feeding the solver's external