Subject: Re: apache, ap-perl and pthread
To: Dieter Baron <dillo@danbala.ifoer.tuwien.ac.at>
From: Manuel Bouyer <bouyer@antioche.eu.org>
List: tech-pkg
Date: 03/14/2006 23:08:05
On Tue, Mar 14, 2006 at 10:52:14PM +0100, Manuel Bouyer wrote:
> On Tue, Mar 14, 2006 at 01:32:47PM +0100, Dieter Baron wrote:
> > In article <20060309170437.GA2225@asim.lip6.fr> Manuel wrote:
> > : Hi,
> > : since perl is compiled with threads by default, ap-perl doesn't work
> > : anymore with apache-1.3. This is because ap-perl is linked with threads
> > : and httpd isn't. Adding -lpthreads when linking httpd fixes this. For now
> > : I've done this by hand when building apache for the few servers where I
> > : still use apache-1.3 + mod_perl.
> > 
> > : What is the best way to fix this in pkgsrc (if we really want to fix it) ?
> > 
> >   There is a list of NetBSD versions that require CFLAGS+=-pthread for
> > programs that use dlopen if the loaded library uses pthread.  It is
> > _BLNK_DLOPEN_REQUIRE_PTHREAD_PLATFORMS in mk/dlopen.buildlink.mk.
> > Since NetBSD 3.0 needs this, it should be added to that list.  If no
> > one objects, I will commit that change.
> 
> NetBSD-3 should probably be in _BLNK_DLOPEN_REQUIRE_PTHREAD_PLATFORMS, yes.
> 
> However I just tried it, and it doesn't work for www/apache/
> I tracked it down to _BLNK_DLOPEN_REQUIRE_PTHREADS being set to no at the
> start of mk/dlopen.builtin.mk (so _BLNK_DLOPEN_REQUIRE_PTHREAD_PLATFORMS
> isn't even used). I don't know what could set _BLNK_DLOPEN_REQUIRE_PTHREADS,
> I suspect one of the buildlink files inclued by the apache Makefile.

No, this simple Makefile:
.include <../../mk/dlopen.buildlink3.mk>
print:
        @echo MACHPLAT_DEF ${MACHPLAT_DEF}
	@echo MACHPLAT_START ${MACHPLAT_START}
	@echo MACHPLAT_SEARCH ${MACHPLAT_SEARCH}
	@echo MACHPLAT_MATCH ${MACHPLAT_MATCH}
	@echo MACHPLAT_DLOPEN ${MACHPLAT_DLOPEN}

has _BLNK_DLOPEN_REQUIRE_PTHREADS on startup (the variables printed here
are things I added in dlopen.builtin.mk to see what's defined at various
places.

> I'm using the 2005Q4 branch.
> 
> -- 
> Manuel Bouyer <bouyer@antioche.eu.org>
>      NetBSD: 26 ans d'experience feront toujours la difference
> --
-- 
Manuel Bouyer <bouyer@antioche.eu.org>
     NetBSD: 26 ans d'experience feront toujours la difference
--