Date: Mon, 9 Dec 2013 14:26:31 +0100 From: Tijl Coosemans <tijl@FreeBSD.org> To: olli hauer <ohauer@gmx.de> Cc: Mathieu Arnold <mat@FreeBSD.org>, svn-ports-head@freebsd.org, svn-ports-all@freebsd.org, Matthias Andree <mandree@FreeBSD.org>, ports-committers@freebsd.org Subject: Re: svn commit: r332017 - head/devel/subversion17 Message-ID: <20131209142631.43861210@kalimero.tijl.coosemans.org> In-Reply-To: <52A4F213.7060303@gmx.de> References: <201310292201.r9TM15df056478@svn.freebsd.org> <EE1C4CE479CEC1E30C7895E9@ogg.in.absolight.net> <20131207150704.5ff18aae@kalimero.tijl.coosemans.org> <52A48BAF.8050607@FreeBSD.org> <52A4F213.7060303@gmx.de>
next in thread | previous in thread | raw e-mail | index | archive | help
--MP_/l/1bUptYdYcKFVyLFU_6bS0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sun, 08 Dec 2013 23:26:27 +0100 olli hauer wrote: > On 2013-12-08 16:09, Matthias Andree wrote: >> Am 07.12.2013 15:07, schrieb Tijl Coosemans: >>> On Mon, 02 Dec 2013 18:03:16 +0100 Mathieu Arnold wrote: >>>> +--On 29 octobre 2013 22:01:05 +0000 Olli Hauer <ohauer@FreeBSD.org> wrote: >>>> | -PKGNAMESUFFIX= 17 >>>> | +#7setting7PKGSUFFIX7not7possible7wo.7having7a7Mk/Uses7file7and7fixing7a7 >>>> | bunch7of7ports >>>> | +#PKGNAMESUFFIX= 17 >>>> >>>> I've grepped through the whole ports tree, and I couldn't find any port >>>> that depends on subversion1[67] using their package name, as in >>>> subversion<1.8:{$PORTS}..., they only depends on the svn binary being >>>> there, so adding PKGNAMESUFFIX will not hurt any bit. >>>> >>>> If I'm wrong, please show me which ports have their dependencies that needs >>>> fixing. >>> >>> The subversion-java slave port sets PKGNAMESUFFIX=-java, so setting >>> PKGNAMESUFFIX=17 in the master makefile would override that. >>> >>> The other slave ports (perl,ruby,python) set PKGNAMEPREFIX so maybe >>> the java port should do that too. >> >> Is there any purpose in keeping old garbage around? >> Such as new client not working with old server? >> If not, let's just axe the older versions rather than fix package name >> conflicts. > > The subversion java port is fixed, I'm more concerned with ports using > > - ..._DEPENDS= subversion>=$version > - ..._DEPENDS= p5-subversion>=$version > - ..._DEPENDS= ${PYTHON_PKGNAMEPREFIX}subversion>=0: > > Having PKGNAMEPREFIX will prevent building this ports in case default > subversion != devel/subversion even they work fine with subversion 1.6. > > I'm going now over all ports depending on 'devel/subversion*' to check for > false declaration e.g using 'subversion>=1.7.0:' where 1.6 is sufficient. > > Long time ago I've written a SVN framework, but got no or negative feedback > so I stopped the work. Hopefully I can find a bunch of time to start working > again on it. > > http://lists.freebsd.org/pipermail/freebsd-ports/2011-July/068561.html You can set PKGNAMESUFFIX only on the master subversion ports. For the bindings there's only one package so there's no package name conflict. This way *_DEPENDS=p5-subversion>=$version would continue to work. For ports that depend on subversion itself maybe we can create USES=svn. The attached patch is a first attempt at that. It allows ports to depend on subversion (build,run,build+run,fetch). It also supports DEFAULT_VERSIONS, so users can set "DEFAULT_VERSIONS= subversion=1.7" in make.conf and then USES=svn will depend on devel/subversion17. Ports that don't work with particular versions of subversion could use something like: .if ${SUBVERSION_DEFAULT} == 1.6 IGNORE= Port requires subversion 1.7 or higher .endif --MP_/l/1bUptYdYcKFVyLFU_6bS0 Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=svn.mk.patch Index: Mk/bsd.default-versions.mk =================================================================== --- Mk/bsd.default-versions.mk (revision 335965) +++ Mk/bsd.default-versions.mk (working copy) @@ -12,16 +12,20 @@ .if !defined(_INCLUDE_BSD_DEFAULT_VERSIONS_MK) _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes +# tell bmake we use the old :L :U modifiers +.MAKE.FreeBSD_UL= yes + .for lang in ${DEFAULT_VERSIONS} _l= ${lang:C/=.*//g} ${_l:U}_DEFAULT= ${lang:C/.*=//g} .endfor PERL5_DEFAULT?= 5.16 -RUBY_DEFAULT?= 1.9 -TCLTK_DEFAULT?= 8.6 PYTHON_DEFAULT?= 2.7 PYTHON2_DEFAULT?= 2.7 PYTHON3_DEFAULT?= 3.3 +RUBY_DEFAULT?= 1.9 +SUBVERSION_DEFAULT?= 1.8 +TCLTK_DEFAULT?= 8.6 .endif Index: Mk/Uses/svn.mk =================================================================== --- Mk/Uses/svn.mk (revision 0) +++ Mk/Uses/svn.mk (working copy) @@ -0,0 +1,39 @@ +# $FreeBSD$ +# +# Subversion support +# +# MAINTAINER: ports@FreeBSD.org +# +# Feature: svn +# Usage: USES=svn +# Valid ARGS: build, run, both (default), fetch + +.if !defined(_INCLUDE_USES_SVN_MK) +_INCLUDE_USES_SVN_MK= yes + +.if !defined(svn_ARGS) +svn_ARGS= both +.endif + +.include "${PORTSDIR}/Mk/bsd.default-versions.mk" + +.if ${SUBVERSION_DEFAULT} == 1.8 +_SVN_DEPENDS= svn:${PORTSDIR}/devel/subversion +.else +_SVN_DEPENDS= svn:${PORTSDIR}/devel/subversion${SUBVERSION_DEFAULT:S/.//} +.endif + +.if ${svn_ARGS} == both +BUILD_DEPENDS+= ${_SVN_DEPENDS} +RUN_DEPENDS+= ${_SVN_DEPENDS} +.elif ${svn_ARGS} == build +BUILD_DEPENDS+= ${_SVN_DEPENDS} +.elif ${svn_ARGS} == fetch +FETCH_DEPENDS+= ${_SVN_DEPENDS} +.elif ${svn_ARGS} == run +RUN_DEPENDS+= ${_SVN_DEPENDS} +.else +IGNORE= USES=svn: invalid arguments: ${svn_ARGS} +.endif + +.endif Property changes on: Mk/Uses/svn.mk ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Index: devel/p5-subversion/Makefile =================================================================== --- devel/p5-subversion/Makefile (revision 335965) +++ devel/p5-subversion/Makefile (working copy) @@ -6,12 +6,12 @@ PKGNAMEPREFIX= p5- MAINTAINER= lev@FreeBSD.org COMMENT= Perl bindings for Version control system -.if defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 16 -MASTERDIR= ${.CURDIR}/../../devel/subversion16 -.elif defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 17 -MASTERDIR= ${.CURDIR}/../../devel/subversion17 -.else +.include "${.CURDIR}/../../Mk/bsd.default-versions.mk" + +.if ${SUBVERSION_DEFAULT} == 1.8 MASTERDIR= ${.CURDIR}/../../devel/subversion +.else +MASTERDIR= ${.CURDIR}/../../devel/subversion${SUBVERSION_DEFAULT:S/.//} .endif PKGDIR= ${.CURDIR} Index: devel/py-subversion/Makefile =================================================================== --- devel/py-subversion/Makefile (revision 335965) +++ devel/py-subversion/Makefile (working copy) @@ -6,12 +6,12 @@ PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= lev@FreeBSD.org COMMENT= Python bindings for version control system -.if defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 16 -MASTERDIR= ${.CURDIR}/../../devel/subversion16 -.elif defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 17 -MASTERDIR= ${.CURDIR}/../../devel/subversion17 -.else +.include "${.CURDIR}/../../Mk/bsd.default-versions.mk" + +.if ${SUBVERSION_DEFAULT} == 1.8 MASTERDIR= ${.CURDIR}/../../devel/subversion +.else +MASTERDIR= ${.CURDIR}/../../devel/subversion${SUBVERSION_DEFAULT:S/.//} .endif PKGDIR= ${.CURDIR} Index: devel/ruby-subversion/Makefile =================================================================== --- devel/ruby-subversion/Makefile (revision 335965) +++ devel/ruby-subversion/Makefile (working copy) @@ -6,13 +6,12 @@ PKGNAMEPREFIX= ruby- MAINTAINER= lev@FreeBSD.org COMMENT= Ruby bindings for version control system -.if defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 16 -MASTERDIR= ${.CURDIR}/../../devel/subversion16 -.elif defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 17 -BROKEN= does not build with subversion17 -MASTERDIR= ${.CURDIR}/../../devel/subversion17 -.else +.include "${.CURDIR}/../../Mk/bsd.default-versions.mk" + +.if ${SUBVERSION_DEFAULT} == 1.8 MASTERDIR= ${.CURDIR}/../../devel/subversion +.else +MASTERDIR= ${.CURDIR}/../../devel/subversion${SUBVERSION_DEFAULT:S/.//} .endif PKGDIR= ${.CURDIR} Index: java/java-subversion/Makefile =================================================================== --- java/java-subversion/Makefile (revision 335965) +++ java/java-subversion/Makefile (working copy) @@ -7,12 +7,12 @@ CATEGORIES= java MAINTAINER= lev@FreeBSD.org COMMENT= Java bindings for Version control system -.if defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 16 -MASTERDIR= ${.CURDIR}/../../devel/subversion16 -.elif defined(WITH_SUBVERSION_VER) && ${WITH_SUBVERSION_VER} == 17 -MASTERDIR= ${.CURDIR}/../../devel/subversion17 -.else +.include "${.CURDIR}/../../Mk/bsd.default-versions.mk" + +.if ${SUBVERSION_DEFAULT} == 1.8 MASTERDIR= ${.CURDIR}/../../devel/subversion +.else +MASTERDIR= ${.CURDIR}/../../devel/subversion${SUBVERSION_DEFAULT:S/.//} .endif PKGDIR= ${.CURDIR} --MP_/l/1bUptYdYcKFVyLFU_6bS0--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131209142631.43861210>