From: "Sebastian Reitenbach" Subject: Re: x11/gnustep/libobjc2 failed to build To: "Jeremie Courreges-Anglas" Cc: "Stuart Henderson" , "Antoine Jacoutot" , "Theo Buehler" , ports@openbsd.org Date: Tue, 05 Mar 2024 14:31:07 +0100 On Tuesday, March 05, 2024 08:01 CET, Jeremie Courreges-Anglas wrote: > Le Mon, Mar 04, 2024 at 10:48:46PM +0100, Jeremie Courreges-Anglas a écrit : > > Le Mon, Mar 04, 2024 at 10:26:02PM +0100, Sebastian Reitenbach a écrit : > > > On Sunday, March 03, 2024 21:56 CET, Stuart Henderson wrote: > > > > > > > On 2024/03/03 20:52, Stuart Henderson wrote: > > > > > On 2024/03/03 20:31, Sebastian Reitenbach wrote: > > > > > > If I understand removing the @pkgpath fixed the bigger part of the issue? > > > > > > > > PS "bigger part of the issue" = "bulk builds were breaking because the > > > > dependency loop resulted in too much disk space being eatern" but the > > > > remaining problem is still fairly important. > > > > > > > > > > > > > The conflicting file is the include/Block.h > > > > > > Nothing that depends on libobjc2, really needs it. gnustep-base is configured to > > > not search for Blocks runtime. > > > > I'm testing something similar, slightly more conservative: move > > Block.h and Block_private.h to /usr/local/include/gnustep/; the idea > > is that directory is prepended to C(PP)FLAGS during the build of the > > gnustep ports/consumers, thus ports that really need to include > > Block.h can find it out of the box. This partial build is still > > ongoing: > > > > I=515 B=21 Q=2 T=25 F=0 !=0 > > No error. > > > and so far ''stat /usr/local/include/gnustep/Block.h'' says no port > > has tried to include the file. > > No port has tried to include that file, as you expected. > > > So you're definitely on the right > > track. The build should complete later this night. > > > > > This, with another bump of libdispatch, and removed @conflict in PLIST > > > should do the trick. > > > > > > OK? > > > > You're just moving a header, so why the shared lib major bump? > > (You've already bumped the major in the last update.) > > > > Depending on my ongoing build it could be better to move both Block*.h > > headers to /usr/local/include/gnustep where they can be used, or to > > just zap both of them if they're really not useful. > > I think moving both files under /usr/local/include/gnustep makes most > sense but you get the last word. > > ok jca@ thank you, followed your suggestion to move to /usr/local/include/gnustep. as well as removed the conflict from devel/libdispatch Sebastian > > > > Sebastian > > > > > > Index: Makefile > > > =================================================================== > > > RCS file: /cvs/ports/x11/gnustep/libobjc2/Makefile,v > > > diff -u -r1.35 Makefile > > > --- Makefile 3 Mar 2024 12:28:24 -0000 1.35 > > > +++ Makefile 4 Mar 2024 20:02:11 -0000 > > > @@ -4,15 +4,15 @@ > > > > > > # note: this port does not use the gnustep module > > > VERSION = 2.2 > > > -REVISION = 1 > > > +REVISION = 2 > > > GH_ACCOUNT = gnustep > > > GH_PROJECT = libobjc2 > > > GH_TAGNAME = v${VERSION} > > > DISTNAME = libobjc2-${VERSION:S/_//} > > > PKGNAME = gnustep-${DISTNAME} > > > > > > -SHARED_LIBS += objc2 2.0 > > > -SHARED_LIBS += objcxx 1.0 > > > +SHARED_LIBS += objc2 3.0 > > > +SHARED_LIBS += objcxx 2.0 > > > > > > CATEGORIES = x11/gnustep devel > > > > > > @@ -45,5 +45,8 @@ > > > > > > MAKE_FLAGS += LIBOBJCLIBNAME=objc2 \ > > > LIBOBJC=libobjc2 > > > + > > > +post-install: > > > + mv ${PREFIX}/include/Block.h ${PREFIX}/include/Block-libobjc2.h > > > > > > .include > > > Index: pkg/PLIST > > > =================================================================== > > > RCS file: /cvs/ports/x11/gnustep/libobjc2/pkg/PLIST,v > > > diff -u -r1.6 PLIST > > > --- pkg/PLIST 3 Mar 2024 12:28:24 -0000 1.6 > > > +++ pkg/PLIST 4 Mar 2024 20:02:11 -0000 > > > @@ -1,5 +1,4 @@ > > > -@conflict libdispatch-* > > > -include/Block.h > > > +include/Block-libobjc2.h > > > include/Block_private.h > > > include/gnustep/ > > > include/gnustep/objc/ > > > > > > > -- > > jca > > > > -- > jca