Index | Thread | Search

From:
Jeremie Courreges-Anglas <jca@wxcvbn.org>
Subject:
Re: x11/gnustep/libobjc2 failed to build
To:
Sebastian Reitenbach <sebastia@l00-bugdead-prods.de>
Cc:
Stuart Henderson <stu@spacehopper.org>, Antoine Jacoutot <ajacoutot@bsdfrog.org>, Theo Buehler <tb@theobuehler.org>, ports@openbsd.org
Date:
Tue, 5 Mar 2024 08:01:36 +0100

Download raw body.

Thread
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 <stu@spacehopper.org> 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 <bsd.port.mk>
> > 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