Bug 285691 - devel/rustup-init: limit build/support to amd64 platforms only
Summary: devel/rustup-init: limit build/support to amd64 platforms only
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-03-27 06:43 UTC by King John
Modified: 2025-04-11 11:06 UTC (History)
1 user (show)

See Also:
jinking.this: merge-quarterly?


Attachments
Fix i386 build (1.25 KB, patch)
2025-03-27 06:43 UTC, King John
jinking.this: maintainer-approval+
Details | Diff
limit supported platform, no i386 (1.23 KB, patch)
2025-03-30 10:54 UTC, King John
jinking.this: maintainer-approval+
Details | Diff
support amd64 only (1005 bytes, patch)
2025-04-03 01:32 UTC, King John
jinking.this: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description King John 2025-03-27 06:43:59 UTC
Created attachment 259076 [details]
Fix i386 build

Log URL:        https://pkg-status.freebsd.org/beefy21/data/141i386-default/41118d5f4586/logs/rustup-init-1.28.1.log
Build URL:      https://pkg-status.freebsd.org/beefy21/build.html?mastername=141i386-default&build=41118d5f4586

For now it supports Linux, Mac OS X, illumos, Solaris, FreeBSD, OpenBSD, and Windows.
' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE=MIT CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=sys-info CARGO_PKG_README=README.md CARGO_PKG_REPOSITORY='https://github.com/FillZpp/sys-info-rs' CARGO_PKG_RUST_VERSION='' CARGO_PKG_VERSION=0.9.1 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=9 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' DEBUG=false HOST=i686-unknown-freebsd LD_LIBRARY_PATH='/wrkdirs/usr/ports/devel/rustup-init/work/target/release/deps:/wrkdirs/usr/ports/devel/rustup-init/work/target/release:/usr/local/lib/rustlib/i686-unknown-freebsd/lib' NUM_JOBS=1 OPT_LEVEL=3 OUT_DIR=/wrkdirs/usr/ports/devel/rustup-init/work/target/release/build/sys-info-5414b6559453b93b/out PROFILE=release RUSTC=/usr/local/bin/rustc RUSTDOC=/usr/local/bin/rustdoc TARGET=i686-unknown-freebsd /wrkdirs/usr/ports/devel/rustup-init/work/target/release/build/sys-info-a4e225f1fdebe5ee/build-script-build`
[sys-info 0.9.1] cargo:rustc-flags=-l pthread
[sys-info 0.9.1] OUT_DIR = Some(/wrkdirs/usr/ports/devel/rustup-init/work/target/release/build/sys-info-5414b6559453b93b/out)
[sys-info 0.9.1] OPT_LEVEL = Some(3)
[sys-info 0.9.1] TARGET = Some(i686-unknown-freebsd)
[sys-info 0.9.1] HOST = Some(i686-unknown-freebsd)
[sys-info 0.9.1] cargo:rerun-if-env-changed=CC_i686-unknown-freebsd
[sys-info 0.9.1] CC_i686-unknown-freebsd = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=CC_i686_unknown_freebsd
[sys-info 0.9.1] CC_i686_unknown_freebsd = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=HOST_CC
[sys-info 0.9.1] HOST_CC = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=CC
[sys-info 0.9.1] CC = Some(/usr/local/llvm19/bin/clang)
[sys-info 0.9.1] RUSTC_WRAPPER = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=CC_ENABLE_DEBUG_OUTPUT
[sys-info 0.9.1] cargo:rerun-if-env-changed=CRATE_CC_NO_DEFAULTS
[sys-info 0.9.1] CRATE_CC_NO_DEFAULTS = None
[sys-info 0.9.1] DEBUG = Some(false)
[sys-info 0.9.1] cargo:rerun-if-env-changed=CFLAGS
[sys-info 0.9.1] CFLAGS = Some(-O2 -pipe  -fstack-protector-strong -fno-strict-aliasing )
[sys-info 0.9.1] cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
[sys-info 0.9.1] CC_SHELL_ESCAPED_FLAGS = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=HOST_CFLAGS
[sys-info 0.9.1] HOST_CFLAGS = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=CFLAGS_i686_unknown_freebsd
[sys-info 0.9.1] CFLAGS_i686_unknown_freebsd = None
[sys-info 0.9.1] cargo:rerun-if-env-changed=CFLAGS_i686-unknown-freebsd
[sys-info 0.9.1] CFLAGS_i686-unknown-freebsd = None
[sys-info 0.9.1] CARGO_ENCODED_RUSTFLAGS = Some(-Clink-arg=-fstack-protector-strong)
[sys-info 0.9.1] cargo:warning=c/freebsd.c:31:10: error: conflicting types for 'get_cpu_speed'
[sys-info 0.9.1] cargo:warning=   31 | uint64_t get_cpu_speed(void) {
[sys-info 0.9.1] cargo:warning=      |          ^
[sys-info 0.9.1] cargo:warning=c/info.h:31:15: note: previous declaration is here
[sys-info 0.9.1] cargo:warning=   31 | unsigned long get_cpu_speed(void);
[sys-info 0.9.1] cargo:warning=      |               ^
[sys-info 0.9.1] cargo:warning=c/freebsd.c:47:10: error: conflicting types for 'get_proc_total'
[sys-info 0.9.1] cargo:warning=   47 | uint64_t get_proc_total(void) {
[sys-info 0.9.1] cargo:warning=      |          ^
[sys-info 0.9.1] cargo:warning=c/info.h:34:15: note: previous declaration is here
[sys-info 0.9.1] cargo:warning=   34 | unsigned long get_proc_total(void);
[sys-info 0.9.1] cargo:warning=      |               ^
[sys-info 0.9.1] cargo:warning=2 errors generated.
[sys-info 0.9.1] 
[sys-info 0.9.1] 
[sys-info 0.9.1] error occurred in cc-rs: command did not execute successfully (status code exit status: 1): LC_ALL="C" "/usr/local/llvm19/bin/clang" "-O3" "-ffunction-sections" "-fdata-sections" "-fPIC" "-m32" "--target=i686-unknown-freebsd" "-O2" "-pipe" "-fstack-protector-strong" "-fno-strict-aliasing" "-o" "/wrkdirs/usr/ports/devel/rustup-init/work/target/release/build/sys-info-5414b6559453b93b/out/a1edd97dd51cd48d-freebsd.o" "-c" "c/freebsd.c"
[sys-info 0.9.1] 
[sys-info 0.9.1] 
warning: sys-info@0.9.1: c/freebsd.c:31:10: error: conflicting types for 'get_cpu_speed'
warning: sys-info@0.9.1:    31 | uint64_t get_cpu_speed(void) {
warning: sys-info@0.9.1:       |          ^
warning: sys-info@0.9.1: c/info.h:31:15: note: previous declaration is here
warning: sys-info@0.9.1:    31 | unsigned long get_cpu_speed(void);
warning: sys-info@0.9.1:       |               ^
warning: sys-info@0.9.1: c/freebsd.c:47:10: error: conflicting types for 'get_proc_total'
warning: sys-info@0.9.1:    47 | uint64_t get_proc_total(void) {
warning: sys-info@0.9.1:       |          ^
warning: sys-info@0.9.1: c/info.h:34:15: note: previous declaration is here
warning: sys-info@0.9.1:    34 | unsigned long get_proc_total(void);
warning: sys-info@0.9.1:       |               ^
warning: sys-info@0.9.1: 2 errors generated.
error: failed to run custom build command for `sys-info v0.9.1`


Reference: 
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=267290
Comment 1 Mikael Urankar freebsd_committer freebsd_triage 2025-03-28 09:05:40 UTC
is it of any use keeping rustup-init on non amd64 target? Upstream doesn't provide binary for aarch64 or i386:

error: target 'aarch64-unknown-freebsd' not found in channel.  Perhaps check https://doc.rust-lang.org/nightly/rustc/platform-support.html for available targets
Comment 2 King John 2025-03-30 10:54:19 UTC
Created attachment 259182 [details]
limit supported platform, no i386

Limit supported platforms to amd64,aarch64,armv6,armv7,powerpc64,powerpc64le.
Comment 3 King John 2025-04-02 01:33:56 UTC
(In reply to Mikael Urankar from comment #1)
Updated, PTAL.
Comment 4 Mikael Urankar freebsd_committer freebsd_triage 2025-04-02 10:02:42 UTC
(In reply to King John from comment #3)
How I am supposed to use rustup on aarch64? upstream doesn't provide binary for !amd64 arch
Comment 5 King John 2025-04-02 12:56:48 UTC
(In reply to Mikael Urankar from comment #4)
Rustup-init is actually compiled from rustc which requires rust build environment, no binary downloaded.
Comment 6 King John 2025-04-02 14:37:51 UTC
(In reply to Mikael Urankar from comment #4)
After some checking, now I get you. So this port should be amd64 only.So far I only have amd64 host environment.I will update the patch.

$ rustup target list |grep freebsd
i686-unknown-freebsd
x86_64-unknown-freebsd
Comment 7 King John 2025-04-03 01:32:50 UTC
Created attachment 259286 [details]
support amd64 only
Comment 8 commit-hook freebsd_committer freebsd_triage 2025-04-04 11:55:31 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=819af278a33e57a0bedf7332332f9197803ea508

commit 819af278a33e57a0bedf7332332f9197803ea508
Author:     King John <jinking.this@gmail.com>
AuthorDate: 2025-04-03 01:31:13 +0000
Commit:     Mikael Urankar <mikael@FreeBSD.org>
CommitDate: 2025-04-04 11:53:28 +0000

    devel/rustup-init: limit support/build to amd64 only

    PR:             285691

 devel/rustup-init/Makefile | 1 +
 1 file changed, 1 insertion(+)
Comment 9 commit-hook freebsd_committer freebsd_triage 2025-04-11 11:06:42 UTC
A commit in branch 2025Q2 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=b18e791350af833d19ac1f3295fee416a7f23029

commit b18e791350af833d19ac1f3295fee416a7f23029
Author:     King John <jinking.this@gmail.com>
AuthorDate: 2025-04-03 01:31:13 +0000
Commit:     Mikael Urankar <mikael@FreeBSD.org>
CommitDate: 2025-04-11 11:06:16 +0000

    devel/rustup-init: limit support/build to amd64 only

    PR:             285691
    (cherry picked from commit 819af278a33e57a0bedf7332332f9197803ea508)

 devel/rustup-init/Makefile | 1 +
 1 file changed, 1 insertion(+)