Index: Makefile =================================================================== --- Makefile (revision 550754) +++ Makefile (working copy) @@ -25,7 +25,9 @@ LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT IGNORE_FreeBSD_11_powerpc64= is missing a bootstrap for FreeBSD 11.x powerpc64 -ONLY_FOR_ARCHS?= aarch64 amd64 armv6 armv7 i386 powerpc64 +IGNORE_FreeBSD_11_powerpc64le= is nonsensical due to platform nonexistence + +ONLY_FOR_ARCHS?= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le ONLY_FOR_ARCHS_REASON?= requires prebuilt bootstrap compiler BUILD_DEPENDS= cmake:devel/cmake \ @@ -67,6 +69,9 @@ RUST_BOOTSTRAP_VERSION?= 1.45.2 CARGO_BOOTSTRAP_VERSION?= 0.46.1 +RUST_BOOTSTRAP_VERSION_powerpc64le?= 1.48.0-dev +CARGO_BOOTSTRAP_VERSION_powerpc64le?= 0.49.0-dev + BOOTSTRAPS_SUFFIX?= ${BOOTSTRAPS_SUFFIX_${ARCH}} BOOTSTRAPS_SUFFIX_powerpc64?= -${PPC_ABI:tl} Index: distinfo =================================================================== --- distinfo (revision 550754) +++ distinfo (working copy) @@ -43,3 +43,10 @@ SIZE (rust/2020-08-03/rust-std-1.45.2-powerpc64-unknown-freebsd-elfv2.tar.xz) = 12223976 SHA256 (rust/2020-08-03/cargo-0.46.1-powerpc64-unknown-freebsd-elfv2.tar.xz) = afb179eb04eb06f946f875aa243c2f3723ea5bc8a7cd2a027cc33ea97808d87f SIZE (rust/2020-08-03/cargo-0.46.1-powerpc64-unknown-freebsd-elfv2.tar.xz) = 4213368 +SHA256 (rust/2020-08-03/cargo-0.49.0-dev-powerpc64le-unknown-freebsd.tar.xz) = e37b7553bcccffa29ad5a0d45bbb0086c903c6257a0f67a70d54670bf2f13383 +SIZE (rust/2020-08-03/cargo-0.49.0-dev-powerpc64le-unknown-freebsd.tar.xz) = 4639596 +SHA256 (rust/2020-08-03/rust-std-1.48.0-dev-powerpc64le-unknown-freebsd.tar.xz) = 360295965e03cdb77d574e2189182547972734c1a82a084d6c35cf3ca1679a53 +SIZE (rust/2020-08-03/rust-std-1.48.0-dev-powerpc64le-unknown-freebsd.tar.xz) = 16753720 +SHA256 (rust/2020-08-03/rustc-1.48.0-dev-powerpc64le-unknown-freebsd.tar.xz) = fab1ace3060535ad4dad39c5c436b3be62e18b26f29af2daa831f753106b722e +SIZE (rust/2020-08-03/rustc-1.48.0-dev-powerpc64le-unknown-freebsd.tar.xz) = 554408240 + Index: files/powerpc64le/patch-src_librustc__target_spec_mod.rs =================================================================== --- files/powerpc64le/patch-src_librustc__target_spec_mod.rs (nonexistent) +++ files/powerpc64le/patch-src_librustc__target_spec_mod.rs (working copy) @@ -0,0 +1,10 @@ +--- src/librustc_target/spec/mod.rs.orig 2020-09-30 18:06:16.613040000 -0500 ++++ src/librustc_target/spec/mod.rs 2020-09-30 18:06:47.040460000 -0500 +@@ -553,6 +553,7 @@ supported_targets! { + ("armv7-unknown-freebsd", armv7_unknown_freebsd), + ("i686-unknown-freebsd", i686_unknown_freebsd), + ("powerpc64-unknown-freebsd", powerpc64_unknown_freebsd), ++ ("powerpc64le-unknown-freebsd", powerpc64le_unknown_freebsd), + ("x86_64-unknown-freebsd", x86_64_unknown_freebsd), + + ("x86_64-unknown-dragonfly", x86_64_unknown_dragonfly), Property changes on: files/powerpc64le/patch-src_librustc__target_spec_mod.rs ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: files/powerpc64le/patch-src_librustc__target_spec_powerpc64le__unknown__freebsd.rs =================================================================== --- files/powerpc64le/patch-src_librustc__target_spec_powerpc64le__unknown__freebsd.rs (nonexistent) +++ files/powerpc64le/patch-src_librustc__target_spec_powerpc64le__unknown__freebsd.rs (working copy) @@ -0,0 +1,25 @@ +--- /dev/null 2020-09-30 18:09:21.093949000 -0500 ++++ src/librustc_target/spec/powerpc64le_unknown_freebsd.rs 2020-09-30 18:08:47.737833000 -0500 +@@ -0,0 +1,22 @@ ++use crate::spec::{LinkerFlavor, Target, TargetOptions, TargetResult}; ++ ++pub fn target() -> TargetResult { ++ let mut base = super::freebsd_base::opts(); ++ base.cpu = "ppc64le".to_string(); ++ base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-m64".to_string()); ++ base.max_atomic_width = Some(64); ++ ++ Ok(Target { ++ llvm_target: "powerpc64le-unknown-freebsd".to_string(), ++ target_endian: "little".to_string(), ++ target_pointer_width: "64".to_string(), ++ target_c_int_width: "32".to_string(), ++ data_layout: "e-m:e-i64:64-n32:64".to_string(), ++ arch: "powerpc64".to_string(), ++ target_os: "freebsd".to_string(), ++ target_env: String::new(), ++ target_vendor: "unknown".to_string(), ++ linker_flavor: LinkerFlavor::Gcc, ++ options: TargetOptions { target_mcount: "_mcount".to_string(), ..base }, ++ }) ++} Property changes on: files/powerpc64le/patch-src_librustc__target_spec_powerpc64le__unknown__freebsd.rs ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: files/powerpc64le/patch-src_llvm-project_clang_lib_Basic_Targets.cpp =================================================================== --- files/powerpc64le/patch-src_llvm-project_clang_lib_Basic_Targets.cpp (nonexistent) +++ files/powerpc64le/patch-src_llvm-project_clang_lib_Basic_Targets.cpp (working copy) @@ -0,0 +1,11 @@ +--- src/llvm-project/clang/lib/Basic/Targets.cpp.orig 2020-07-07 01:39:17.000000000 -0500 ++++ src/llvm-project/clang/lib/Basic/Targets.cpp 2020-09-30 18:13:54.521751000 -0500 +@@ -352,6 +352,8 @@ TargetInfo *AllocateTarget(const llvm::Triple &Triple, + switch (os) { + case llvm::Triple::Linux: + return new LinuxTargetInfo(Triple, Opts); ++ case llvm::Triple::FreeBSD: ++ return new FreeBSDTargetInfo(Triple, Opts); + case llvm::Triple::NetBSD: + return new NetBSDTargetInfo(Triple, Opts); + default: Property changes on: files/powerpc64le/patch-src_llvm-project_clang_lib_Basic_Targets.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: files/powerpc64le/patch-vendor_openssl-src_src_lib.rs =================================================================== --- files/powerpc64le/patch-vendor_openssl-src_src_lib.rs (nonexistent) +++ files/powerpc64le/patch-vendor_openssl-src_src_lib.rs (working copy) @@ -0,0 +1,10 @@ +--- vendor/openssl-src/src/lib.rs.orig 2020-09-30 18:01:13.855023000 -0500 ++++ vendor/openssl-src/src/lib.rs 2020-09-30 18:02:06.365292000 -0500 +@@ -173,6 +173,7 @@ impl Build { + "powerpc-unknown-linux-gnu" => "linux-ppc", + "powerpc64-unknown-freebsd" => "BSD-generic64", + "powerpc64-unknown-linux-gnu" => "linux-ppc64", ++ "powerpc64le-unknown-freebsd" => "BSD-generic64", + "powerpc64le-unknown-linux-gnu" => "linux-ppc64le", + "riscv64gc-unknown-linux-gnu" => "linux-generic64", + "s390x-unknown-linux-gnu" => "linux64-s390x", Property changes on: files/powerpc64le/patch-vendor_openssl-src_src_lib.rs ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property