From: Jeremie Courreges-Anglas Subject: Re: x11/gnustep/libobjc2 failed to build To: Sebastian Reitenbach Cc: Stuart Henderson , Antoine Jacoutot , Theo Buehler , ports@openbsd.org Date: Tue, 5 Mar 2024 08:01:36 +0100 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@ > > 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