Skip to content

build: link the shared libxad from xad 2.2 - #11

Closed
auto-differentiation-dev wants to merge 2 commits into
build/modernisefrom
deps/ql-1.44
Closed

auto-differentiation-dev wants to merge 2 commits into
build/modernisefrom
deps/ql-1.44

Conversation

@auto-differentiation-dev

@auto-differentiation-dev auto-differentiation-dev commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

Use the shared libxad from the xad 2.2 wheel, so xad and QuantLib share one tape per thread.

  • find_package(XAD 2.2 CONFIG) via xad.get_cmake_dir(); lib/xad submodule removed.
  • Extension links libxad with rpath into the xad package; libxad excluded from wheel repair (not bundled).
  • Thread-local tapes on; /MD on Windows.
  • Tape activation monkey-patch (_activate_tape) removed.
  • CI installs xad from xad-py#42 until xad 2.2 is on PyPI.

@CLAassistant

CLAassistant commented Oct 25, 2026 •

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

Build QuantLib and the extension against the installed xad package
(find_package(XAD CONFIG) via xad.get_cmake_dir()) instead of lib/xad,
with thread-local tapes and the dynamic MSVC runtime. The extension finds
libxad through an rpath to xad/lib; wheel repair excludes it.
QuantLib and xad share the active tape through libxad, so xad.Tape no
longer needs wrapping.
@auto-differentiation-dev auto-differentiation-dev changed the title deps: QuantLib 1.44 build: link the shared libxad from xad 2.2 Oct 25, 2026
@auto-differentiation-dev
auto-differentiation-dev deleted the deps/ql-1.44 branch October 25, 2026 19:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants