Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 01 Oct 2014 16:51:34 +0200
From:      Guido Falsi <madpilot@FreeBSD.org>
To:        Will Andrews <will@FreeBSD.org>, src-committers@freebsd.org,  svn-src-all@freebsd.org, svn-src-head@freebsd.org
Cc:        Baptiste Daroussin <bapt@FreeBSD.org>
Subject:   Re: svn commit: r272282 - head/share/mk
Message-ID:  <542C14F6.7020506@FreeBSD.org>
In-Reply-To: <201409291505.s8TF5Nhh066884@svn.freebsd.org>
References:  <201409291505.s8TF5Nhh066884@svn.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 09/29/14 17:05, Will Andrews wrote:
> Author: will
> Date: Mon Sep 29 15:05:23 2014
> New Revision: 272282
> URL: http://svnweb.freebsd.org/changeset/base/272282
> 
> Log:
>   Search for the nearest PORTSDIR where Mk/bsd.ports.mk exists, from .CURDIR.
>   This will only take effect if PORTSDIR is not set, as previously supported.
>   
>   Use .if exists(), for four specific possibilities relative to .CURDIR:
>   ., .., ../.., and ../../..  The fourth possibility is primarily in case
>   ports ever grows a third level.  If none of these paths exist, fall back to
>   the old default of /usr/ports.
>   
>   This removes the need to set PORTSDIR explicitly (or via wrapper script) if
>   one is running out of a ports tree that is not in /usr/ports, but in a
>   home directory.
>   
>   Reviewed by:	bapt, bdrewery (older version)
>   CR:		D799
>   MFC after:	1 week
>   Sponsored by:	Spectra Logic
> 

Hi,

I just refreshed my machines head r272349 and this change is creating
problems to me.

Maybe I've always been doing something wrong but this is what is happening:

root@marvin:~ [0]# cd /usr/ports/x11/nvidia-driver
root@marvin:/usr/ports/x11/nvidia-driver [0]# make -V PORTSDIR
/usr/ports/x11/nvidia-driver/../..

this is problematic since now all dependencies are relative paths, this
is said to be unsupported in bsd.sanity.mk, line 35 and following ones.

It also makes poudriere builds fail:

root@marvin:~ [0]# poudriere bulk -C -p mptest -t -j 11amd64 x11/xlogo
====>> Creating the reference jail... done
====>> Mounting system devices for 11amd64-mptest
====>> Mounting ports/packages/distfiles
====>> Mounting packages from: /poudriere/data/packages/11amd64-mptest
====>> Logs: /poudriere/data/logs/bulk/11amd64-mptest/2014-10-01_16h44m56s
====>> WWW:
http://pkg.madpilot.net:8888/logs/bulk/11amd64-mptest/2014-10-01_16h44m56s
====>> Appending to make.conf: /usr/local/etc/poudriere.d/make.conf
====>> DEVELOPER=yes ignored from make.conf. Use 'bulk -t' or 'testport'
for testing instead.
/etc/resolv.conf -> /poudriere/data/build/11amd64-mptest/ref/etc/resolv.conf
====>> Starting jail 11amd64-mptest
====>> Loading MOVED
====>> Calculating ports order and dependencies
====>> Error: Duplicated origin for pkgconf-0.9.7:
devel/xorg-macros/../../devel/pkgconf AND x11/xlogo/../../devel/pkgconf.
Rerun with -vv to see which ports are depending on these.
====>> Cleaning up
====>> Umounting file systems

(the ports nvidia-driver and xlogo in these small logs are taken at random)

It also completely breaks portmaster.

Maybe this patch is excessive and should first try to discover if we
already are in the standard /usr/ports subtree?

I have not tried but I'm quite confident I can :fix: this by adding
PORTSTREE=/usr/ports in /etc/make.conf, but this does not look like a
good solution.

-- 
Guido Falsi <madpilot@FreeBSD.org>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?542C14F6.7020506>