Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 9 Oct 2023 16:06:56 -0700
From:      Mark Millard <marklmi@yahoo.com>
To:        "vishwin@freebsd.org" <vishwin@FreeBSD.org>, FreeBSD Toolchain <freebsd-toolchain@freebsd.org>, FreeBSD Mailing List <freebsd-ports@freebsd.org>
Subject:   RE: lang/rust: resurrect PORT_LLVM as a non-default OPTION
Message-ID:  <3DDDE8A9-0DB8-4C6E-81B5-60A1E13CECCD@yahoo.com>
References:  <3DDDE8A9-0DB8-4C6E-81B5-60A1E13CECCD.ref@yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Charlie Li <vishwin@FreeBSD.org> wrote on 2023-10-09 15:30:33 +0000 :

> lang/rust: resurrect PORT_LLVM as a non-default OPTION
>=20
> Rust uses LLVM for code generation [0] and bundles their own copy of a =
release that they fully support in relation to the rest of rustc. This =
however adds to an already intensive build process. For the benefit of =
those building from source, resurrect the PORT_LLVM option, allowing to =
link with an existing devel/llvm port of the user's choosing within Rust =
compatibility ranges. This remains unset by default.

My understanding is that building a devel/llvm* these days requires
building rust first, via needing to build python things (for
documentation purposes?), that in turn need rust to have been built
first. Last I knew, trying to disable the llvm* DOCS option in a
normal way did not avoid the "needs rust" issue.

Absent use of a workaround to avoid this, it would seem to be
problematical to use PORT_LLVM for rust if the llvm* in question
would itself need to be built.

Note: I have used a /usr/local/etc/poudriere.d/make.conf
workaround for my port->package build activity:

.if ${.CURDIR:M*/devel/llvm*}
OPTIONS_UNSET=3DDOCS
.endif

It managed to avoid the python related dependencies that lead to
rust being needed by the llvm* build.

May be PORT_LLVM enablement should do such automatically? May be
a stronger form of guaranteed mutual exclusion between DOCS and
PORT_LLVM to avoid ever being allowed to form the cycle?

=3D=3D=3D
Mark Millard
marklmi at yahoo.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3DDDE8A9-0DB8-4C6E-81B5-60A1E13CECCD>