Hi all,
progress this week was slow. curl, openssl and nss are now integrated
into the bazel.
Curl and openssl are build by their origin build infrastrukture. With
nss i had the issue i did not want to depend on a bash. The current
solution is an integration into bazel.
i am currently worung on xmlsecurity. The current migration plan looks
like the following:
sal ✅ — main/sal/readme.md
salhelper ✅
store ✅
registry ✅
ucpp ✅
idlc ✅ (+ regmerge, cppumaker) — main/idlc/readme.md
udkapi ✅ (.idl → .urd → .rdb → .hdl/.hpp via idl_pipeline.bzl)
cppu ✅ (cppu3, purpenvhelper3MSC, affine/unsafe/log bridge DLLs)
cppuhelper ✅ (cppuhelper3MSC.dll)
bridges ✅ (msci_uno.dll) — main/bridges/readme.md
rdbmaker ✅ (rdbmaker.exe) — main/rdbmaker/readme.md
xmlreader ✅ (xmlreader.dll) — main/xmlreader/readme.md
stoc ✅ (bootstrap.uno.dll, stocservices.uno.dll) —
main/stoc/readme.md
jvmfwk ✅ (jvmfwk.dll) — main/jvmfwk/readme.md
io ✅ (streams.dll, acceptor.dll, connector.dll,
textinstream.dll, textoutstream.dll) — main/io/readme.md
o3tl ✅ (header-only)
vos ✅ (vos3.dll)
libxslt ✅ (@libxslt//:libxslt + :libexslt)
offapi ✅ (offapi_idl.rdb + offapi_idl_inc/ — 3718 IDL files)
binaryurp ✅ (binaryurp.dll)
remotebridges ✅ (uuresolver.dll)
cpputools ✅ (regcomp.exe, regsingleton.exe, sp2bv.exe, uno.exe)
i18nutil ✅ (i18nutil.dll)
ucbhelper ✅ (ucbhelper.dll)
comphelper ✅ (comphelp.dll) — main/comphelper/readme.md
configmgr ✅ (configmgr.uno.dll) — main/configmgr/readme.md
expat ✅ — ext_libraries/modules/expat/readme.md
sax ✅ (sax.dll, expwrap.dll, fastsax.dll) — main/sax/readme.md
zlib ✅ — ext_libraries/modules/zlib/readme.md
package ✅ (package2.dll, xstor.dll) — main/package/readme.md
i18npool ✅ (i18nisolang1.dll, i18npaper.dll, i18npool.dll,
i18nsearch.dll) — main/i18npool/readme.md
python ✅ (python27.dll) — ext_libraries/modules/python/readme.md
pyuno ✅ (pyuno.dll, pythonloader.dll) — main/pyuno/readme.md
│
▼
── Layer 1 (all deps done) ──────────────────────────────────────────────
basegfx ✅ (o3tl, sal, offapi, cppu, cppuhelper) —
main/basegfx/readme.md
codemaker ✅ (registry) — main/codemaker/BUILD.bazel
oovbaapi ✅ (offapi) — main/oovbaapi/BUILD.bazel
external ✅ (pre-built DLL/lib filegroups) — main/external/BUILD.bazel
── Layer 2 ──────────────────────────────────────────────────────────────
tools ✅ (tl.dll, ooopathutils.lib) — main/tools/BUILD.bazel
basebmp ✅ (basegfx, sal + boost, vigra ext) —
main/basebmp/BUILD.bazel
ridljar ✅ (codemaker, udkapi — Java) — main/ridljar/readme.md
── Layer 3 ──────────────────────────────────────────────────────────────
rsc ✅ (rscpp, rsc, rsc2) — main/rsc/readme.md
unotools ✅ (utl.dll) — main/unotools/readme.md
xmlscript ✅ (xcr.dll) — main/xmlscript/BUILD.bazel
shell ✅ (syssh.uno, localebe1.uno, wininetbe1.uno, shlxthdl,
ooofilt, propertyhdl, lngconvex, regsvrex) — main/shell/BUILD.bazel
l10ntools ✅ (transex3, helpex, ulfex, gsiconv, gsicheck, cfgex,
xrmex, localize_sl, HelpLinker, helplinker.dll) — main/l10ntools/BUILD.bazel
icc ✅ (create_sRGB_profile.exe → sRGB-IEC61966-2.1.hxx,
srgb_icc) — main\icc\readme.md
jurt ✅ (ridljar, sal — Java; jpipe.dll + jpipx.dll native pipe
JNI) — main/jurt/readme.md
jvmaccess ✅ (jvmaccess.dll) — main/jvmaccess/readme.md
── Layer 4 ──────────────────────────────────────────────────────────────
sot ✅ (tools, unotools, ucbhelper) — main/sot/readme.md
unoil ✅ (codemaker, ridljar, offapi — Java) — main/unoil/readme.md
idl ✅ (svidl.exe) — main/idl/readme.md
── Layer 5 ──────────────────────────────────────────────────────────────
svl ✅ (svl.dll, fsstorage.dll, passwordcontainer.dll) —
main/svl/readme.md
javaunohelper ✅ (juh.jar, juh.dll, juhx.dll) —
main/javaunohelper/readme.md
── Layer 6 ──────────────────────────────────────────────────────────────
vcl ✅ (rsc, sot, unotools, svl, basegfx, basebmp, tools,
shell, l10ntools,
icc + boost, icu, graphite ext) — main/vcl/readme.md
xmloff ✅ (xo.dll, xof.dll) — main/xmloff/readme.md
── Layer 7 ──────────────────────────────────────────────────────────────
linguistic ✅ (svl, xmloff, ucbhelper, vos, comphelper + icu ext) —
main/linguistic/readme.md
toolkit ✅ (ootk.dll) — main/toolkit/readme.md
svtools ✅ (svt.dll, hatchwindowfactory.dll) — main/svtools/readme.md
officecfg ✅ (xsltproc pipeline: schema_trim + alllang, per-locale
zips) — main/officecfg/BUILD.bazel
── Layer 8 ──────────────────────────────────────────────────────────────
framework ✅ (fwi.dll, fwe.dll, fwk.dll, fwl.dll, fwm.dll) —
main/framework/readme.md
editeng ✅ (editeng.dll) — main/editeng/readme.md
canvas ✅ (canvastools, canvasfactory, nullcanvas, simplecanvas,
vclcanvas, directx9canvas, gdipluscanvas) — main/canvas/readme.md
basic ✅ (oovbaapi, svtools, xmlscript, framework, salhelper)
connectivity ✅ (dbtools.dll, sdbc2.dll, dbpool2.dll) —
main/connectivity/readme.md
── Layer 9 ──────────────────────────────────────────────────────────────
sfx2 ✅ (basic, xmlscript, framework, shell, sax + libxml2 ext)
— main/sfx2/readme.md
cppcanvas ✅ (cppcanvas.dll) — main/cppcanvas/readme.md
── Layer 10 ─────────────────────────────────────────────────────────────
avmedia ✅ (avmedia.dll, avmediawin.dll) — main/avmedia/readme.md
── Layer 11 ─────────────────────────────────────────────────────────────
drawinglayer ✅ (vcl, svtools, basegfx, avmedia, canvas, cppcanvas)
── Layer 12 ─────────────────────────────────────────────────────────────
svx ✅ (svxcore.dll, svx.dll, textconversiondlgs.dll) —
main/svx/readme.md
msfilter ✅ (msfilter.dll — prereq for oox export) —
main/filter/BUILD.bazel
oox ✅ (oox.dll) — main/oox/readme.md
── Layer 13 ─────────────────────────────────────────────────────────────
writerfilter ✅ (writerfilter.dll, writerfilter_debug.dll) —
main/writerfilter/readme.md
filter ✅ (xmlfa, xfld, svgfilter, pdffilter, flash, placeware,
t602filter,
filterconfig1, xsltfilter, xsltdlg, filtertracer +
22 graphic
filter DLLs) — main/filter/readme.md
vbahelper ✅ (vbahelper.dll, msforms.dll) — main/vbahelper/readme.md
── Layer 14 — pre-app infrastructure ─────────────────────────────────────
ucb ✅ (ucb1, cached1, srtrs1, ucpexpand1, ucpext, ucpfile1,
ucphier1,
ucppkg1, ucptdoc1, ucpftp1, ucpdav1) —
main/ucb/readme.md
unoxml ✅ (unoxml.dll — DOM/XPath/Events; unordf deferred:
redland not yet on Windows) — main/unoxml/readme.md
eventattacher ✅ (evtatt.dll) — main/eventattacher/readme.md
UnoControls ✅ (ctl.dll) — main/UnoControls/readme.md
dtrans ✅ (dtrans.dll, mcnttype.dll, dnd.dll, ftransl.dll,
sysdtrans.dll) — main/dtrans/readme.md
svgio ✅ (svgio.dll) — main/svgio/readme.md
lingucomponent ✅ (spell.dll, hyphen.dll, lnth.dll, guesslang.dll) —
main/lingucomponent/readme.md
fpicker ✅ (fps.dll, fop.dll, fps_office.dll, fpicker.dll) —
main/fpicker/readme.md
mysqlc ✅ (mysqlc.uno.dll — MySQL/MariaDB SDBC driver via
mysqlcppconn+mariadb-connector-c) — main/mysqlc/readme.md
── Layer 15 ─────────────────────────────────────────────────────────────
formula ✅ (for.dll, forui.dll) — main/formula/readme.md
animations ✅ (animcore.dll) — main/animations/readme.md
chart2 ✅ (charttools, chartmodel, chartview, chartcontroller) —
main/chart2/readme.md
embeddedobj ✅ (embobj.dll, emboleobj.dll) — main/embeddedobj/readme.md
xmlsecurity ⬜ (xmloff, sfx2, tools, libxmlsec — XML digital signatures)
uui ⬜ (svtools, vcl, toolkit, sfx2 — user interaction/auth
dialogs)
fileaccess ⬜ (ucb, comphelper — file access UNO service)
accessibility ⬜ (vcl, toolkit, svx, cppu — a11y UNO API)
── Layer 16 ─────────────────────────────────────────────────────────────
forms ⬜ (svx, toolkit, vcl, formula, connectivity — form controls)
scripting ⬜ (sfx2, basic, vcl, comphelper — macro scripting framework)
embedserv ⬜ (embeddedobj, sfx2, tools — OLE embedding server)
winaccessibility ⬜ (accessibility, vcl — Windows a11y bridge)
── Layer 17 ─────────────────────────────────────────────────────────────
cui ⬜ (svx, svtools, toolkit, sfx2, vcl, editeng, chart2,
scripting
— common UI dialogs shared by all apps)
── Layer 18 — sw ─────────────────────────────────────────────────────────
sw ✅ (swd.dll + sw.dll) — main/sw/README.md
── Layer 19 ─────────────────────────────────────────────────────────────
basctl ⬜ (basic, scripting, sfx2, sw — Basic IDE)
sd ⬜ Draw/Impress (sw, svx, sfx2, filter, oox, avmedia, canvas,
cppcanvas, chart2, animations, embeddedobj, forms,
svgio, cui)
── Layer 20 ─────────────────────────────────────────────────────────────
slideshow ⬜ (sd, canvas, cppcanvas, vcl, svx — Impress slideshow
engine)
sdext ⬜ (sd — PDF import, Presenter Console, minimizer)
sc ⬜ Calc (sw, svx, sfx2, filter, oox, connectivity, vbahelper,
chart2, formula, forms, scripting, embeddedobj, cui,
ucb)
── Layer 21 ─────────────────────────────────────────────────────────────
scaddins ⬜ (sc, tools, comphelper — Calc add-in infrastructure)
sccomp ⬜ (sc, connectivity — Calc compatibility components)
solver ⬜ (sc — linear programming solver)
dbaccess ⬜ Base (sc, sw, connectivity, svx, sfx2, svtools, xmloff,
ucb, forms, cui)
── Layer 22 ─────────────────────────────────────────────────────────────
reportdesign ⬜ (dbaccess, svx, sfx2, sc, vcl — Base report designer)
reportbuilder ⬜ (reportdesign, dbaccess — Java-based report engine)
starmath ⬜ (svx, sfx2, editeng, vcl, sw — Math formula editor)
── Layer 23 — desktop ────────────────────────────────────────────────────
desktop ⬜ (sw, sd, sc, dbaccess, starmath, sfx2, vcl, framework,
ucb, scripting, basctl, fpicker, dtrans, uui,
accessibility
— soffice.exe launcher + splash, quickstarter)
there are open modules not listed. But i currently think once desktop
can be build by bazel i can do a cleanup and push the experiment for a
wider audience.
And I would like to discuss if the direction is okay or if i my fondness
does not reach you. (There are some caveeats with bazel. like there is
no upstream freebsd support, not to speak of OS/2, solaris)
all the best
peter
Am 25.04.2026 um 18:05 schrieb [email protected]:
Hi all,
I am not pushing anything at the moment, so i wanted to give a short
update.
I had only little progress last week. Fighting with the sdi tool,
which was crashing all the time. It was hard to figure out how to get
it properly work in bazel, and i have doubts if what i have now is the
right way. But I overcome the issue. svx builds now.
OpenSSL integration i pushed to the back. I want to see that the
approach works in general. Once i have a build i want to push the
branch, for review and wider audience. Currently it is not presentable.
I am still working on it.
All the best
peter
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]