[prev in list] [next in list] [prev in thread] [next in thread] 

List:       openbsd-ports
Subject:    Re: python.port.mk: Respect SEPARATE_BUILD in MODPY_DISTUTILS_BUILD
From:       Landry Breuil <landry () openbsd ! org>
Date:       2018-01-29 18:04:12
Message-ID: 20180129180412.GP43610 () twilight ! rhaalovely ! net
[Download RAW message or body]

On Fri, Jan 26, 2018 at 08:46:53PM +0000, Stuart Henderson wrote:
> On 2018/01/26 19:46, Landry Breuil wrote:
> > On Fri, Jan 26, 2018 at 05:56:04PM +0100, Remi Pointel wrote:
> > > Le 26-01-2018 12:13, Marc Espie a écrit :
> > > > On Thu, Jan 25, 2018 at 11:22:30PM +0100, Klemens Nanni wrote:
> > > > > Out-of-tree builds for simple python ports are currently built in
> > > > > WRKSRC
> > > > > even when SEPARATE_BUILD is set.
> > > > > 
> > > > > Simple example:
> > > > > 
> > > > > 	$ cd /usr/ports/www/linkchecker
> > > > > 	$ make build
> > > > > 	[...]
> > > > > 	$ make show='SEPARATE_BUILD WRKSRC WRKBUILD'
> > > > > 	SEPARATE_BUILD=Yes
> > > > > 	WRKSRC=skins/larry/usr/obj/ports/linkchecker-9.3/linkchecker-upstream-9.3
> > > > > 	WRKBUILD=/usr/obj/ports/linkchecker-9.3/build-amd64
> > > > > 	$ ls `make show=WRKBUILD`
> > > > > 	$
> > > > > 
> > > > > That's because MODPY_DISTUTILS_BUILD hardcodes WRKSRC, the following
> > > > > diff changes that to WRKBUILD which defaults to WRKSRC if
> > > > > SEPARATE_BUILD
> > > > > set to "no".
> > > > > 
> > > > > Tested successfully with ports like www/linkchecker and
> > > > > sysutils/ranger.
> > > > > 
> > > > > Feedback?
> > > > > 
> > > > > Index: lang/python/python.port.mk
> > > > > ===================================================================
> > > > > RCS file: /cvs/ports/lang/python/python.port.mk,v
> > > > > retrieving revision 1.95
> > > > > diff -u -p -r1.95 python.port.mk
> > > > > --- lang/python/python.port.mk	8 Jul 2017 08:28:00 -0000	1.95
> > > > > +++ lang/python/python.port.mk	25 Jan 2018 21:49:23 -0000
> > > > > @@ -128,7 +128,7 @@ MODPY_SITEPKG =		${MODPY_LIBDIR}/site-pa
> > > > >  MODPY_SETUP ?=		setup.py
> > > > > 
> > > > >  # build or build_ext are commonly used
> > > > > -MODPY_DISTUTILS_BUILD ?=	build --build-base=${WRKSRC}
> > > > > +MODPY_DISTUTILS_BUILD ?=	build --build-base=${WRKBUILD}
> > > > > 
> > > > >  .if ${MODPY_SETUPUTILS:L} == "yes"
> > > > >  MODPY_DISTUTILS_INSTALL ?=	install --prefix=${LOCALBASE} \
> > > > The main person to ask is the current python maintainer... not me.
> > > > 
> > > > Especially for stuff that's not really bsd.port.mk-dependent, but
> > > > obviously
> > > > python-land.
> > > > 
> > > > Remi ?
> > > 
> > > Hi,
> > > 
> > > could someone test this diff in a bulk build please?
> > 
> > Will put it in the next.
> > 
> 
> Diff is ok with me, but would be best to wait for build results
> before committing. (I tested "make package" on a selection of ports
> from "select ports.fullpkgpath from modules join ports on
> ports.fullpkgpath=modules.fullpkgpath where value='lang/python'
> and separate_build='Yes'" but didn't try some of the larger
> annoying things that use it.

zero fallout from this diff in my bulk.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic