From owner-svn-ports-head@FreeBSD.ORG Mon Dec 9 13:27:44 2013 Return-Path: Delivered-To: svn-ports-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E4980F14; Mon, 9 Dec 2013 13:27:44 +0000 (UTC) Received: from mailrelay005.isp.belgacom.be (mailrelay005.isp.belgacom.be [195.238.6.171]) by mx1.freebsd.org (Postfix) with ESMTP id 924E319C6; Mon, 9 Dec 2013 13:27:43 +0000 (UTC) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AukGAGDEpVJbsKXL/2dsb2JhbABZgwc4qECHc4k1gS0XdIIlAQEBBAECUyMQCxgJJQ8ZER4GE4gGAQjBEReNF4F5B4QzA5AxhRSCToExkGODKjs Received: from 203.165-176-91.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([91.176.165.203]) by relay.skynet.be with ESMTP; 09 Dec 2013 14:26:33 +0100 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.14.7/8.14.7) with ESMTP id rB9DQWXp002699; Mon, 9 Dec 2013 14:26:32 +0100 (CET) (envelope-from tijl@FreeBSD.org) Date: Mon, 9 Dec 2013 14:26:31 +0100 From: Tijl Coosemans To: olli hauer 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> <20131207150704.5ff18aae@kalimero.tijl.coosemans.org> <52A48BAF.8050607@FreeBSD.org> <52A4F213.7060303@gmx.de> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/l/1bUptYdYcKFVyLFU_6bS0" Cc: Mathieu Arnold , svn-ports-head@freebsd.org, svn-ports-all@freebsd.org, Matthias Andree , ports-committers@freebsd.org X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 09 Dec 2013 13:27:45 -0000 --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 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--