From owner-svn-ports-all@FreeBSD.ORG Wed Mar 6 14:28:58 2013 Return-Path: Delivered-To: svn-ports-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 66FBACA3; Wed, 6 Mar 2013 14:28:58 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4108EDFB; Wed, 6 Mar 2013 14:28:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.6/8.14.6) with ESMTP id r26ESwCA047335; Wed, 6 Mar 2013 14:28:58 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.6/8.14.5/Submit) id r26ESvw7047333; Wed, 6 Mar 2013 14:28:57 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201303061428.r26ESvw7047333@svn.freebsd.org> From: Baptiste Daroussin Date: Wed, 6 Mar 2013 14:28:57 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r313517 - in head/Mk: . Uses X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Mar 2013 14:28:58 -0000 Author: bapt Date: Wed Mar 6 14:28:57 2013 New Revision: 313517 URL: http://svnweb.freebsd.org/changeset/ports/313517 Log: New USES macros that loads "features" on demand. First feature implemented: pathfix which will lookup in WRKSRC for Makefile.in and configure and fix common path that doesn't fit with FreeBSD hier(7) This is an extract of bsd.gnome.mk's gnomehack to avoid porters to have to load the full bsd.gnome.mk just for this feature More features to come... Added: head/Mk/Uses/ head/Mk/Uses/pathfix.mk (contents, props changed) Modified: head/Mk/bsd.port.mk Added: head/Mk/Uses/pathfix.mk ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/Mk/Uses/pathfix.mk Wed Mar 6 14:28:57 2013 (r313517) @@ -0,0 +1,26 @@ +# $FreeBSD$ +# Lookup in Makefile.in and configure for common incorrect paths and set them +# to respect FreeBSD hier +# +# MAINTAINER: portmgr@FreeBSD.org +# +.if !defined(_INCLUDE_PATHFIX_MK) +_INCLUDE_PATHFIX_MK= yes + +PATHFIX_MAKEFILEIN?= Makefile.in + +pre-patch: pathfix-pre-patch + +pathfix-pre-patch: + @${FIND} ${WRKSRC} -name "${PATHFIX_MAKEFILEIN}" -type f | ${XARGS} ${REINPLACE_CMD} -e \ + 's|[(]libdir[)]/locale|(prefix)/share/locale|g ; \ + s|[(]libdir[)]/pkgconfig|(prefix)/libdata/pkgconfig|g ; \ + s|[(]datadir[)]/pkgconfig|(prefix)/libdata/pkgconfig|g ; \ + s|[(]prefix[)]/lib/pkgconfig|(prefix)/libdata/pkgconfig|g ; \ + s|[$$][(]localstatedir[)]/scrollkeeper|${SCROLLKEEPER_DIR}|g ; \ + s|[(]libdir[)]/bonobo/servers|(prefix)/libdata/bonobo/servers|g' ; \ + ${FIND} ${WRKSRC} -name "configure" -type f | ${XARGS} ${REINPLACE_CMD} -e \ + 's|DATADIRNAME=lib|DATADIRNAME=share|g ; \ + s|{libdir}/locale|{prefix}/share/locale|g' + +.endif Modified: head/Mk/bsd.port.mk ============================================================================== --- head/Mk/bsd.port.mk Wed Mar 6 14:03:24 2013 (r313516) +++ head/Mk/bsd.port.mk Wed Mar 6 14:28:57 2013 (r313517) @@ -1153,6 +1153,7 @@ DISTDIR?= ${PORTSDIR}/distfiles _DISTDIR?= ${DISTDIR}/${DIST_SUBDIR} INDEXDIR?= ${PORTSDIR} SRC_BASE?= /usr/src +USESDIR?= ${PORTSDIR}/Mk/Uses .include "${PORTSDIR}/Mk/bsd.commands.mk" @@ -1544,6 +1545,15 @@ check-makefile:: _POSTMKINCLUDED= yes +# Loading features +.for f in ${USES} +_f=${f:C/\:.*//g} +.if ${_f} != ${f} +${_f}_ARGS:= ${f:C/^[^\:]*\://g} +.endif +.include "${USESDIR}/${_f}.mk" +.endfor + WRKDIR?= ${WRKDIRPREFIX}${.CURDIR}/work .if !defined(IGNORE_MASTER_SITE_GITHUB) && defined(USE_GITHUB) WRKSRC?= ${WRKDIR}/${GH_ACCOUNT}-${GH_PROJECT}-${GH_COMMIT}