aboutsummaryrefslogtreecommitdiffstats
path: root/lang/rust
diff options
context:
space:
mode:
authordumbbell <dumbbell@FreeBSD.org>2017-11-28 02:16:15 +0800
committerdumbbell <dumbbell@FreeBSD.org>2017-11-28 02:16:15 +0800
commit58330c9e991510b1fd2edc4f56e197b990b9f514 (patch)
tree7e1ff12f969eb9797adc7a6e227f83affc495721 /lang/rust
parentf37069f2928776927e5a6624976c87700b4fd80d (diff)
downloadfreebsd-ports-gnome-58330c9e991510b1fd2edc4f56e197b990b9f514.tar.gz
freebsd-ports-gnome-58330c9e991510b1fd2edc4f56e197b990b9f514.tar.zst
freebsd-ports-gnome-58330c9e991510b1fd2edc4f56e197b990b9f514.zip
lang/rust: Remove the LLVM_PORT option
FTR, this option allowed to used LLVM from ports instead of building the bundled copy. The problem is that this combination isn't really tested upstream. This led to regressions which are difficult to diagnose. For instance, in Rust 1.21.0, the bundled LLVM provided a new API to query the features supported by the target arch. The equivalent code inside Rust was removed to use that new API. Unfortunately, building Rust 1.21.0+ with a copy of LLVM not providing this API didn't failed but instead made that list of CPU features empty. This resulted in the following obscure build failure in Firefox: error[E0432]: unresolved import `x86::sse2` To avoid future pain for both end users and maintainers, we decided to remove that option. Yes, it will increase the (already long) time to build Rust, but it should save time wasted on debugging what is not really supported anyway. PR: 223342, 223300 Reported by: Many users
Diffstat (limited to 'lang/rust')
-rw-r--r--lang/rust/Makefile14
-rw-r--r--lang/rust/files/config.toml1
2 files changed, 1 insertions, 14 deletions
diff --git a/lang/rust/Makefile b/lang/rust/Makefile
index f2f108fb5fcb..82120402d5ae 100644
--- a/lang/rust/Makefile
+++ b/lang/rust/Makefile
@@ -63,7 +63,7 @@ PLIST_SUB+= RUST_TARGET=${RUST_TARGET}
USES= compiler gmake libedit pkgconfig python:2.7,build ssl
-OPTIONS_DEFINE= DOCS GDB LLNEXTGEN PORT_LLVM SOURCES
+OPTIONS_DEFINE= DOCS GDB LLNEXTGEN SOURCES
GDB_DESC= Install ports gdb (necessary for debugging rust programs)
LLNEXTGEN_DESC= Build with grammar verification
SOURCES_DESC= Install source files
@@ -71,12 +71,6 @@ SOURCES_DESC= Install source files
GDB_RUN_DEPENDS= ${LOCALBASE}/bin/gdb:devel/gdb
LLNEXTGEN_BUILD_DEPENDS= LLnextgen:devel/llnextgen
-# Rust may pass more regression tests with bundled LLVM
-PORT_LLVM_DESC= Build against devel/llvm${LLVM_VER} instead of bundled version
-PORT_LLVM_BUILD_DEPENDS= ${LOCALBASE}/bin/FileCheck${LLVM_VER}:devel/llvm${LLVM_VER}
-LLVM_VER?= 40
-LLVM_CONFIG= ${LOCALBASE}/bin/llvm-config${LLVM_VER}
-
# Rust manifests list all files and directories installed by rust-installer.
# We use them in:
# - pre-install to cleanup the ${STAGEDIR}
@@ -237,12 +231,6 @@ post-configure-DOCS-on:
post-configure-DOCS-off:
${REINPLACE_CMD} -e 's,%DOCS%,false,' ${WRKSRC}/config.toml
-post-configure-PORT_LLVM-on:
- ${REINPLACE_CMD} -e 's,%LLVM_CONFIG%,${LLVM_CONFIG},' ${WRKSRC}/config.toml
-
-post-configure-PORT_LLVM-off:
- ${REINPLACE_CMD} -e '/%LLVM_CONFIG%/d' ${WRKSRC}/config.toml
-
do-build:
cd ${WRKSRC} && \
${SETENV} ${X_PY_ENV} \
diff --git a/lang/rust/files/config.toml b/lang/rust/files/config.toml
index 65e957484950..e4ffeebadf32 100644
--- a/lang/rust/files/config.toml
+++ b/lang/rust/files/config.toml
@@ -25,7 +25,6 @@ mandir = "%MANDIR%"
channel = "%CHANNEL%"
[target.%TARGET%]
-llvm-config = "%LLVM_CONFIG%"
[dist]