Debian Patches
Status for topcom/1.2.0~g+ds-2
| Patch | Description | Author | Forwarded | Bugs | Origin | Last update |
|---|---|---|---|---|---|---|
| dont-build-libraries.patch | Use Debian gmp and cdd library packages instead of building them. | Doug Torrance <dtorrance@debian.org> | not-needed | 2022-06-23 | ||
| include-dir.patch | Install headers in /usr/include/topcom | Doug Torrance <dtorrance@debian.org> | not-needed | 2024-09-16 | ||
| pkg-config.patch | Add pkg-config file. | Doug Torrance <dtorrance@debian.org> | not-needed | 2022-09-14 | ||
| link-order.patch | Change link order to avoid missing symbols. Upstream uses static libraries, so not an issue. | Doug Torrance <dtorrance@debian.org> | not-needed | 2024-09-16 | ||
| ebb.patch | Use extractbb instead of ebb alias (not available in Debian). | Doug Torrance <dtorrance@debian.org> | not-needed | |||
| mathml-svg.patch | Render HTML manual math as MathML instead of via a MathJax CDN. The "mathjax" tex4ht option makes make4ht embed a <script> tag loading MathJax from cdn.jsdelivr.net, which is a privacy breach and does not work offline. Modern browsers render MathML natively, so build MathML only. |
Claude Opus 4.8 <noreply@anthropic.com> | not-needed | |||
| i386-builtin-clz.patch | Use __builtin_clzll for 64-bit bit blocks in max_elem(). The bit blocks are block_type, i.e. std::uint64_t, but max_elem() found the highest set bit with __builtin_clzl, which takes an unsigned long -- 64 bits on amd64, but only 32 bits on i386 and other ILP32 architectures. There the block was silently truncated to its low 32 bits, while the surrounding arithmetic still used the full block_len of 64, so max_elem() returned a nonsensical result. . This broke the bijectivity check in Symmetry::read(), which compares max_elem() against the number of permuted elements. Valid symmetries were rejected as "not a bijection" and the clients exited before producing any output, failing 74 of 103 tests on i386. A configuration on 64 points such as cube_6 happened to escape, since a fully populated block truncates to 0xffffffff and yields the correct answer by coincidence. . __builtin_clzll takes an unsigned long long, which is 64 bits on both i386 and amd64, so uint64_t is no longer truncated. On architectures where unsigned long is already 64 bits the generated result is unchanged. |
Claude Opus 4.8 <noreply@anthropic.com> | invalid | 2026-07-17 | ||
| serialize-doc-build.patch | Do not build the HTML and PDF manuals in parallel. The html-doc (make4ht) and pdf-doc (pdflatex) targets both compile TOPCOM-manual.tex in the doc directory, sharing its .aux/.log/.out files and triggering the same on-the-fly font generation (mktexpk/metafont). Under "make -j" they run concurrently and race; on slow architectures the window is wide enough to deadlock, and the build hangs until the buildd's inactivity timeout kills it (observed on loong64 and riscv64). Mark the doc Makefile .NOTPARALLEL so its targets run one at a time. |
Claude Opus 4.8 <noreply@anthropic.com> | no |
All known versions for source package 'topcom'
- 1.2.0~g+ds-2 (experimental)
- 1.1.2+ds-1.1 (sid, trixie, forky)
- 1.1.2+ds-1 (bookworm)
