On Wed, Jun 24, 2020 at 05:04:50PM +0200, Charlene Wendling wrote: > On Wed, 24 Jun 2020 00:51:14 +0200 > Antoine Jacoutot wrote: > > > On Tue, Jun 23, 2020 at 05:51:09PM +0200, Charlene Wendling wrote: > > > On Mon, 22 Jun 2020 10:26:31 +0100 > > > Stuart Henderson wrote: > > > > > > > I haven't checked but the libraries are probably really needed at > > > > runtime (at least if it crashes at runtime, that's where the > > > > unwind functions are most likely to be used) on clang LLD arches > > > > too. The difference is that LLD will still link if there are > > > > missing symbols and crash at runtime if the functions are called, > > > > ld.bfd will check at link time. > > > > > > > > I would make it conditional on just clang rather than the linker > > > > too. > > > > > > > > -- > > > > Sent from a phone, apologies for poor formatting. > > > > On 22 June 2020 09:43:51 Charlene Wendling <juliana...@posteo.jp> > > > > wrote: > > > > > > > > > On Mon, 15 Jun 2020 21:12:48 +0100 > > > > > Stuart Henderson wrote: > > > > > > > > > >> On 2020/06/15 21:46, Charlene Wendling wrote: > > > > >> > Hi, > > > > >> > > > > > >> > libosinfo's build fails on my macppc machine with: > > > > >> > > > > > >> > > /usr/ports/pobj/libosinfo-1.8.0/build-powerpc/osinfo/libosinfo-1.0.so. > > > > >> > > 1.5: undefined reference to `_Unwind_GetIP' > > > > >> > > /usr/ports/pobj/libosinfo-1.8.0/build-powerpc/osinfo/libosinfo-1.0.so. > > > > >> > > 1.5: undefined reference to `_Unwind_GetRegionStart' > > > > >> > (etc.) > > > > >> > > > > > >> > I don't know why macppc is the only one needing that, but > > > > >> > linking against libc++abi and pthread works, tests have only > > > > >> > 1 failure, as seen on amd64. > > > > >> > > > > >> btw, same on amd64 if you set USE_LLD=No. > > > > > > > > > > I missed the fact that mips64 had the same issue, so the diff > > > > > is now targeting clang+lb.bfd archs. > > > > > > > > > >> > While here i've moved HOMEPAGE to https. > > > > >> > > > > > >> > Comments/feedback are welcome, > > > > >> > > > > > >> > Charlène. > > > > >> > > > > > > > The _Unwind_* symbols seem to come from > > > osinfo_loader_process_user_path, i've tried to isolate the > > > situation in C and vala without success. I may be wrong about this > > > assumption. > > > > > > The only other case where it's needed is for lang/luajit, so i've > > > looked at the cvs log, and there was no clear reason invoked by > > > espie back then as well. > > > > > > So here is a diff that adds the WANTLIBs and LDFLAGS for all > > > base-clang archs. I've updated the comment in case someone may > > > think it's unneeded. > > > > > > Charlène. > > > > Did you try patching out -fexceptions or -fasynchronous-unwind-tables > > from meson.build? > > It does work without -fexceptions or by providing -fno-exceptions as a > cflag [0]. As you mention patching, i've patched it away, there are no > more _Unwind_* symbols in the resulting binaries.
Looks fine, OK > Charlène. > > [0] https://bin.charlenew.xyz/libosinfo.log > > > Index: Makefile.inc > =================================================================== > RCS file: /cvs/ports/misc/osinfo/Makefile.inc,v > retrieving revision 1.11 > diff -u -p -u -p -r1.11 Makefile.inc > --- Makefile.inc 31 May 2020 10:36:21 -0000 1.11 > +++ Makefile.inc 24 Jun 2020 14:59:09 -0000 > @@ -6,7 +6,7 @@ CATEGORIES= misc devel > > MAINTAINER= Antoine Jacoutot <ajacou...@openbsd.org> > > -HOMEPAGE= http://libosinfo.org/ > +HOMEPAGE= https://libosinfo.org/ > > # GPLv2+ - LGPLv2+ > PERMIT_PACKAGE= Yes > Index: libosinfo/Makefile > =================================================================== > RCS file: /cvs/ports/misc/osinfo/libosinfo/Makefile,v > retrieving revision 1.12 > diff -u -p -u -p -r1.12 Makefile > --- libosinfo/Makefile 9 Jun 2020 07:14:44 -0000 1.12 > +++ libosinfo/Makefile 24 Jun 2020 14:59:09 -0000 > @@ -3,7 +3,7 @@ > COMMENT= library for managing information about operating systems > > DISTNAME= libosinfo-${V} > -REVISION= 0 > +REVISION= 1 > > SHARED_LIBS += osinfo-1.0 1.5 # 0.1008.0 > > Index: libosinfo/patches/patch-meson_build > =================================================================== > RCS file: libosinfo/patches/patch-meson_build > diff -N libosinfo/patches/patch-meson_build > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ libosinfo/patches/patch-meson_build 24 Jun 2020 14:59:09 -0000 > @@ -0,0 +1,16 @@ > +$OpenBSD$ > + > +Fix undefined reference errors to _Unwind_* on clang+ld.bfd archs; > +it may cause runtime issues on lld archs as well. > + > +Index: meson.build > +--- meson.build.orig > ++++ meson.build > +@@ -219,7 +219,6 @@ libosinfo_check_cflags = [ > + '-Wframe-larger-than=4096', > + '-Wno-overlength-strings', > + '--param=ssp-buffer-size=4', > +- '-fexceptions', > + '-fasynchronous-unwind-tables', > + '-fdiagnostics-show-option', > + '-funit-at-a-time', > Index: osinfo-db/Makefile > =================================================================== > RCS file: /cvs/ports/misc/osinfo/osinfo-db/Makefile,v > retrieving revision 1.33 > diff -u -p -u -p -r1.33 Makefile > --- osinfo-db/Makefile 31 May 2020 10:36:36 -0000 1.33 > +++ osinfo-db/Makefile 24 Jun 2020 14:59:09 -0000 > @@ -3,6 +3,7 @@ > COMMENT= osinfo database files > > V= 20200529 > +REVISION= 0 > DISTNAME= osinfo-db-${V} > EXTRACT_SUFX= .tar.xz > > Index: osinfo-db-tools/Makefile > =================================================================== > RCS file: /cvs/ports/misc/osinfo/osinfo-db-tools/Makefile,v > retrieving revision 1.11 > diff -u -p -u -p -r1.11 Makefile > --- osinfo-db-tools/Makefile 31 May 2020 10:36:21 -0000 1.11 > +++ osinfo-db-tools/Makefile 24 Jun 2020 14:59:09 -0000 > @@ -3,6 +3,7 @@ > COMMENT= tools to manage the libosinfo database > > DISTNAME= osinfo-db-tools-${V} > +REVISION= 0 > > WANTLIB += archive c gio-2.0 glib-2.0 gobject-2.0 intl json-glib-1.0 > WANTLIB += soup-2.4 xml2 > -- Antoine