Re: [ITP] libbacktrace
Jon Turney via Cygwin-apps <[email protected]> Mon, 3 Aug 2026 14:29:49 +0100
| Newsgroups | gmane.os.cygwin.applications |
|---|---|
| Message-ID | <[email protected]> |
On 24/07/2026 14:29, Hamish McIntyre-Bhatty via Cygwin-apps wrote:
> Hi there,
>
> Recently, I've managed to build a test package for wxWidgets 3.2, and
> one of the things preventing me from testing it properly at the moment,
> seeing as the test suite won't compile, is not being able to build
> wxPython, where I could use the wxPython demo to test manually. As such,
> I decided to start work on packaging libbacktrace, which is a dependency
> of wxStackWalker, which newer versions of wxPython require.
>
> I've successfully created a cygport file and built test packages, but
> there's something wrong: even though I've explicitely disabled building
> the static library and enabled the shared one, only the static library
> seems to be being built (the file with the .a extension is a static
> library right?). Also, I can't seem to run the tests, as they fail with
I suspect you have a warning from libtool somewhere saying something
about how it can't (or won't) build a shared library because of
undefined symbols.
What this means practically is that libtool won't even try to build PE
shared libraries unless its -no-undefined flag is given (to assure it
that, yes, there really are no undefined symbols).
> a compile error, which I have yet to dig into further. I also heard
> somewhere, I think from Debian 13's packages, that the tests are broken
> on shared library builds anyway.
>
> I have attached the cygport file, and there has been a successful CI
> build (ID 12144 on playground) of the packages, so perhaps with some
> help we can get this buttoned up soon? I'm keen to get newer versions of
> wxPython working.
I added this to your packages.
A few comments:
> VERSION=1.0
[...]
> SRC_URI="https://github.com/ianlancetaylor/libbacktrace/archive/refs/heads/master.zip"
> SRC_DIR="libbacktrace-master"
This is not the best. Picking whatever is current master version and
saying that's same as what's tagged '1.0' isn't true.
Since upstream has a "no tagged releases" policy, it's probably best to
include the commit date (and maybe git hash) into the version.
> src_compile() {
> pushd ${S}
> cygconf --disable-static --enable-shared
> cygmake
> popd
> }
Since this supports building in ${B}, this can all be removed and just
use the default src_compile with CYGCONF_ARGS=" --disable-static
--enable-shared". (And we shouldn't even need that if building a shared
library work).
I did have a poke at building this library about six months ago, after
you mentioned this was blocking you. I've pushed where I got to at:
https://github.com/jon-turney/libbacktrace-cygport
I'm afraid I forget why I stopped: Maybe I just got distracted? I think
the tests didn't pass? Or maybe I didn't have anything to test it with?