From: Tom Smyth Subject: Re: sparc64 bulk build report To: OpenBSD Ports Date: Wed, 4 Sep 2024 15:45:02 +0100 Thanks Stefan, tried make and make static on amd64 and it worked with no regressions agreed on delaying fix in ports until release of new package upstream thanks On Wed, 4 Sept 2024 at 12:26, Stefan Sperling wrote: > On Wed, Sep 04, 2024 at 11:28:49AM +0100, Stuart Henderson wrote: > > On 2024/09/04 11:09, Tom Smyth wrote: > > > Hi > > > Is the nsh static build failing because the nsh dynamic build is > locked ? > > > > no, it's failing because of linker errors around libm symbols > > > http://build-failures.rhaalovely.net/sparc64/2024-09-01/shells/nsh,static.log > > > > > it seems to be working on amd64, and arm64. > > > > sparc64 uses a different toolchain (compiler, linker, etc) > > > > it might be worth trying this (I don't have sparc64) > > > > Index: Makefile > > =================================================================== > > RCS file: /cvs/ports/shells/nsh/Makefile,v > > diff -u -p -r1.51 Makefile > > --- Makefile 19 Jun 2024 15:09:50 -0000 1.51 > > +++ Makefile 4 Sep 2024 10:27:59 -0000 > > @@ -32,7 +32,7 @@ LIB_DEPENDS = databases/sqlite3 > > FAKE_FLAGS = PREFIX=${TRUEPREFIX} > > > > .if ${FLAVOR:Mstatic} > > -MAKE_FLAGS += LDFLAGS="-L${LOCALBASE}/lib -ledit -ltermcap > -lsqlite3 -lm -lpthread -static" > > +MAKE_FLAGS += LDFLAGS="-L${LOCALBASE}/lib -ledit -ltermcap -lm > -lsqlite3 -lpthread -static" > > .endif > > > > NO_TEST= Yes > > > > It appears that the problem was due to -lsqlite3 appearing too far > towards at the tail of the linker command line. > > Fixed upstream (with testing help from tb@) by providing a 'make static' > build target which passes all linker flags in the correct order: > > https://github.com/yellowman/nsh/commit/21b1dfdbf54e96ff9cb8cb9a05f38ac2d344dbaa > > Since a new nsh release is planned soon I'd recommend waiting for > that release to happen instead of patching the port for this. > -- Kindest regards, Tom Smyth.