Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 May 2020 11:59:24 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        bob prohaska <fbsd@www.zefox.net>
Cc:        FreeBSD ports <freebsd-ports@freebsd.org>
Subject:   Re: Conflict on very first port (xorg) on rpi3
Message-ID:  <35F4EC61-AC55-4FA4-89D4-7742E449CC8A@yahoo.com>
In-Reply-To: <20200515180554.GD51382@www.zefox.net>
References:  <4961F458-26EF-447F-8033-B00FA720C58F.ref@yahoo.com> <4961F458-26EF-447F-8033-B00FA720C58F@yahoo.com> <20200515151922.GC51382@www.zefox.net> <20200515164921.6zyiorfgnqhf5nls@t480.local> <20200515180554.GD51382@www.zefox.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-May-15, at 11:05, bob prohaska <fbsd at www.zefox.net> wrote:

> On Fri, May 15, 2020 at 01:49:21PM -0300, Danilo G. Baio wrote:
>> On Fri, May 15, 2020 at 08:19:22AM -0700, bob prohaska wrote:
>>> On Fri, May 15, 2020 at 12:33:10AM -0700, Mark Millard via =
freebsd-ports wrote:
>>>>=20
>>>> Some building and isntalling had to occur prior to the
>>>> textproc/py-sphinx18 build attempt, possibly from
>>>> prior session(s) of building and installing.
>>>>=20
>>>>=20
>>>=20
>>> In this case x11/xorg was the first port attempted in a new
>>> ports tree. The only "prior sessions" would have been within
>>> the dependencies of x11/xorg. Is that resolvable by poudriere?
>>>=20
>>>> textproc/py-sphinx18 is new as of 2020-May-11.
>>>> The devel/llvm[16789]0 ports require textproc/py-sphinx18 .
>>>> Only about 26 ports require textproc/py-sphinx18 but
>>>> I'll not list the others.
>>>>=20
>>>> textproc/py-sphinx has been around longer and has
>>>> 142 ports that require it. I'll not list them.
>>>>=20
>>>>=20
>>>> textproc/py-sphinx18/Makefile lists:
>>>>=20
>>>> CONFLICTS_INSTALL=3D      py*-sphinx
>>>>=20
>>>> textproc/py-sphinx/Makefile lists:
>>>>=20
>>>> CONFLICTS_INSTALL=3D      py*-sphinx18
>>>>=20
>>>>=20
>>>> So, for example, indirectly the devel/llvm[16789]0
>>>> ports conflict with at least 142 other ports because
>>>> of the textproc/py-sphinx* difference in requirements.
>>>>=20
>>>>=20
>>>> The conflict is real and limits what combinations
>>>> of ports you may have installed at the same time.
>>>=20
>>> I'll try deinstalling the conflicting port and hope
>>> it won't be required later....
>>=20
>> It seems that just devel/llvm80 is pulling sphinx18 when building
>> x11/xorg.
>>=20
>> Try disabling DOCS option on devel/llvm80 for now.
>>=20
>> I've opened a PR to track this issue:
>> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D246487
>>=20
>=20
> Wish I'd known it was only the DOCS option! Too late now,
> sphinx18 is deinstalled and llvm80 is building.

What? llvm80 requires textproc/py-sphinx18 (when
the options cause such), not textproc/py-sphinx .
Deleting textproc/py-sphinx18 and building
devel/llvm80 will try to rebuild/install
textproc/py-sphinx18 unless the options are
set to avoid needing textproc/py-sphinx18 .

To build devel/llvm80 it would be
textproc/py-sphinx that would be deinstalled first
so that textproc/py-sphinx18 could be built and
installed during the build.

After devel/llvm80 is installed, textproc/py-sphinx18
would be uninstalled so that textproc/py-sphinx could
be built/installed when xorg is re-tried with llvm80
already installed.

> This is probably a dumb question, but is there some way
> to learn at the outset what conflicts need to be worked
> around? Something like a "make conflicts" target? Seemingly=20
> it could be done by hand, but that promises to be tedious.=20

Not that will tell you what combinations of
options lead to what combinations of required
build or run prerequisites: That could be
a lot of combinations to cover. It is also
dependent on poudriere-like-building vs. not
for build prerequisites having conflicts
involved or not.

If one is familiar enough to see potential
conflicts in lists of dependencies there are
the makefile targets:

     run-depends-list, build-depends-list
                          Print a list of all the compile and run
                          dependencies, and dependencies of those
                          dependencies, by port directory.

     all-depends-list     Print a list of all dependencies for the port.

     pretty-print-run-depends-list, pretty-print-build-depends-list
                          Print a list of all the compile and run
                          dependencies, and dependencies of those
                          dependencies, by port name and version.

(but no "all" variant for pretty-print-* ?).
What is listed would depend on the options
specified.

=3D=3D=3D
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?35F4EC61-AC55-4FA4-89D4-7742E449CC8A>