From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 12 Sep 2017 16:51:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: 28433@debbugs.gnu.org X-Debbugs-Original-To: Received: via spool by submit@debbugs.gnu.org id=B.150523504820930 (code B ref -1); Tue, 12 Sep 2017 16:51:01 +0000 Received: (at submit) by debbugs.gnu.org; 12 Sep 2017 16:50:48 +0000 Received: from localhost ([127.0.0.1]:36201 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1droOb-0005RS-6o for submit@debbugs.gnu.org; Tue, 12 Sep 2017 12:50:48 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42060) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1droOZ-0005Qv-6D for submit@debbugs.gnu.org; Tue, 12 Sep 2017 12:50:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1droOS-00076j-Hd for submit@debbugs.gnu.org; Tue, 12 Sep 2017 12:50:37 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:45384) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1droOS-00076e-D0 for submit@debbugs.gnu.org; Tue, 12 Sep 2017 12:50:36 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33016) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1droOQ-0001Xn-Ix for guix-patches@gnu.org; Tue, 12 Sep 2017 12:50:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1droON-00075c-7O for guix-patches@gnu.org; Tue, 12 Sep 2017 12:50:34 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:51140) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1droOM-00074p-TM for guix-patches@gnu.org; Tue, 12 Sep 2017 12:50:31 -0400 Received: from localhost (77.118.195.213.wireless.dyn.drei.com [77.118.195.213]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 602641CA00D7 for ; Tue, 12 Sep 2017 18:50:27 +0200 (CEST) Date: Tue, 12 Sep 2017 18:50:23 +0200 From: Danny Milosavljevic Message-ID: <20170912185023.7de883ff@scratchpost.org> X-Mailer: Claws Mail 3.15.0-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) I'm trying to update our Rust. I've got it to work further than the text "package bootstrap" once, but I can't find how I did it anymore. See below. Help? diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 652686e06..a0d4554d6 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -25,6 +25,7 @@ #:use-module (gnu packages bootstrap) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) + #:use-module (gnu packages cross-base) #:use-module (gnu packages curl) #:use-module (gnu packages elf) #:use-module (gnu packages flex) @@ -47,7 +48,7 @@ #:use-module (srfi srfi-26)) ;; Should be one less than the current released version. -(define %rust-bootstrap-binaries-version "1.15.0") +(define %rust-bootstrap-binaries-version "1.17.0") (define %rust-bootstrap-binaries (origin @@ -58,7 +59,7 @@ "-i686-unknown-linux-gnu.tar.gz")) (sha256 (base32 - "0wmkfx8pxmkkw021mrq9s3xhra8f0daqdl6j56pxyn4w39i0rzrw")))) + "1svbg96gjkfk40hgyhgkm5mqxlx24943xf1423p3gfhqyvh6rl9r")))) (define (increment-rust-version rust-version major patch) (match (string-split rust-version #\.) @@ -208,7 +209,7 @@ rustc-bootstrap and cargo-bootstrap packages.") "rustc-" version "-src.tar.gz")) (sha256 (base32 - "1d78jq7mc34n265by68amr9r4nzbiqrilfbwh7gx56ydn4gb6rpr")) + "04b1qd4zy9x0hax0rxzd0gg6nki37kjdvk9bid46j8lykglkdp6j")) (modules '((guix build utils))) (snippet `(begin @@ -222,16 +223,26 @@ rustc-bootstrap and cargo-bootstrap packages.") ("git" ,git) ("procps" ,procps) ; For the tests ("python-2" ,python-2) + ("cargo-bootstrap" ,cargo-bootstrap) ("rust-bootstrap" ,rust-bootstrap) - ("which" ,which))) + ("which" ,which) + ("strace" ,strace) + ("cross-gcc" ,(cross-gcc "i686-linux-gnu" + #:xbinutils (cross-binutils "i686-linux-gnu") + #:libc (cross-libc "i686-linux-gnu"))) + ("cross-libc" ,(cross-libc "i686-linux-gnu")))) (inputs `(("jemalloc" ,jemalloc) ("llvm" ,llvm-3.9.1))) (arguments `(#:phases (modify-phases %standard-phases + ;; Avoid cargo complaining about mismatched checksums. + (delete 'patch-source-shebangs) + (delete 'patch-generated-file-shebangs) + (delete 'patch-usr-bin-file) (add-after 'unpack 'patch-configure - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) (substitute* "configure" (("/usr/bin/env") (which "env")) ; Detect target CPU correctly. (("probe_need CFG_CURL curl") "") ; Avoid curl build dependency. @@ -247,14 +258,46 @@ rustc-bootstrap and cargo-bootstrap packages.") (substitute* "src/tools/compiletest/src/util.rs" (("(\"amd64\", \"x86_64\"),") "(\"amd64\", \"x86_64\"), (\"nvptx\", \"nvptx\"),")) ; Make LLVM >= 3.8.1 work. - (substitute* "mk/main.mk" - (("LLVM_OPTIONAL_COMPONENTS=") - "LLVM_OPTIONAL_COMPONENTS=nvptx ")) ; Make LLVM >= 3.8.1 work. + ;(system* "mv" "src/bootstrap/config.toml.example" + ; "src/bootstrap/config.toml") + (mkdir-p "src/bootstrap/.cargo") + (call-with-output-file "src/bootstrap/.cargo/config" + (lambda (p) + (format p " +[source.crates-io] +registry = 'https://github.com/rust-lang/crates.io-index' +replace-with = 'vendored-sources' + +[source.vendored-sources] +directory = 'src/vendor' + +[target.i686-linux-gnu] +linker = \"~a/bin/i686-linux-gnu-gcc\" + +" (assoc-ref inputs "cross-gcc")))) + #t)) (add-after 'unpack 'set-env (lambda _ + (define (cross? x) + (string-contains x "cross-")) (setenv "SHELL" (which "sh")) (setenv "CONFIG_SHELL" (which "sh")) + (setenv "VERBOSE" "1") + (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) + (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH")) + (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH")) + (for-each + (lambda (env-name) + (let* ((env-value (getenv env-name)) + (search-path (search-path-as-string->list env-value)) + (new-search-path (filter (lambda (e) (not (cross? e))) + search-path)) + (new-env-value (list->search-path-as-string + new-search-path ":"))) + (setenv env-name new-env-value))) + '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH")) + #t)) (add-after 'unpack 'patch-tests (lambda* (#:key inputs #:allow-other-keys) @@ -284,6 +327,7 @@ fn test_process_mask")) (rustc (assoc-ref inputs "rustc-bootstrap")) (llvm (assoc-ref inputs "llvm")) (jemalloc (assoc-ref inputs "jemalloc")) + ;; TODO make bootstrapper use i686 libraries! (-lutil, -ldl, ...). (flags (list (string-append "--prefix=" out) (string-append "--datadir=" out "/share") @@ -291,16 +335,43 @@ fn test_process_mask")) (string-append "--default-linker=" gcc "/bin/gcc") (string-append "--default-ar=" binutils "/bin/ar") (string-append "--python=" python "/bin/python2") + ; FIXME /gnu/store/6rri0kxb9q1gz6lv1dgdwjh41aa9ijdl-rustc-bootstrap-1.17.0/bin/cargo is wrong. (string-append "--local-rust-root=" rustc) (string-append "--llvm-root=" llvm) (string-append "--jemalloc-root=" jemalloc "/lib") "--release-channel=stable" "--enable-rpath" "--enable-local-rust" - "--disable-rustbuild" ; rustbuild doesn't work yet. "--disable-manage-submodules"))) + (mkdir "Xcargo") + (call-with-output-file "Xcargo/config" + (lambda (p) + (format p " +[source.crates-io] +registry = 'https://github.com/rust-lang/crates.io-index' +replace-with = 'vendored-sources' + +[source.vendored-sources] +directory = 'src/vendor' + +[target.i686-linux-gnu] +linker = \"~a/bin/i686-linux-gnu-gcc\" + +" (assoc-ref inputs "cross-gcc")))) + (setenv "CARGO_HOME" (string-append (getcwd) "/Xcargo")) + (substitute* "src/bootstrap/bootstrap.py" + (("/etc/NIXOS") + (getcwd)) + (("config [+] '/bin/cargo'") + (string-append "'" (assoc-ref inputs "cargo-bootstrap") + "/bin/cargo'")) + (("cargo[(][)], \"build\"") "cargo(), \"build\", \"--verbose\"")) ;; Rust uses a custom configure script (no autoconf). - (zero? (apply system* "./configure" flags))))) + (let ((status (zero? (apply system* (which "sh") "./configure" flags)))) + (substitute* "Makefile" + (("[$][(]Q[)][$][(]BOOTSTRAP[)] build [$][(]BOOTSTRAP_ARGS[)]") + "$(Q)$(BOOTSTRAP) build $(BOOTSTRAP_ARGS)")) + status)))) (add-after 'install 'wrap-rustc (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Ricardo Wurmus Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 25 Oct 2017 14:21:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: To: Danny Milosavljevic Cc: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150894122130064 (code B ref 28433); Wed, 25 Oct 2017 14:21:01 +0000 Received: (at 28433) by debbugs.gnu.org; 25 Oct 2017 14:20:21 +0000 Received: from localhost ([127.0.0.1]:33408 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7MXc-0007oq-RP for submit@debbugs.gnu.org; Wed, 25 Oct 2017 10:20:20 -0400 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21014) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7MXa-0007oe-QX for 28433@debbugs.gnu.org; Wed, 25 Oct 2017 10:20:19 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1508941188; s=zoho; d=elephly.net; i=rekado@elephly.net; h=References:From:To:Cc:Subject:In-reply-to:Date:MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID; l=395; bh=rmj7rc498LopMhos1ABPH+CMD9prES2yOf6s57deiww=; b=iIskK8KnWgJlmLmBy7VFNv6Pj0kUY4A0TTQC+oDUMz9BgAD10yIitduUYALuUzVm 41JUQjVifwYZwFbQ6TOanZbFn5q67kuEbPvbotia0uYDQ2gIyvuGksNitke/8y+LHvs nR3mtzSw87EQcyoTcE7wkzMRIwB9iZy3VyXhZtiU= Received: from localhost (141.80.247.119 [141.80.247.119]) by mx.zohomail.com with SMTPS id 1508941187981871.3980833245731; Wed, 25 Oct 2017 07:19:47 -0700 (PDT) References: <20170912185023.7de883ff@scratchpost.org> User-agent: mu4e 0.9.18; emacs 25.3.1 From: Ricardo Wurmus In-reply-to: <20170912185023.7de883ff@scratchpost.org> X-URL: https://elephly.net X-PGP-Key: https://elephly.net/rekado.pubkey X-PGP-Fingerprint: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC Date: Wed, 25 Oct 2017 16:19:45 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Message-ID: <873767cnsu.fsf@elephly.net> X-ZohoMailClient: External X-Spam-Score: -2.8 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.8 (--) Danny Milosavljevic writes: > I'm trying to update our Rust. I've got it to work further than the > text "package bootstrap" once, but I can't find how I did it anymore. > See below. > > Help? Could you tell us what you=E2=80=99ve tried and what the error means? -- Ricardo GPG: BCA6 89B6 3655 3801 C3C6 2150 197A 5888 235F ACAC https://elephly.net From debbugs-submit-bounces@debbugs.gnu.org Wed Oct 25 10:35:34 2017 Received: (at control) by debbugs.gnu.org; 25 Oct 2017 14:35:34 +0000 Received: from localhost ([127.0.0.1]:33432 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7MmL-0008Gk-TO for submit@debbugs.gnu.org; Wed, 25 Oct 2017 10:35:34 -0400 Received: from sender-of-o51.zoho.com ([135.84.80.216]:21129) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7MmJ-0008Gb-LJ for control@debbugs.gnu.org; Wed, 25 Oct 2017 10:35:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1508941197; s=zoho; d=elephly.net; i=rekado@elephly.net; h=Date:To:From:Subject; l=21; bh=9rAaDJ88aoAsvLOd6odxB77B6WYmHnEtiL4+Bk/DBZ8=; b=dpKoK1LILn6ZoL+pHbDwCPLYfSdzwQJTxuC+OjAjSWC/Ht9kL93a7t3MJ8EmSiDG IxVmn6NyQ2w2iTgjIPQTBnA8xM1QvL/Ojw6VHr8I0L7xwdPAIFPAOqdSjDfnmgnI6wN uoE0yT9nnMJKakHGUzBgKM4IyKLfKdoihAMWfwsk= Received: from localhost (141.80.247.119 [141.80.247.119]) by mx.zohomail.com with SMTPS id 1508941197730597.2707917213455; Wed, 25 Oct 2017 07:19:57 -0700 (PDT) Date: Wed, 25 Oct 2017 16:19:55 +0200 To: control@debbugs.gnu.org From: Ricardo Wurmus Subject: control message for bug #28433 X-ZohoMailClient: External X-Spam-Score: -2.7 (--) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" Message-Id: X-Spam-Score: -2.8 (--) tags 28433 moreinfo From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 26 Oct 2017 08:18:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Ricardo Wurmus Cc: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150900587424741 (code B ref 28433); Thu, 26 Oct 2017 08:18:01 +0000 Received: (at 28433) by debbugs.gnu.org; 26 Oct 2017 08:17:54 +0000 Received: from localhost ([127.0.0.1]:33975 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7dMI-0006Ql-6Y for submit@debbugs.gnu.org; Thu, 26 Oct 2017 04:17:54 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:46286) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e7dMF-0006Qb-8c for 28433@debbugs.gnu.org; Thu, 26 Oct 2017 04:17:44 -0400 Received: from localhost (77.118.194.142.wireless.dyn.drei.com [77.118.194.142]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 663A91CA0027; Thu, 26 Oct 2017 10:17:39 +0200 (CEST) Date: Thu, 26 Oct 2017 10:17:28 +0200 From: Danny Milosavljevic Message-ID: <20171026101728.6493ef46@scratchpost.org> In-Reply-To: <873767cnsu.fsf@elephly.net> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) Hi, Rust as I posted it fails with the text below. It tries to compile and link rustc via bootstrap rustc and gcc, via a i686 compiler (also on x86_64). What the error message means is that it is only picking up the x86_64 glibc - and not the i686 glibc - even though the "cc" command line contains "-m32". I've even added a custom linker command to the rust config (also in the patch) but that doesn't help either - apparently that setting is not even picked up. Maybe that's the reason... Rust has support for Nix somewhat, and I've enabled it in the bootstrapper. I've also added cross-libc for i686 and fixed up environment variables (in a hacky way - maybe that's the reason). So I guess my actual question is how to do this cross compilation correctly. Note that the rust bootstrap compiler are binaries from upstream. (There's a project "mrust" that is a reimplementation of Rust in C++ that we could use in the long term in order to remove this binary) ---------------------------------------------------------- Running `/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/bin/rustc --crate-name rustdoc src/bootstrap/bin/rustdoc.rs --crate-type bin --emit=dep-info,link -C debug-assertions=off -C metadata=83218ce7652a40a2 -C extra-filename=-83218ce7652a40a2 --out-dir /tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps -L depe ndency=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps --extern rustc_serialize=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/deb ug/deps/librustc_serialize-5c8c719f8cb442df.rlib --extern getopts=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgetopts-781edef4d7eacd14.rlib --ex tern gcc=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgcc-3c79a13fa356000a.rlib --extern libc=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src /build/bootstrap/debug/deps/liblibc-1ece201356dd0812.rlib --extern toml=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libtoml-3495572d91ba2dfe.rlib - -extern num_cpus=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libnum_cpus-d81d39a56ecc4645.rlib --extern build_helper=/tmp/guix-build-rustc-1.18.0.d rv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbuild_helper-d1189496287db707.rlib --extern filetime=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libfiletime-1fba24aeada37bf3.rlib --extern cmake=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libcmake-4feacbf6844c5e86.rlib --extern bootstrap=/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbootstrap-3ebfecab87ea2884.rlib` error: linking with `cc` failed: exit code: 1 | = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m32" "-L" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/rustdoc-83218ce7652a40a2.0.o" "-o" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/rustdoc-83218ce7652a40a2" "-Wl,--gc-sections" "-pie" "-nodefaultlibs" "-L" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps" "-L" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbootstrap-3ebfecab87ea2884.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libtoml-3495572d91ba2dfe.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/librustc_serialize-5c8 c719f8cb442df.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libnum_cpus-d81d39a56ecc4645.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libcmake-4feacbf6844c5e86.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgcc-3c79a13fa356000a.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbuild_helper-d1189496287db707.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libfiletime-1fba24aeada37bf3.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/liblibc-1ece201356dd0812.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgetopts-781edef4d7eacd14.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libstd-f4594d3e53dcb114.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq -rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libpanic_unwind-a0157c0ca919c364.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libunwind-488b4ab4bd53a138.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/librand-1efbcfd8938372b6.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcollections-532a3dbf317eff86.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liballoc-ca07b617414dd0fa.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liballoc_jemalloc-492d8ea7fa3384ff.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liblibc-88c194c15fdb6521.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-ru stc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libstd_unicode-cfbd6648f7db2ee5.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcore-687e6a964d22cbb4.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcompiler_builtins-987729be881d4d32.rlib" "-l" "util" "-l" "dl" "-l" "rt" "-l" "pthread" "-l" "gcc_s" "-l" "pthread" "-l" "c" "-l" "m" "-l" "rt" "-l" "util" = note: ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libutil.so when searching for -lutil ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libutil.a when searching for -lutil ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libutil.so when searching for -lutil ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libutil.a when searching for -lutil ld: cannot find -lutil ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libdl.so when searching for -ldl ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libdl.a when searching for -ldl ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libdl.so when searching for -ldl ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libdl.a when searching for -ldl ld: cannot find -ldl ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/librt.so when searching for -lrt ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/librt.a when searching for -lrt ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/librt.so when searching for -lrt ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/librt.a when searching for -lrt ld: cannot find -lrt ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libpthread.so when searching for -lpthread ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libpthread.a when searching for -lpthread ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libpthread.so when searching for -lpthread ld: skipping incompatible /gnu/store/n6nvxlk2j8ysffjh3jphn1k5silnakh6-glibc-2.25/lib/libpthread.a when searching for -lpthread ld: cannot find -lpthread ld: skipping incompatible /gnu/store/3x53yv4v144c9xp02rs64z7j597kkqax-gcc-5.4.0-lib/lib/gcc/x86_64-unknown-linux-gnu/5.4.0/../../../libgcc_s.so when searching for -lgcc_s ld: cannot find -lgcc_s ---------------------------------------------------------- From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 10:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Ricardo Wurmus Cc: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150918739317402 (code B ref 28433); Sat, 28 Oct 2017 10:44:01 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 10:43:13 +0000 Received: from localhost ([127.0.0.1]:38080 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Oa8-0004Wc-VZ for submit@debbugs.gnu.org; Sat, 28 Oct 2017 06:43:13 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:34384) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Oa6-0004WT-SJ for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 06:43:11 -0400 Received: from localhost (77.118.194.142.wireless.dyn.drei.com [77.118.194.142]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 6D3181CA02BC; Sat, 28 Oct 2017 12:43:05 +0200 (CEST) Date: Sat, 28 Oct 2017 12:42:58 +0200 From: Danny Milosavljevic Message-ID: <20171028124258.22553eee@scratchpost.org> In-Reply-To: <20171026101728.6493ef46@scratchpost.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Aha! I digged some more and found that rust-bootstrap doesn't specify #:system "i686-linux", while rustc-bootstrap does. Symptom: $ guix environment --pure rustc [env]$ ls -l /gnu/store/15hcgm941wgxfk08w0wrwpd9p7wjbq87-profile/bin/cc lrwxrwxrwx 2 root root 72 Jan 1 1970 /gnu/store/15hcgm941wgxfk08w0wrwpd9p7wjbq87-profile/bin/cc -> /gnu/store/a3gr3imzn6nqzs9q1ql0pilr0dnbpps4-rust-bootstrap-1.15.0/bin/cc [env]$ file /gnu/store/a3gr3imzn6nqzs9q1ql0pilr0dnbpps4-rust-bootstrap-1.15.0/bin/cc /gnu/store/a3gr3imzn6nqzs9q1ql0pilr0dnbpps4-rust-bootstrap-1.15.0/bin/cc: symbolic link to /gnu/store/8yxpqz65fgvcab60ypih009xv777ni66-gcc-5.4.0/bin/gcc [env]$ file /gnu/store/8yxpqz65fgvcab60ypih009xv777ni66-gcc-5.4.0/bin/gcc /gnu/store/8yxpqz65fgvcab60ypih009xv777ni66-gcc-5.4.0/bin/gcc: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /gnu/store/3h31zsqxjjg52da5gp3qmhkh4x8klhah-glibc-2.25/lib/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, not stripped, with debug_info Note "x86-64". On the other hand: [env]$ file -L /gnu/store/15hcgm941wgxfk08w0wrwpd9p7wjbq87-profile/bin/rustc /gnu/store/15hcgm941wgxfk08w0wrwpd9p7wjbq87-profile/bin/rustc: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /gnu/store/kzkgc8avgnanrv3ab2g3g8yj7l4bcavj-glibc-2.25/lib/ld-linux.so.2, for GNU/Linux 2.6.9, not stripped, with debug_info [env]$ file -L /gnu/store/kzkgc8avgnanrv3ab2g3g8yj7l4bcavj-glibc-2.25/lib/ld-linux.so.2 /gnu/store/kzkgc8avgnanrv3ab2g3g8yj7l4bcavj-glibc-2.25/lib/ld-linux.so.2: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, not stripped, with debug_info Note "32-bit", "80386". But when I change rust-bootstrap to specify #:system "i686-linux", then I get: | = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m32" "-L" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/rustc-f53d5ba9fb00bcc2.0.o" "-o" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/rustc-f53d5ba9fb00bcc2" "-Wl,--gc-sections" "-pie" "-nodefaultlibs" "-L" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps" "-L" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib" "-Wl,-Bstatic" "-Wl,-Bdynamic" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbootstrap-3ebfecab87ea2884.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libtoml-3495572d91ba2dfe.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/librustc_serialize-5c8c719 f8cb442df.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libnum_cpus-d81d39a56ecc4645.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libcmake-4feacbf6844c5e86.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgcc-3c79a13fa356000a.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libbuild_helper-d1189496287db707.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libfiletime-1fba24aeada37bf3.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/liblibc-1ece201356dd0812.rlib" "/tmp/guix-build-rustc-1.18.0.drv-0/rustc-1.18.0-src/build/bootstrap/debug/deps/libgetopts-781edef4d7eacd14.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libstd-f4594d3e53dcb114.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rus tc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libpanic_unwind-a0157c0ca919c364.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libunwind-488b4ab4bd53a138.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/librand-1efbcfd8938372b6.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcollections-532a3dbf317eff86.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liballoc-ca07b617414dd0fa.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liballoc_jemalloc-492d8ea7fa3384ff.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/liblibc-88c194c15fdb6521.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc- bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libstd_unicode-cfbd6648f7db2ee5.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcore-687e6a964d22cbb4.rlib" "/gnu/store/zmcc9gizicl91qvpcnl7ric2klnqhsdq-rustc-bootstrap-1.17.0/lib/rustlib/i686-unknown-linux-gnu/lib/libcompiler_builtins-987729be881d4d32.rlib" "-l" "util" "-l" "dl" "-l" "rt" "-l" "pthread" "-l" "gcc_s" "-l" "pthread" "-l" "c" "-l" "m" "-l" "rt" "-l" "util" = note: ld: /gnu/store/w8swvn15kqzzl3q5d0d9zjnhg5pk9ksw-gcc-5.4.0/libexec/gcc/i686-unknown-linux-gnu/5.4.0/liblto_plugin.so: error loading plugin: /gnu/store/w8swvn15kqzzl3q5d0d9zjnhg5pk9ksw-gcc-5.4.0/libexec/gcc/i686-unknown-linux-gnu/5.4.0/liblto_plugin.so: wrong ELF class: ELFCLASS32 From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 11:33:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Ricardo Wurmus Cc: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150919032529269 (code B ref 28433); Sat, 28 Oct 2017 11:33:02 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 11:32:05 +0000 Received: from localhost ([127.0.0.1]:38103 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8PLQ-0007c0-W5 for submit@debbugs.gnu.org; Sat, 28 Oct 2017 07:32:05 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:38230) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8PLO-0007bs-UO for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 07:32:03 -0400 Received: from localhost (77.118.194.142.wireless.dyn.drei.com [77.118.194.142]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 609731CA02BC; Sat, 28 Oct 2017 13:32:01 +0200 (CEST) Date: Sat, 28 Oct 2017 13:31:57 +0200 From: Danny Milosavljevic Message-ID: <20171028133157.4dc52bd9@scratchpost.org> In-Reply-To: <20171028124258.22553eee@scratchpost.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) And gcc picks up ld from PATH, which is a x86_64 ld. Bad. From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 11:58:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Ricardo Wurmus Cc: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150919185531567 (code B ref 28433); Sat, 28 Oct 2017 11:58:01 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 11:57:35 +0000 Received: from localhost ([127.0.0.1]:38111 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Pk7-0008D5-Ag for submit@debbugs.gnu.org; Sat, 28 Oct 2017 07:57:35 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:40052) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Pk5-0008Cx-VI for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 07:57:34 -0400 Received: from localhost (77.118.194.142.wireless.dyn.drei.com [77.118.194.142]) by dd1012.kasserver.com (Postfix) with ESMTPSA id DD3FC1CA02BC; Sat, 28 Oct 2017 13:57:27 +0200 (CEST) Date: Sat, 28 Oct 2017 13:57:26 +0200 From: Danny Milosavljevic Message-ID: <20171028135726.76e5a14e@scratchpost.org> In-Reply-To: <20171028133157.4dc52bd9@scratchpost.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Do we support lib32 a la "gcc -m32" ? How can we provide a working glibc for that? It seems that rustc bootstrap is trying to use that option. From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: ng0 Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 15:37:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Danny Milosavljevic Cc: Ricardo Wurmus , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150920501028386 (code B ref 28433); Sat, 28 Oct 2017 15:37:02 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 15:36:50 +0000 Received: from localhost ([127.0.0.1]:39364 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8TAH-0007Nm-VS for submit@debbugs.gnu.org; Sat, 28 Oct 2017 11:36:50 -0400 Received: from aibo.runbox.com ([91.220.196.211]:50690) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8TAG-0007Nc-3O for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 11:36:48 -0400 Received: from [10.9.9.212] (helo=mailfront12.runbox.com) by mailtransmit02.runbox with esmtp (Exim 4.86_2) (envelope-from ) id 1e8TAC-0001O6-Jk; Sat, 28 Oct 2017 17:36:44 +0200 Received: from dslb-092-073-172-028.092.073.pools.vodafone-ip.de ([92.73.172.28] helo=localhost) by mailfront12.runbox.com with esmtpsa (uid:892961 ) (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) id 1e8T9t-0006Jk-CS; Sat, 28 Oct 2017 17:36:25 +0200 Date: Sat, 28 Oct 2017 15:36:23 +0000 From: ng0 Message-ID: <20171028153623.jpup557ubcbo6xlw@abyayala> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="jrufiu7ufhsbu4cx" Content-Disposition: inline In-Reply-To: <20171026101728.6493ef46@scratchpost.org> X-Spam-Score: -0.2 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.2 (/) --jrufiu7ufhsbu4cx Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Danny Milosavljevic transcribed 8.7K bytes: > Hi, =E2=80=A6 > So I guess my actual question is how to do this cross compilation correct= ly. Note that the rust bootstrap compiler are binaries from upstream. (There's a project "mrust" that is a reimplementation of Rust in C++ that we could use in the long term in order to remove this binary) In the long term this would be nice. It was my first idea when I learned about this project, but as you can read in the bug I opened in the last 2(?) months in the mrustc bugtracker it still requires rustc to work. --=20 ng0 GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588 GnuPG: https://dist.ng0.infotropique.org/dist/keys/ https://www.infotropique.org https://ng0.infotropique.org --jrufiu7ufhsbu4cx Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAln0o/cACgkQ4i+bv+40 hYgaOQ/+NGN9JpARPzkGmzINORAj3XS/Wi0pvNKLOdOtKSNlownPWPfpWUjzzGyj l1Eb/Bhy3XW3xHYEBDFSLt/6PM9K4/sqmFIC5wUs/n6Awzh9A0VZBlYw73Rllfgl ySxhflFbzCIzzL6pNMAR5mQ/f11YBqoNAF4Ke04WMQ+bETMwWG+1creL8Rj2KbNC elA8rhaVqcOHPAM2zC5mHsPEZgFURcN58z0LsCjASpy07p8Td/z3v9E9RKohMmRa jvEG43xoxJlwJ+iiln3V1yRah6uO6e+//DapzJp2XtDxOcIlHo14gM++Gszmj8kL mBAprHalVfFvrSmZHHxxm91br8oEobcLrzJmuxd6VVKJTN0R+je1veWQfae3Q4I1 4HGoTONlqAqSPkr7t+sl9QN6/fbfow/iU/rb+NV+wh9hGhHNKI1XO0QAiLySOVZz BDV2M0kXikLSNkFEU+9uzTua5C2EFW8MVyV+9M3hFIsS0CfueQo4jqda5BEV4QEv JuWO/UkkvOI2DifeadGi45k53BQBwlTQuLFsLUbsHz4kNYL5y1eiIukJvnM2POfL /DV/jJhFBquCAvJzKGOI3yeMBHQ61zjueKuF8NZbbjBNNtfr52nukMMKBQCVR6w8 8n+7NMg/UzhlC8z3UyNupZDvrXq9UkhkmIagc+L976KfOSm6HHg= =eCFk -----END PGP SIGNATURE----- --jrufiu7ufhsbu4cx-- From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 18:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Danny Milosavljevic Cc: Ricardo Wurmus , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150921520612307 (code B ref 28433); Sat, 28 Oct 2017 18:27:01 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 18:26:46 +0000 Received: from localhost ([127.0.0.1]:39441 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Voj-0003CR-VG for submit@debbugs.gnu.org; Sat, 28 Oct 2017 14:26:46 -0400 Received: from hera.aquilenet.fr ([141.255.128.1]:59041) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8Voi-0003CI-0D for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 14:26:44 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 2959CF609; Sat, 28 Oct 2017 20:26:44 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DDU6WC0Shz3K; Sat, 28 Oct 2017 20:26:42 +0200 (CEST) Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:6a6c:dc17:fc02:cfda]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 13307F608; Sat, 28 Oct 2017 20:26:41 +0200 (CEST) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 7 Brumaire an 226 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sat, 28 Oct 2017 20:26:39 +0200 In-Reply-To: <20171028135726.76e5a14e@scratchpost.org> (Danny Milosavljevic's message of "Sat, 28 Oct 2017 13:57:26 +0200") Message-ID: <87d1575dsw.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) Hi, Danny Milosavljevic skribis: > Do we support lib32 a la "gcc -m32" ? How can we provide a working glibc = for that? It seems that rustc bootstrap is trying to use that option. We don=E2=80=99t support multilib, so glibc provides only 64-bit headers on x86_64 (if you try -m32 there you=E2=80=99ll get an error about missing or something like that.) Ludo=E2=80=99. From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 28 Oct 2017 18:33:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: ng0 Cc: Ricardo Wurmus , Danny Milosavljevic , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150921555812915 (code B ref 28433); Sat, 28 Oct 2017 18:33:01 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Oct 2017 18:32:38 +0000 Received: from localhost ([127.0.0.1]:39447 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8VuP-0003ME-JO for submit@debbugs.gnu.org; Sat, 28 Oct 2017 14:32:37 -0400 Received: from hera.aquilenet.fr ([141.255.128.1]:59057) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e8VuN-0003M5-Bd for 28433@debbugs.gnu.org; Sat, 28 Oct 2017 14:32:35 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id 3D193F61C; Sat, 28 Oct 2017 20:32:35 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id yHnCsoi1z2ii; Sat, 28 Oct 2017 20:32:34 +0200 (CEST) Received: from ribbon (unknown [IPv6:2a01:e0a:1d:7270:6a6c:dc17:fc02:cfda]) by hera.aquilenet.fr (Postfix) with ESMTPSA id 02526F609; Sat, 28 Oct 2017 20:32:33 +0200 (CEST) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028153623.jpup557ubcbo6xlw@abyayala> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 7 Brumaire an 226 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Sat, 28 Oct 2017 20:32:31 +0200 In-Reply-To: <20171028153623.jpup557ubcbo6xlw@abyayala> (ng0@infotropique.org's message of "Sat, 28 Oct 2017 15:36:23 +0000") Message-ID: <878tfv5dj4.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) ng0 skribis: > (There's a project "mrust" > that is a reimplementation of Rust in C++ that we could use in the long > term in order to remove this binary) At GPCE I also talked with someone who implements a compiler for a Rust-like language (Rust with some extensions, minus a few features, so not directly usable but might be worth keeping in mind): https://github.com/AnyDSL/traversal Ludo=E2=80=99. From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Oct 2017 11:36:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Cc: Ricardo Wurmus , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.15093633084892 (code B ref 28433); Mon, 30 Oct 2017 11:36:02 +0000 Received: (at 28433) by debbugs.gnu.org; 30 Oct 2017 11:35:08 +0000 Received: from localhost ([127.0.0.1]:41403 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e98LU-0001Gp-8T for submit@debbugs.gnu.org; Mon, 30 Oct 2017 07:35:08 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:49652) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e98LS-0001Ge-Ed for 28433@debbugs.gnu.org; Mon, 30 Oct 2017 07:35:06 -0400 Received: from localhost (77.118.206.212.wireless.dyn.drei.com [77.118.206.212]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 9C5291CA0182; Mon, 30 Oct 2017 12:35:03 +0100 (CET) Date: Mon, 30 Oct 2017 12:35:01 +0100 From: Danny Milosavljevic Message-ID: <20171030123501.66cebab2@scratchpost.org> In-Reply-To: <87d1575dsw.fsf@gnu.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On Sat, 28 Oct 2017 20:26:39 +0200 ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > Danny Milosavljevic skribis: >=20 > > Do we support lib32 a la "gcc -m32" ? How can we provide a working glib= c for that? It seems that rustc bootstrap is trying to use that option. =20 >=20 > We don=E2=80=99t support multilib, so glibc provides only 64-bit headers = on > x86_64 (if you try -m32 there you=E2=80=99ll get an error about missing > or something like that.) Yeah. What happens when I use an i686 host/target gcc and use "-m32" (rustbuild d= oes that)? Will it just ignore the option? From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Oct 2017 15:39:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Danny Milosavljevic Cc: Ricardo Wurmus , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150937788717627 (code B ref 28433); Mon, 30 Oct 2017 15:39:02 +0000 Received: (at 28433) by debbugs.gnu.org; 30 Oct 2017 15:38:07 +0000 Received: from localhost ([127.0.0.1]:42414 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9C8d-0004aE-DP for submit@debbugs.gnu.org; Mon, 30 Oct 2017 11:38:07 -0400 Received: from hera.aquilenet.fr ([141.255.128.1]:38140) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9C8b-0004a4-JG for 28433@debbugs.gnu.org; Mon, 30 Oct 2017 11:38:06 -0400 Received: from localhost (localhost [127.0.0.1]) by hera.aquilenet.fr (Postfix) with ESMTP id CCA23F9DF; Mon, 30 Oct 2017 16:38:04 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at aquilenet.fr Received: from hera.aquilenet.fr ([127.0.0.1]) by localhost (hera.aquilenet.fr [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZtVF4GsP-hWl; Mon, 30 Oct 2017 16:38:04 +0100 (CET) Received: from ribbon (unknown [193.50.110.213]) by hera.aquilenet.fr (Postfix) with ESMTPSA id E27E0F481; Mon, 30 Oct 2017 16:38:03 +0100 (CET) From: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> X-URL: http://www.fdn.fr/~lcourtes/ X-Revolutionary-Date: 9 Brumaire an 226 de la =?UTF-8?Q?R=C3=A9volution?= X-PGP-Key-ID: 0x090B11993D9AEBB5 X-PGP-Key: http://www.fdn.fr/~lcourtes/ludovic.asc X-PGP-Fingerprint: 3CE4 6455 8A84 FDC6 9DB4 0CFB 090B 1199 3D9A EBB5 X-OS: x86_64-pc-linux-gnu Date: Mon, 30 Oct 2017 16:38:02 +0100 In-Reply-To: <20171030123501.66cebab2@scratchpost.org> (Danny Milosavljevic's message of "Mon, 30 Oct 2017 12:35:01 +0100") Message-ID: <8760aw7ijp.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) Danny Milosavljevic skribis: > On Sat, 28 Oct 2017 20:26:39 +0200 > ludo@gnu.org (Ludovic Court=C3=A8s) wrote: > >> Danny Milosavljevic skribis: >>=20 >> > Do we support lib32 a la "gcc -m32" ? How can we provide a working gli= bc for that? It seems that rustc bootstrap is trying to use that option.=20= =20 >>=20 >> We don=E2=80=99t support multilib, so glibc provides only 64-bit headers= on >> x86_64 (if you try -m32 there you=E2=80=99ll get an error about missing >> or something like that.) > > Yeah. > > What happens when I use an i686 host/target gcc and use "-m32" (rustbuild= does that)? Will it just ignore the option? Yes, I think -m32 is a no-op in this case. Ludo=E2=80=99. From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Oct 2017 16:15:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: ludo@gnu.org (Ludovic =?UTF-8?Q?Court=C3=A8s?=) Cc: Ricardo Wurmus , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150938006521197 (code B ref 28433); Mon, 30 Oct 2017 16:15:02 +0000 Received: (at 28433) by debbugs.gnu.org; 30 Oct 2017 16:14:25 +0000 Received: from localhost ([127.0.0.1]:42443 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9Chl-0005Vp-0W for submit@debbugs.gnu.org; Mon, 30 Oct 2017 12:14:25 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:43058) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9Chj-0005Vf-0K for 28433@debbugs.gnu.org; Mon, 30 Oct 2017 12:14:23 -0400 Received: from localhost (77.118.206.212.wireless.dyn.drei.com [77.118.206.212]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 9B3361CA1194; Mon, 30 Oct 2017 17:14:20 +0100 (CET) Date: Mon, 30 Oct 2017 17:14:15 +0100 From: Danny Milosavljevic Message-ID: <20171030171415.0cf6c27d@scratchpost.org> In-Reply-To: <8760aw7ijp.fsf@gnu.org> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> <8760aw7ijp.fsf@gnu.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Hi Ludo, > Yes, I think -m32 is a no-op in this case. Yep. I just got rustc to build a bootstrap executable (which fails when executing it [*], but hey, progress) by making a union-build with all the i686 libs. Feels kinda icky, but it seems that propagated-inputs don't remember the #:system it was for, so for example if A propagates B and A specifies system i686, and X specifies system x86_64 and X depends on A, then X's B will be x86_64. Weird but understandable I guess... Details: A: propagated-inputs B arguments system i686 X: native-inputs A arguments system x86_64 Now X's B is x86_64... The workaround is this: A: arguments system i686 native-inputs B union-build out/lib from B (etc) X: native-inputs A arguments system x86_64 That works. In our specific case A = "rust-bootstrap", X = "rustc", B = "glibc", "gcc:lib" etc. [*] Tries to load libgcc_s.so.1 from the glibc store directory. WTF? From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] v2 Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Mon, 30 Oct 2017 19:19:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.150939111614642 (code B ref 28433); Mon, 30 Oct 2017 19:19:01 +0000 Received: (at 28433) by debbugs.gnu.org; 30 Oct 2017 19:18:36 +0000 Received: from localhost ([127.0.0.1]:42656 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9Fa0-0003o5-4X for submit@debbugs.gnu.org; Mon, 30 Oct 2017 15:18:36 -0400 Received: from dd1012.kasserver.com ([85.13.128.8]:58142) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1e9FZx-0003nu-1k for 28433@debbugs.gnu.org; Mon, 30 Oct 2017 15:18:35 -0400 Received: from localhost (77.118.166.16.wireless.dyn.drei.com [77.118.166.16]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 16FBB1CA1194 for <28433@debbugs.gnu.org>; Mon, 30 Oct 2017 20:18:29 +0100 (CET) Date: Mon, 30 Oct 2017 20:18:20 +0100 From: Danny Milosavljevic Message-ID: <20171030201820.6e2aa96d@scratchpost.org> In-Reply-To: <20170912185023.7de883ff@scratchpost.org> References: <20170912185023.7de883ff@scratchpost.org> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/NbLG8FjGl6nTwTM7HnD9AOy" X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --MP_/NbLG8FjGl6nTwTM7HnD9AOy Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline New patch (relative to master) attached. Result: ... Compiling bootstrap v0.0.0 (file:///tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/src/bootstrap) ... Running `/gnu/store/vqqyfd20cci8ngffx8ip30xj1zghj3d3-rustc-bootstrap-1.20.0/bin/rustc --crate-name rustdoc src/bootstrap/bin/rustdoc.rs --crate-type bin --emit=dep-info,link -C debug-assertions=off -C overflow-checks=on -C metadata=be82d62669cb1c84 -C extra-filename=-be82d62669cb1c84 --out-dir /tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps -L dependency=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps --extern serde=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libserde-632d9b22ceaaf392.rlib --extern getopts=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libgetopts-3bd92ee3d46aec42.rlib --extern filetime=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libfiletime-c92abda52111c8f6.rlib --extern lazy_static=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/liblazy_static-2aedc8916caa605d.rlib --ex tern cmake=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libcmake-cb4e4459aab5227f.rlib --extern build_helper=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libbuild_helper-a3d8a479aaa255b5.rlib --extern toml=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libtoml-9a87f4f0395599e4.rlib --extern gcc=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libgcc-f472059c4232400f.rlib --extern serde_derive=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libserde_derive-46fcba9d518ff59d.so --extern serde_json=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libserde_json-d578450b81b0fe32.rlib --extern num_cpus=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libnum_cpus-c524032e97e252a3.rlib --extern libc=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/de ps/liblibc-785194da5730896d.rlib --extern bootstrap=/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/deps/libbootstrap-5489136beef8bcf0.rlib` Finished dev [unoptimized] target(s) in 95.84 secs running: /tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/bootstrap build -v /tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/bootstrap: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory Traceback (most recent call last): File "/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/src/bootstrap/bootstrap.py", line 816, in main() File "/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/src/bootstrap/bootstrap.py", line 799, in main bootstrap() File "/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/src/bootstrap/bootstrap.py", line 790, in bootstrap run(args, env=env, verbose=build.verbose) File "/tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/src/bootstrap/bootstrap.py", line 148, in run raise RuntimeError(err) RuntimeError: failed to run: /tmp/guix-build-rustc-1.21.0.drv-0/rustc-1.21.0-src/build/bootstrap/debug/bootstrap build -v make: *** [Makefile:24: all] Error 1 phase `build' failed after 96.3 seconds --MP_/NbLG8FjGl6nTwTM7HnD9AOy Content-Type: application/octet-stream; name=RUST Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=RUST ZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9ydXN0LnNjbSBiL2dudS9wYWNrYWdlcy9ydXN0LnNj bQppbmRleCA2NTI2ODZlMDYuLjViYmIzNGJhNSAxMDA2NDQKLS0tIGEvZ251L3BhY2thZ2VzL3J1 c3Quc2NtCisrKyBiL2dudS9wYWNrYWdlcy9ydXN0LnNjbQpAQCAtMjUsNiArMjUsNyBAQAogICAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBib290c3RyYXApCiAgICM6dXNlLW1vZHVsZSAoZ251 IHBhY2thZ2VzIGNtYWtlKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjb21wcmVzc2lv bikKKyAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgY3Jvc3MtYmFzZSkKICAgIzp1c2UtbW9k dWxlIChnbnUgcGFja2FnZXMgY3VybCkKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFja2FnZXMgZWxm KQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBmbGV4KQpAQCAtNDcsNyArNDgsNyBAQAog ICAjOnVzZS1tb2R1bGUgKHNyZmkgc3JmaS0yNikpCiAKIDs7IFNob3VsZCBiZSBvbmUgbGVzcyB0 aGFuIHRoZSBjdXJyZW50IHJlbGVhc2VkIHZlcnNpb24uCi0oZGVmaW5lICVydXN0LWJvb3RzdHJh cC1iaW5hcmllcy12ZXJzaW9uICIxLjE1LjAiKQorKGRlZmluZSAlcnVzdC1ib290c3RyYXAtYmlu YXJpZXMtdmVyc2lvbiAiMS4yMC4wIikKIAogKGRlZmluZSAlcnVzdC1ib290c3RyYXAtYmluYXJp ZXMKICAgKG9yaWdpbgpAQCAtNTgsNyArNTksNyBAQAogICAgICAgICAgICItaTY4Ni11bmtub3du LWxpbnV4LWdudS50YXIuZ3oiKSkKICAgICAoc2hhMjU2CiAgICAgIChiYXNlMzIKLSAgICAgICIw d21rZng4cHhta2t3MDIxbXJxOXMzeGhyYThmMGRhcWRsNmo1NnB4eW40dzM5aTByenJ3IikpKSkK KyAgICAgICIwczI2bjVwZ3dyMHcwZnB5NGRmc3phaGxrcGFoNDE0YnhwYW5yYnljNWs4bmN2aDk1 cmRiIikpKSkKIAogKGRlZmluZSAoaW5jcmVtZW50LXJ1c3QtdmVyc2lvbiBydXN0LXZlcnNpb24g bWFqb3IgcGF0Y2gpCiAgIChtYXRjaCAoc3RyaW5nLXNwbGl0IHJ1c3QtdmVyc2lvbiAjXC4pCkBA IC03OCw3ICs3OSw3IEBACiAgIDs7IGEgc3RhYmlsaXR5IG9yIHNlY3VyaXR5IGZpeC4gMS4xMS4w IC0+IDEuMTIuMSAtPiAxLjEzLjAKICAgKGluY3JlbWVudC1ydXN0LXZlcnNpb24gYm9vdHN0cmFw LXZlcnNpb24gMSBwYXRjaCkpCiAKLShkZWZpbmUgcnVzdGMtYm9vdHN0cmFwCisoZGVmaW5lLXB1 YmxpYyBydXN0Yy1ib290c3RyYXAKICAgKHBhY2thZ2UKICAgICAobmFtZSAicnVzdGMtYm9vdHN0 cmFwIikKICAgICAodmVyc2lvbiAlcnVzdC1ib290c3RyYXAtYmluYXJpZXMtdmVyc2lvbikKQEAg LTE2OCw3ICsxNjksNyBAQCB3aGljaCBjYW4gaW4gdHVybiBiZSB1c2VkIHRvIGJ1aWxkIHRoZSBm aW5hbCBSdXN0IGNvbXBpbGVyLiIpCiBtYW5hZ2VyLCB3aGljaCBpcyByZXF1aXJlZCB0byBidWls ZCBpdHNlbGYuIikKICAgICAobGljZW5zZSBsaWNlbnNlOmFzbDIuMCkpKQogCi0oZGVmaW5lIHJ1 c3QtYm9vdHN0cmFwCisoZGVmaW5lLXB1YmxpYyBydXN0LWJvb3RzdHJhcAogICAocGFja2FnZQog ICAgIChuYW1lICJydXN0LWJvb3RzdHJhcCIpCiAgICAgKHZlcnNpb24gJXJ1c3QtYm9vdHN0cmFw LWJpbmFyaWVzLXZlcnNpb24pCkBAIC0xNzcsMjAgKzE3OCwzOSBAQCBtYW5hZ2VyLCB3aGljaCBp cyByZXF1aXJlZCB0byBidWlsZCBpdHNlbGYuIikKICAgICAocHJvcGFnYXRlZC1pbnB1dHMKICAg ICAgYCgoInJ1c3RjLWJvb3RzdHJhcCIgLHJ1c3RjLWJvb3RzdHJhcCkKICAgICAgICAoImNhcmdv LWJvb3RzdHJhcCIgLGNhcmdvLWJvb3RzdHJhcCkKLSAgICAgICAoImdjYyIgLChjYW5vbmljYWwt cGFja2FnZSBnY2MpKSkpCisgICAgICAgKCJnY2MiICwoY2Fub25pY2FsLXBhY2thZ2UgZ2NjKSkK KyAgICAgICAoImdjYzpsaWIiICwoY2Fub25pY2FsLXBhY2thZ2UgZ2NjKSAibGliIikKKyAgICAg ICAoImJpbnV0aWxzIiAsYmludXRpbHMpKSkgOyBmb3IgbGQuCisgICAgKG5hdGl2ZS1pbnB1dHMK KyAgICAgYCgoImdsaWJjIiAsZ2xpYmMpKSkKICAgICAoYXJndW1lbnRzCi0gICAgIGAoIzptb2R1 bGVzICgoZ3VpeCBidWlsZCB1dGlscykpCisgICAgIGAoIzptb2R1bGVzICgoZ3VpeCBidWlsZCB1 dGlscykgKGd1aXggYnVpbGQgdW5pb24pKQorICAgICAgICM6c3lzdGVtICJpNjg2LWxpbnV4Igor ICAgICAgIDsjOmltcGxpY2l0LWlucHV0cz8gI2YKICAgICAgICAjOmJ1aWxkZXIKICAgICAgICAo YmVnaW4KICAgICAgICAgICh1c2UtbW9kdWxlcyAoZ3VpeCBidWlsZCB1dGlscykpCisgICAgICAg ICAodXNlLW1vZHVsZXMgKGd1aXggYnVpbGQgdW5pb24pKQogICAgICAgICAgKGxldCAoKG91dCAo YXNzb2MtcmVmICVvdXRwdXRzICJvdXQiKSkKLSAgICAgICAgICAgICAgIChnY2MgKGFzc29jLXJl ZiAlYnVpbGQtaW5wdXRzICJnY2MiKSkpCisgICAgICAgICAgICAgICAoZ2NjIChhc3NvYy1yZWYg JWJ1aWxkLWlucHV0cyAiZ2NjIikpCisgICAgICAgICAgICAgICAoZ2NjOmxpYiAoYXNzb2MtcmVm ICVidWlsZC1pbnB1dHMgImdjYzpsaWIiKSkKKyAgICAgICAgICAgICAgIChnbGliYyAoYXNzb2Mt cmVmICVidWlsZC1pbnB1dHMgImdsaWJjIikpCisgICAgICAgICAgICAgICAoYmludXRpbHMgKGFz c29jLXJlZiAlYnVpbGQtaW5wdXRzICJiaW51dGlscyIpKSkKICAgICAgICAgICAgKG1rZGlyLXAg KHN0cmluZy1hcHBlbmQgb3V0ICIvYmluIikpCisgICAgICAgICAgIDsobWtkaXItcCAoc3RyaW5n LWFwcGVuZCBvdXQgIi9saWIiKSkKICAgICAgICAgICAgOzsgUnVzdCByZXF1aXJlcyBhIEMgdG9v bGNoYWluIGZvciBsaW5raW5nLiBUaGUgcHJlYnVpbHQKICAgICAgICAgICAgOzsgYmluYXJpZXMg ZXhwZWN0IGEgY29tcGlsZXIgY2FsbGVkIGNjLiBUaHVzIHN5bWxpbmsgZ2NjCiAgICAgICAgICAg IDs7IHRvIGNjLgogICAgICAgICAgICAoc3ltbGluayAoc3RyaW5nLWFwcGVuZCBnY2MgIi9iaW4v Z2NjIikKLSAgICAgICAgICAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgb3V0ICIvYmluL2NjIikp KSkpKQorICAgICAgICAgICAgICAgICAgICAoc3RyaW5nLWFwcGVuZCBvdXQgIi9iaW4vY2MiKSkK KyAgICAgICAgICAgOzsgY2MgaW52b2tlcyAibGQiLiAgUHJvdmlkZSBpdC4KKyAgICAgICAgICAg KHN5bWxpbmsgKHN0cmluZy1hcHBlbmQgYmludXRpbHMgIi9iaW4vbGQiKQorICAgICAgICAgICAg ICAgICAgICAoc3RyaW5nLWFwcGVuZCBvdXQgIi9iaW4vbGQiKSkKKyAgICAgICAgICAgKHVuaW9u LWJ1aWxkIChzdHJpbmctYXBwZW5kIG91dCAiL2xpYiIpCisgICAgICAgICAgICAgICAgICAgICAg ICAobGlzdCAoc3RyaW5nLWFwcGVuZCBnbGliYyAiL2xpYiIpCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAoc3RyaW5nLWFwcGVuZCBnY2M6bGliICIvbGliIikpKQorICAgICAgICAgICA7 KHN5c3RlbSAiY2htb2QiICIreCIgKHN0cmluZy1hcHBlbmQgb3V0ICIvbGliL2xpYmdjY19zLnNv LjEiKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkpKSkKICAgICAoaG9tZS1wYWdl ICJodHRwczovL3d3dy5ydXN0LWxhbmcub3JnIikKICAgICAoc3lub3BzaXMgIlJ1c3QgYm9vdHN0 cmFwcGluZyBtZXRhIHBhY2thZ2UiKQogICAgIChkZXNjcmlwdGlvbiAiTWV0YSBwYWNrYWdlIGZv ciBhIHJ1c3QgZW52aXJvbm1lbnQuIFByb3ZpZGVzIHByZS1jb21waWxlZApAQCAtMjA4LDcgKzIy OCw3IEBAIHJ1c3RjLWJvb3RzdHJhcCBhbmQgY2FyZ28tYm9vdHN0cmFwIHBhY2thZ2VzLiIpCiAg ICAgICAgICAgICAgICAgICAgICJydXN0Yy0iIHZlcnNpb24gIi1zcmMudGFyLmd6IikpCiAgICAg ICAgICAgICAgIChzaGEyNTYKICAgICAgICAgICAgICAgIChiYXNlMzIKLSAgICAgICAgICAgICAg ICAiMWQ3OGpxN21jMzRuMjY1Ynk2OGFtcjlyNG56YmlxcmlsZmJ3aDdneDU2eWRuNGdiNnJwciIp KQorICAgICAgICAgICAgICAgICIxeWo4bG54eWJqcnlicDAwZnFoeHc4ZnByNjQxZGg4d2NuOW1r NDR4am5zYjRpMWMyMXFwIikpCiAgICAgICAgICAgICAobW9kdWxlcyAnKChndWl4IGJ1aWxkIHV0 aWxzKSkpCiAgICAgICAgICAgICAoc25pcHBldAogICAgICAgICAgICAgIGAoYmVnaW4KQEAgLTIx NywyMSArMjM3LDM1IEBAIHJ1c3RjLWJvb3RzdHJhcCBhbmQgY2FyZ28tYm9vdHN0cmFwIHBhY2th Z2VzLiIpCiAgICAgKGJ1aWxkLXN5c3RlbSBnbnUtYnVpbGQtc3lzdGVtKQogICAgIChuYXRpdmUt aW5wdXRzCiAgICAgIGAoKCJiaXNvbiIgLGJpc29uKSA7IEZvciB0aGUgdGVzdHMKKyAgICAgICAo InRhciIgLHRhcikgOyB1c2VkIHRvIGJlIGltcGxpY2l0CisgICAgICAgKCJ4eiIgLHh6KSA7IHVz ZWQgdG8gYmUgaW1wbGljaXQKICAgICAgICAoImNtYWtlIiAsY21ha2UpCiAgICAgICAgKCJmbGV4 IiAsZmxleCkgOyBGb3IgdGhlIHRlc3RzCiAgICAgICAgKCJnaXQiICxnaXQpCiAgICAgICAgKCJw cm9jcHMiICxwcm9jcHMpIDsgRm9yIHRoZSB0ZXN0cwogICAgICAgICgicHl0aG9uLTIiICxweXRo b24tMikKKyAgICAgICAoImNhcmdvLWJvb3RzdHJhcCIgLGNhcmdvLWJvb3RzdHJhcCkKICAgICAg ICAoInJ1c3QtYm9vdHN0cmFwIiAscnVzdC1ib290c3RyYXApCi0gICAgICAgKCJ3aGljaCIgLHdo aWNoKSkpCisgICAgICAgKCJ3aGljaCIgLHdoaWNoKQorICAgICAgICgic3RyYWNlIiAsc3RyYWNl KQorICAgICAgIDsoImNyb3NzLWdjYyIgLChjcm9zcy1nY2MgImk2ODYtbGludXgtZ251IgorICAg ICAgIDsgICAgICAgICAgICAgICAjOnhiaW51dGlscyAoY3Jvc3MtYmludXRpbHMgImk2ODYtbGlu dXgtZ251IikKKyAgICAgICA7ICAgICAgICAgICAgICAgIzpsaWJjIChjcm9zcy1saWJjICJpNjg2 LWxpbnV4LWdudSIpKSkKKyAgICAgICA7KCJjcm9zcy1saWJjIiAsKGNyb3NzLWxpYmMgImk2ODYt bGludXgtZ251IikpCisgICAgICAgKSkKICAgICAoaW5wdXRzCiAgICAgIGAoKCJqZW1hbGxvYyIg LGplbWFsbG9jKQogICAgICAgICgibGx2bSIgLGxsdm0tMy45LjEpKSkKICAgICAoYXJndW1lbnRz Ci0gICAgIGAoIzpwaGFzZXMKKyAgICAgYCggOyM6aW1wbGljaXQtaW5wdXRzPyAjZgorICAgICAg ICM6cGhhc2VzCiAgICAgICAgKG1vZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcworICAgICAg ICAgOzsgQXZvaWQgY2FyZ28gY29tcGxhaW5pbmcgYWJvdXQgbWlzbWF0Y2hlZCBjaGVja3N1bXMu CisgICAgICAgICAoZGVsZXRlICdwYXRjaC1zb3VyY2Utc2hlYmFuZ3MpCisgICAgICAgICAoZGVs ZXRlICdwYXRjaC1nZW5lcmF0ZWQtZmlsZS1zaGViYW5ncykKKyAgICAgICAgIChkZWxldGUgJ3Bh dGNoLXVzci1iaW4tZmlsZSkKICAgICAgICAgIChhZGQtYWZ0ZXIgJ3VucGFjayAncGF0Y2gtY29u ZmlndXJlCi0gICAgICAgICAgIChsYW1iZGEgXworICAgICAgICAgICAobGFtYmRhKiAoIzprZXkg aW5wdXRzICM6YWxsb3ctb3RoZXIta2V5cykKICAgICAgICAgICAgICAoc3Vic3RpdHV0ZSogImNv bmZpZ3VyZSIKICAgICAgICAgICAgICAgICgoIi91c3IvYmluL2VudiIpICh3aGljaCAiZW52Iikp IDsgRGV0ZWN0IHRhcmdldCBDUFUgY29ycmVjdGx5LgogICAgICAgICAgICAgICAgKCgicHJvYmVf bmVlZCBDRkdfQ1VSTCBjdXJsIikgIiIpIDsgQXZvaWQgY3VybCBidWlsZCBkZXBlbmRlbmN5LgpA QCAtMjQ3LDE0ICsyODEsNDcgQEAgcnVzdGMtYm9vdHN0cmFwIGFuZCBjYXJnby1ib290c3RyYXAg cGFja2FnZXMuIikKICAgICAgICAgICAgICAoc3Vic3RpdHV0ZSogInNyYy90b29scy9jb21waWxl dGVzdC9zcmMvdXRpbC5ycyIKICAgICAgICAgICAgICAgICgoIihcImFtZDY0XCIsIFwieDg2XzY0 XCIpLCIpICIoXCJhbWQ2NFwiLCBcIng4Nl82NFwiKSwKIChcIm52cHR4XCIsIFwibnZwdHhcIiks IikpIDsgTWFrZSBMTFZNID49IDMuOC4xIHdvcmsuCi0gICAgICAgICAgICAgKHN1YnN0aXR1dGUq ICJtay9tYWluLm1rIgotICAgICAgICAgICAgICAgKCgiTExWTV9PUFRJT05BTF9DT01QT05FTlRT PSIpCi0gICAgICAgICAgICAgICAgIkxMVk1fT1BUSU9OQUxfQ09NUE9ORU5UUz1udnB0eCAiKSkg OyBNYWtlIExMVk0gPj0gMy44LjEgd29yay4KKyAgICAgICAgICAgICA7KHN5c3RlbSogIm12IiAi c3JjL2Jvb3RzdHJhcC9jb25maWcudG9tbC5leGFtcGxlIgorICAgICAgICAgICAgIDsgICAgICAg ICAgICAgICJzcmMvYm9vdHN0cmFwL2NvbmZpZy50b21sIikKKyAgICAgICAgICAgICAobWtkaXIt cCAic3JjL2Jvb3RzdHJhcC8uY2FyZ28iKQorICAgICAgICAgICAgIChjYWxsLXdpdGgtb3V0cHV0 LWZpbGUgInNyYy9ib290c3RyYXAvLmNhcmdvL2NvbmZpZyIKKyAgICAgICAgICAgICAgICAgKGxh bWJkYSAocCkKKyAgICAgICAgICAgICAgICAgICAoZm9ybWF0IHAgIgorW3NvdXJjZS5jcmF0ZXMt aW9dCityZWdpc3RyeSA9ICdodHRwczovL2dpdGh1Yi5jb20vcnVzdC1sYW5nL2NyYXRlcy5pby1p bmRleCcKK3JlcGxhY2Utd2l0aCA9ICd2ZW5kb3JlZC1zb3VyY2VzJworCitbc291cmNlLnZlbmRv cmVkLXNvdXJjZXNdCitkaXJlY3RvcnkgPSAnc3JjL3ZlbmRvcicKKworW3RhcmdldC5pNjg2LWxp bnV4LWdudV0KK2xpbmtlciA9IFwifmEvYmluL2k2ODYtbGludXgtZ251LWdjY1wiCisKKyIgKGFz c29jLXJlZiBpbnB1dHMgImNyb3NzLWdjYyIpKSkpCisKICAgICAgICAgICAgICAjdCkpCiAgICAg ICAgICAoYWRkLWFmdGVyICd1bnBhY2sgJ3NldC1lbnYKLSAgICAgICAgICAgKGxhbWJkYSBfCisg ICAgICAgICAgIChsYW1iZGEqICgjOmtleSBpbnB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQorICAg ICAgICAgICAgIChkZWZpbmUgKGNyb3NzPyB4KQorICAgICAgICAgICAgICAgKHN0cmluZy1jb250 YWlucyB4ICJjcm9zcy0iKSkKICAgICAgICAgICAgICAoc2V0ZW52ICJTSEVMTCIgKHdoaWNoICJz aCIpKQogICAgICAgICAgICAgIChzZXRlbnYgIkNPTkZJR19TSEVMTCIgKHdoaWNoICJzaCIpKQor ICAgICAgICAgICAgIChzZXRlbnYgIlZFUkJPU0UiICIxIikKKyAgICAgICAgICAgICAoc2V0ZW52 ICJDUk9TU19DX0lOQ0xVREVfUEFUSCIgKGdldGVudiAiQ19JTkNMVURFX1BBVEgiKSkKKyAgICAg ICAgICAgICAoc2V0ZW52ICJDUk9TU19DUExVU19JTkNMVURFX1BBVEgiIChnZXRlbnYgIkNQTFVT X0lOQ0xVREVfUEFUSCIpKQorICAgICAgICAgICAgIChzZXRlbnYgIkNST1NTX0xJQlJBUllfUEFU SCIgKGdldGVudiAiTElCUkFSWV9QQVRIIikpCisgICAgICAgICAgICAgOyhzZXRlbnYgIlBBVEgi IChzdHJpbmctYXBwZW5kIChhc3NvYy1yZWYgaW5wdXRzICJydXN0LWJvb3RzdHJhcCIpICIvYmlu OiIgKGdldGVudiAiUEFUSCIpKSkKKyAgICAgICAgICAgICAoZm9yLWVhY2gKKyAgICAgICAgICAg ICAgKGxhbWJkYSAoZW52LW5hbWUpCisgICAgICAgICAgICAgICAgKGxldCogKChlbnYtdmFsdWUg KGdldGVudiBlbnYtbmFtZSkpCisgICAgICAgICAgICAgICAgICAgICAgIChzZWFyY2gtcGF0aCAo c2VhcmNoLXBhdGgtYXMtc3RyaW5nLT5saXN0IGVudi12YWx1ZSkpCisgICAgICAgICAgICAgICAg ICAgICAgIChuZXctc2VhcmNoLXBhdGggKGZpbHRlciAobGFtYmRhIChlKSAobm90IChjcm9zcz8g ZSkpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Vh cmNoLXBhdGgpKQorICAgICAgICAgICAgICAgICAgICAgICAobmV3LWVudi12YWx1ZSAobGlzdC0+ c2VhcmNoLXBhdGgtYXMtc3RyaW5nCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBuZXctc2VhcmNoLXBhdGggIjoiKSkpCisgICAgICAgICAgICAgICAgICAoc2V0ZW52IGVu di1uYW1lIG5ldy1lbnYtdmFsdWUpKSkKKyAgICAgICAgICAgICAgJygiQ19JTkNMVURFX1BBVEgi ICJDUExVU19JTkNMVURFX1BBVEgiICJMSUJSQVJZX1BBVEgiKSkKKwogICAgICAgICAgICAgICN0 KSkKICAgICAgICAgIChhZGQtYWZ0ZXIgJ3VucGFjayAncGF0Y2gtdGVzdHMKICAgICAgICAgICAg KGxhbWJkYSogKCM6a2V5IGlucHV0cyAjOmFsbG93LW90aGVyLWtleXMpCkBAIC0yODQsNiArMzUx LDcgQEAgZm4gdGVzdF9wcm9jZXNzX21hc2siKSkKICAgICAgICAgICAgICAgICAgICAgKHJ1c3Rj IChhc3NvYy1yZWYgaW5wdXRzICJydXN0Yy1ib290c3RyYXAiKSkKICAgICAgICAgICAgICAgICAg ICAgKGxsdm0gKGFzc29jLXJlZiBpbnB1dHMgImxsdm0iKSkKICAgICAgICAgICAgICAgICAgICAg KGplbWFsbG9jIChhc3NvYy1yZWYgaW5wdXRzICJqZW1hbGxvYyIpKQorICAgICAgICAgICAgICAg ICAgICA7OyBUT0RPIG1ha2UgYm9vdHN0cmFwcGVyIHVzZSBpNjg2IGxpYnJhcmllcyEgKC1sdXRp bCwgLWxkbCwgLi4uKS4KICAgICAgICAgICAgICAgICAgICAgKGZsYWdzIChsaXN0CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgIi0tcHJlZml4PSIgb3V0KQogICAg ICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICItLWRhdGFkaXI9IiBvdXQg Ii9zaGFyZSIpCkBAIC0yOTEsMTYgKzM1OSw0OCBAQCBmbiB0ZXN0X3Byb2Nlc3NfbWFzayIpKQog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICItLWRlZmF1bHQtbGlu a2VyPSIgZ2NjICIvYmluL2djYyIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKHN0cmlu Zy1hcHBlbmQgIi0tZGVmYXVsdC1hcj0iIGJpbnV0aWxzICIvYmluL2FyIikKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAoc3RyaW5nLWFwcGVuZCAiLS1weXRob249IiBweXRob24gIi9iaW4v cHl0aG9uMiIpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyBGSVhNRSAvZ251L3N0b3Jl LzZycmkwa3hiOXExZ3o2bHYxZGdkd2poNDFhYTlpamRsLXJ1c3RjLWJvb3RzdHJhcC0xLjE3LjAv YmluL2NhcmdvIGlzIHdyb25nLgogICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzdHJpbmct YXBwZW5kICItLWxvY2FsLXJ1c3Qtcm9vdD0iIHJ1c3RjKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChzdHJpbmctYXBwZW5kICItLWxsdm0tcm9vdD0iIGxsdm0pCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKHN0cmluZy1hcHBlbmQgIi0tamVtYWxsb2Mtcm9vdD0iIGplbWFsbG9j ICIvbGliIikKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1yZWxlYXNlLWNoYW5uZWw9 c3RhYmxlIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLWVuYWJsZS1ycGF0aCIKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1lbmFibGUtbG9jYWwtcnVzdCIKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiLS1kaXNhYmxlLXJ1c3RidWlsZCIgOyBydXN0YnVpbGQgZG9l c24ndCB3b3JrIHlldC4KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1kaXNhYmxlLW1h bmFnZS1zdWJtb2R1bGVzIikpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICItLWRpc2Fi bGUtbWFuYWdlLXN1Ym1vZHVsZXMiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgOyAiLS1l bmFibGUtZXh0ZW5kZWQiIDsgRklYTUUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLS1k aXNhYmxlLXNhbml0aXplcnMiIDsgRklYTUUgcmUtZW5hYmxlCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIi0tYnVpbGQ9eDg2XzY0LXVua25vd24tbGludXgtZ251IgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDsiLS1lbmFibGUtZnVsbC1ib290c3RyYXAiCisgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKSkpCisgICAgICAgICAgICAgICAobWtkaXIgIlhjYXJnbyIpCisgICAg ICAgICAgICAgICAoY2FsbC13aXRoLW91dHB1dC1maWxlICJYY2FyZ28vY29uZmlnIgorICAgICAg ICAgICAgICAgICAobGFtYmRhIChwKQorICAgICAgICAgICAgICAgICAgIChmb3JtYXQgcCAiCitb c291cmNlLmNyYXRlcy1pb10KK3JlZ2lzdHJ5ID0gJ2h0dHBzOi8vZ2l0aHViLmNvbS9ydXN0LWxh bmcvY3JhdGVzLmlvLWluZGV4JworcmVwbGFjZS13aXRoID0gJ3ZlbmRvcmVkLXNvdXJjZXMnCisK K1tzb3VyY2UudmVuZG9yZWQtc291cmNlc10KK2RpcmVjdG9yeSA9ICdzcmMvdmVuZG9yJworCitb dGFyZ2V0Lmk2ODYtbGludXgtZ251XQorbGlua2VyID0gXCJ+YS9iaW4vaTY4Ni1saW51eC1nbnUt Z2NjXCIKKworIiAoYXNzb2MtcmVmIGlucHV0cyAiY3Jvc3MtZ2NjIikpKSkKKyAgICAgICAgICAg ICAgIChzZXRlbnYgIkNBUkdPX0hPTUUiIChzdHJpbmctYXBwZW5kIChnZXRjd2QpICIvWGNhcmdv IikpCisgICAgICAgICAgICAgICAoc3Vic3RpdHV0ZSogInNyYy9ib290c3RyYXAvYm9vdHN0cmFw LnB5IgorICAgICAgICAgICAgICAgICAoKCIvZXRjL05JWE9TIikKKyAgICAgICAgICAgICAgICAg IChnZXRjd2QpKQorICAgICAgICAgICAgICAgICAoKCJzZWxmWy5dcHJvZ3JhbV9jb25maWdbKF0n Y2FyZ28nWyldIikKKyAgICAgICAgICAgICAgICAgIChzdHJpbmctYXBwZW5kICInIiAoYXNzb2Mt cmVmIGlucHV0cyAiY2FyZ28tYm9vdHN0cmFwIikKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICIvYmluL2NhcmdvJyIpKQorICAgICAgICAgICAgICAgICAoKCJjYXJnb1soXVspXSwg XCJidWlsZFwiIikgImNhcmdvKCksIFwiYnVpbGRcIiwgXCItLXZlcmJvc2VcIiIpKQogICAgICAg ICAgICAgICAgOzsgUnVzdCB1c2VzIGEgY3VzdG9tIGNvbmZpZ3VyZSBzY3JpcHQgKG5vIGF1dG9j b25mKS4KLSAgICAgICAgICAgICAgICh6ZXJvPyAoYXBwbHkgc3lzdGVtKiAiLi9jb25maWd1cmUi IGZsYWdzKSkpKSkKKyAgICAgICAgICAgICAgIChsZXQgKChzdGF0dXMgKHplcm8/IChhcHBseSBz eXN0ZW0qICh3aGljaCAic2giKSAiLi9jb25maWd1cmUiIGZsYWdzKSkpKQorICAgICAgICAgICAg ICAgIChzdWJzdGl0dXRlKiAiTWFrZWZpbGUiCisgICAgICAgICAgICAgICAgICgoIlskXVsoXVFb KV1bJF1bKF1CT09UU1RSQVBbKV0gYnVpbGQgWyRdWyhdQk9PVFNUUkFQX0FSR1NbKV0iKQorICAg ICAgICAgICAgICAgICAgIiQoUSkkKEJPT1RTVFJBUCkgYnVpbGQgJChCT09UU1RSQVBfQVJHUyki KSkKKyAgICAgICAgICAgICAgICBzdGF0dXMpKSkpCiAgICAgICAgICAoYWRkLWFmdGVyICdpbnN0 YWxsICd3cmFwLXJ1c3RjCiAgICAgICAgICAgIChsYW1iZGEqICgjOmtleSBpbnB1dHMgb3V0cHV0 cyAjOmFsbG93LW90aGVyLWtleXMpCiAgICAgICAgICAgICAgKGxldCAoKG91dCAoYXNzb2MtcmVm IG91dHB1dHMgIm91dCIpKQpAQCAtMzMzLDcgKzQzMyw3IEBAIHNhZmV0eSBhbmQgdGhyZWFkIHNh ZmV0eSBndWFyYW50ZWVzLiIpCiAgICAgICAgICAgICAgIChmaWxlLW5hbWUgKHN0cmluZy1hcHBl bmQgbmFtZSAiLSIgdmVyc2lvbiAiLnRhci5neiIpKQogICAgICAgICAgICAgICAoc2hhMjU2CiAg ICAgICAgICAgICAgICAoYmFzZTMyCi0gICAgICAgICAgICAgICAgIjF5MHp5OGdrMWx5MHdoNTd5 NzhmaXNrN2NkZDkycWsweDd6NjY0ZjZsN2x6bDJrcnFzN3ciKSkpKQorICAgICAgICAgICAgICAg ICIxeTF6eThnazFseTB3aDU3eTc4ZmlzazdjZGQ5MnFrMHg3ejY2NGY2bDdsemwya3Jxczd3Iikp KSkKICAgICAoYnVpbGQtc3lzdGVtIGNhcmdvLWJ1aWxkLXN5c3RlbSkKICAgICAocHJvcGFnYXRl ZC1pbnB1dHMKICAgICAgYCgoImNtYWtlIiAsY21ha2UpCkBAIC04OTksNiArOTk5LDcgQEAgcmVw bGFjZS13aXRoID0gJ3ZlbmRvcmVkLXNvdXJjZXMnCiBkaXJlY3RvcnkgPSAndmVuZG9yJwogIikp KQogICAgICAgICAgICAgICAgKHNldGVudiAiQ01BS0VfQ19DT01QSUxFUiIgY2MpCisgICAgICAg ICAgICAgICA7OyBUT0RPIENDX2k2ODZfdW5rbm93bl9saW51eF9nbnU9Z2NjCiAgICAgICAgICAg ICAgICAoc2V0ZW52ICJDQyIgY2MpKQogICAgICAgICAgICAgICN0KSkKICAgICAgICAgIChkZWxl dGUgJ2NvbmZpZ3VyZSkpKSkK --MP_/NbLG8FjGl6nTwTM7HnD9AOy-- From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: ng0 Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 28 Nov 2017 06:36:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: Danny Milosavljevic Cc: Ricardo Wurmus , Ludovic =?UTF-8?Q?Court=C3=A8s?= , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.15118509425327 (code B ref 28433); Tue, 28 Nov 2017 06:36:01 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Nov 2017 06:35:42 +0000 Received: from localhost ([127.0.0.1]:33381 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJZUc-0001Nr-3i for submit@debbugs.gnu.org; Tue, 28 Nov 2017 01:35:42 -0500 Received: from aibo.runbox.com ([91.220.196.211]:34866) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJZUa-0001Ni-Af for 28433@debbugs.gnu.org; Tue, 28 Nov 2017 01:35:40 -0500 Received: from [10.9.9.210] (helo=mailfront10.runbox.com) by mailtransmit02.runbox with esmtp (Exim 4.86_2) (envelope-from ) id 1eJZUS-0008PP-TT; Tue, 28 Nov 2017 07:35:33 +0100 Received: from dslb-092-073-184-243.092.073.pools.vodafone-ip.de ([92.73.184.243] helo=localhost) by mailfront10.runbox.com with esmtpsa (uid:892961 ) (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) id 1eJZUE-0007eQ-KG; Tue, 28 Nov 2017 07:35:18 +0100 Date: Tue, 28 Nov 2017 06:35:17 +0000 From: ng0 Message-ID: <20171128063517.yrkmqip2mjh4kudn@abyayala> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> <8760aw7ijp.fsf@gnu.org> <20171030171415.0cf6c27d@scratchpost.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="zzlpqqapoxzcg5hu" Content-Disposition: inline In-Reply-To: <20171030171415.0cf6c27d@scratchpost.org> X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) --zzlpqqapoxzcg5hu Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Hey Danny, what's missing here? rustc has been released as 1.22.1 since this thread started. I hope to introduce some people in January at our GNUnet workshop to the open tasks on the Guix rust-build-system and - depending on how they judge their own abilities - get them to work on this throughout the year. Danny Milosavljevic transcribed 0.9K bytes: > Hi Ludo, >=20 > > Yes, I think -m32 is a no-op in this case. >=20 > Yep. I just got rustc to build a bootstrap executable (which fails when = executing it [*], but hey, progress) by making a union-build with all the i= 686 libs. >=20 > Feels kinda icky, but it seems that propagated-inputs don't remember the = #:system it was for, so for example if A propagates B and A specifies syste= m i686, and X specifies system x86_64 and X depends on A, then X's B will b= e x86_64. Weird but understandable I guess... >=20 > Details: >=20 > A: > propagated-inputs > B > arguments system i686 >=20 > X: > native-inputs > A > arguments system x86_64 >=20 > Now X's B is x86_64... >=20 > The workaround is this: >=20 > A: > arguments system i686 > native-inputs > B > union-build out/lib from B (etc) >=20 > X: > native-inputs > A > arguments system x86_64 >=20 > That works. >=20 > In our specific case A =3D "rust-bootstrap", X =3D "rustc", B =3D "glibc"= , "gcc:lib" etc. >=20 > [*] Tries to load libgcc_s.so.1 from the glibc store directory. WTF? >=20 >=20 >=20 >=20 --=20 GnuPG: A88C8ADD129828D7EAC02E52E22F9BBFEE348588 GnuPG: https://c.n0.is/ng0_pubkeys/tree/keys WWW: https://n0.is --zzlpqqapoxzcg5hu Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEqIyK3RKYKNfqwC5S4i+bv+40hYgFAlodA6UACgkQ4i+bv+40 hYheiw/+MFnToTUP7pqzzBUWHSdaLL2AzY9GoRxD0bYvSdhSFoZzbKj6uD/fGbbt BnjFiNckmXbQ6RXJ8p3TkRK+0P00D3qNU5tBH9Qo3Tu0hSfpfc3RA+RZpwfb2LUe DzkCN6cV5QVGZ07p+Qqx1aaI9jTeK3HXCI884GAbnm+I42hIbBMKq8WFQrFVwto2 ZlYoxZZQ9t8v8Sovb6juj2bUVLLQ5YBUzz988fTcrecuOYG/QQ73os1sI2dtt5A3 /akoxe3EVItxgPAIczUv0MbMuMBxboDxWnpkw1pbQrtCGhCwe0+ep+FKqK+D1W0b 2macpBnt4NU0J6naPPJZquA/gAIJCilyemEDWN6ipkwDE8R1zbbCK0ad4yrtGHHj lyv/QMtkg4wf6o50HzyVTPBOo7RxMGZ+li2sdQjayMjlcKOffCRVENxnsPFjxZw+ eyJvajiCJdyyCfKHwtJLGOeWlPZtzpI/Ybv2mkquMoO+c1+Yy3qFPqCAjLLEP1ka 3ouna9oofEI9HzyEo0/JJdOQmgm167m/7JIRsA0pSVDr4AWHKR5nBgNfr47jqs9i xVGsNMEn0vP5C1i8GVI3LE4fOVpY7TyijFsQG6l2NI/9eBgdwximjPt0WiD9OMQd vd3SI+VBy4CFy1zkXlosfQCXQJsgthGECqVAnyZn5ToL7zk2GbE= =uDr5 -----END PGP SIGNATURE----- --zzlpqqapoxzcg5hu-- From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Tue, 28 Nov 2017 10:13:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: ng0 Cc: Ricardo Wurmus , Ludovic =?UTF-8?Q?Court=C3=A8s?= , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.151186394825384 (code B ref 28433); Tue, 28 Nov 2017 10:13:02 +0000 Received: (at 28433) by debbugs.gnu.org; 28 Nov 2017 10:12:28 +0000 Received: from localhost ([127.0.0.1]:33512 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJcsF-0006bE-5k for submit@debbugs.gnu.org; Tue, 28 Nov 2017 05:12:28 -0500 Received: from dd1012.kasserver.com ([85.13.128.8]:40782) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJcsC-0006b3-4c for 28433@debbugs.gnu.org; Tue, 28 Nov 2017 05:12:18 -0500 Received: from localhost (77.118.221.240.wireless.dyn.drei.com [77.118.221.240]) by dd1012.kasserver.com (Postfix) with ESMTPSA id D323D1CA0039; Tue, 28 Nov 2017 11:12:13 +0100 (CET) Date: Tue, 28 Nov 2017 11:12:08 +0100 From: Danny Milosavljevic Message-ID: <20171128111208.34e2d910@scratchpost.org> In-Reply-To: <20171128063517.yrkmqip2mjh4kudn@abyayala> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> <8760aw7ijp.fsf@gnu.org> <20171030171415.0cf6c27d@scratchpost.org> <20171128063517.yrkmqip2mjh4kudn@abyayala> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/3jl1=ZcjNPDqs3O3XGFy/i0" X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) --MP_/3jl1=ZcjNPDqs3O3XGFy/i0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi ng0, I've attached the current version of gnu/packages/rust.scm . For some reason, Rust bootstrap ignores the environment variable AR_x86_64_unknown_linux_gnu even though it doesn't ignore other similar variables (CC_x86_64_unknown_linux_gnu etc). It also ignored config.toml's [target.x86_64-unknown-linux-gnu]. Therefore, the bootstrapping fails when trying to compile the x86_64 version (the i686 version works). To try it, copy the attached file to gnu/packages/rust.scm , overwriting the latter file. Then just invoke $ ./pre-inst-env guix build rustc It will fail like explained above, with the log message: ------------------------------------------------------------------------------------------------------ running: /tmp/guix-build-rustc-1.22.0.drv-0/rustc-1.22.0-src/build/bootstrap/debug/bootstrap build -v finding compilers CC_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/gcc" AR_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/ar" CC_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/gcc" AR_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/ar" CC_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/gcc" AR_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/ar" CXX_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/g++" CXX_x86_64-unknown-linux-gnu = "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/g++" running sanity check thread 'main' panicked at ' couldn't find required command: "/gnu/store/5sv5zy2kgg6iaqyv8zw49w4243j0xkd0-gcc-5.4.0/bin/ar" ------------------------------------------------------------------------------------------------------ I've had something similar before - see CFG_LOCAL_RUST_ROOT substitution in rust.scm - but I thought I fixed it. So the next step would have someone find out why it doesn't pick up the value from the environment variable "AR_x86_64_unknown_linux_gnu". --MP_/3jl1=ZcjNPDqs3O3XGFy/i0 Content-Type: text/x-scheme Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename=rust.scm ;;; GNU Guix --- Functional package management for GNU ;;; Copyright =C2=A9 2016 David Craven ;;; Copyright =C2=A9 2016 Eric Le Bihan ;;; Copyright =C2=A9 2016 ng0 ;;; Copyright =C2=A9 2017 Ben Woodcroft ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages rust) #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages bootstrap) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages cross-base) #:use-module (gnu packages curl) #:use-module (gnu packages elf) #:use-module (gnu packages flex) #:use-module (gnu packages gcc) #:use-module (gnu packages jemalloc) #:use-module (gnu packages linux) #:use-module (gnu packages llvm) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages ssh) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (guix build-system cargo) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (ice-9 match) #:use-module (srfi srfi-26)) ;; Should be one less than the current released version. (define %rust-bootstrap-binaries-version "1.21.0") (define %rust-bootstrap-binaries (origin (method url-fetch) (uri (string-append "https://static.rust-lang.org/dist/" "rust-" %rust-bootstrap-binaries-version "-i686-unknown-linux-gnu.tar.gz")) (sha256 (base32 "1vnvqwz30hvyjcfr1f602lg43v2vlqjr3yhb5vr8xnrcc07yvjmp")))) (define (increment-rust-version rust-version major patch) (match (string-split rust-version #\.) (("1" minor _) (string-append (number->string major) "." (number->string (+ (string->number minor) 1)) "." (number->string patch))))) (define* (cargo-version rustc-version #:optional (patch 0)) ;; Computes the cargo version that matches the rustc version. ;; https://github.com/rust-lang/cargo#Releases (increment-rust-version rustc-version 0 patch)) (define* (rustc-version bootstrap-version #:optional (patch 0)) ;; Computes the rustc version that can be compiled from a given ;; other rustc version. The patch argument is for selecting ;; a stability or security fix. 1.11.0 -> 1.12.1 -> 1.13.0 (increment-rust-version bootstrap-version 1 patch)) (define-public rustc-bootstrap (package (name "rustc-bootstrap") (version %rust-bootstrap-binaries-version) (source %rust-bootstrap-binaries) (build-system gnu-build-system) (native-inputs `(("patchelf" ,patchelf))) (inputs `(("gcc:lib" ,(canonical-package gcc) "lib") ("zlib" ,zlib))) (arguments `(#:tests? #f #:strip-binaries? #f #:system "i686-linux" #:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc:lib (assoc-ref inputs "gcc:lib")) (libc (assoc-ref inputs "libc")) (zlib (assoc-ref inputs "zlib")) (ld-so (string-append libc ,(glibc-dynamic-linker "i686-linu= x"))) (rpath (string-append out "/lib:" zlib "/lib:" libc "/lib:" gcc:lib "/lib")) (rustc (string-append out "/bin/rustc")) (rustdoc (string-append out "/bin/rustdoc"))) (system* "bash" "install.sh" (string-append "--prefix=3D" out) (string-append "--components=3Drustc," "rust-std-i686-unknown-linux-gnu")) (for-each (lambda (file) (system* "patchelf" "--set-rpath" rpath file)) (cons* rustc rustdoc (find-files out "\\.so$"))) (for-each (lambda (file) (system* "patchelf" "--set-interpreter" ld-so fi= le)) (list rustc rustdoc)))))))) (supported-systems '("i686-linux" "x86_64-linux")) (home-page "https://www.rust-lang.org") (synopsis "Prebuilt rust compiler") (description "This package provides a pre-built @command{rustc} compile= r, which can in turn be used to build the final Rust compiler.") (license license:asl2.0))) (define cargo-bootstrap (package (name "cargo-bootstrap") (version (cargo-version %rust-bootstrap-binaries-version)) (source %rust-bootstrap-binaries) (build-system gnu-build-system) (native-inputs `(("patchelf" ,patchelf))) (inputs `(("gcc:lib" ,(canonical-package gcc) "lib"))) (arguments `(#:tests? #f #:strip-binaries? #f #:system "i686-linux" #:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc:lib (assoc-ref inputs "gcc:lib")) (libc (assoc-ref inputs "libc")) (ld-so (string-append libc ,(glibc-dynamic-linker "i686-linu= x"))) (rpath (string-append out "/lib:" libc "/lib:" gcc:lib "/lib")) (cargo (string-append out "/bin/cargo"))) (system* "bash" "install.sh" (string-append "--prefix=3D" out) "--components=3Dcargo") (system* "patchelf" "--set-interpreter" ld-so "--set-rpath" rpath cargo))))))) (supported-systems '("i686-linux" "x86_64-linux")) (home-page "https://www.rust-lang.org") (synopsis "Prebuilt cargo package manager") (description "This package provides a pre-built @command{cargo} package manager, which is required to build itself.") (license license:asl2.0))) (define-public rust-bootstrap (package (name "rust-bootstrap") (version %rust-bootstrap-binaries-version) (source #f) (build-system trivial-build-system) (propagated-inputs `(("rustc-bootstrap" ,rustc-bootstrap) ("cargo-bootstrap" ,cargo-bootstrap) ("gcc" ,(canonical-package gcc)) ("gcc:lib" ,(canonical-package gcc) "lib") ("binutils" ,binutils))) ; for ld. (native-inputs `(("glibc" ,glibc))) (native-search-paths (list (search-path-specification (variable "LD_LIBRARY_PATH") (files '("lib"))))) (arguments `(#:modules ((guix build utils) (guix build union)) #:system "i686-linux" ;#:implicit-inputs? #f #:builder (begin (use-modules (guix build utils)) (use-modules (guix build union)) (let ((out (assoc-ref %outputs "out")) (gcc (assoc-ref %build-inputs "gcc")) (gcc:lib (assoc-ref %build-inputs "gcc:lib")) (glibc (assoc-ref %build-inputs "glibc")) (binutils (assoc-ref %build-inputs "binutils"))) (mkdir-p (string-append out "/bin")) ;(mkdir-p (string-append out "/lib")) ;; Rust requires a C toolchain for linking. The prebuilt ;; binaries expect a compiler called cc. Thus symlink gcc ;; to cc. (symlink (string-append gcc "/bin/gcc") (string-append out "/bin/cc")) ;; cc invokes "ld". Provide it. (symlink (string-append binutils "/bin/ld") (string-append out "/bin/ld")) (union-build (string-append out "/lib") (list (string-append glibc "/lib") (string-append gcc:lib "/lib"))) ;(system "chmod" "+x" (string-append out "/lib/libgcc_s.so.1")) )))) (home-page "https://www.rust-lang.org") (synopsis "Rust bootstrapping meta package") (description "Meta package for a rust environment. Provides pre-compiled rustc-bootstrap and cargo-bootstrap packages.") (license license:asl2.0))) (define-public rustc (package (name "rustc") (version (rustc-version %rust-bootstrap-binaries-version)) (source (origin (method url-fetch) (uri (string-append "https://static.rust-lang.org/dist/" "rustc-" version "-src.tar.gz")) (sha256 (base32 "0saaprfb01z95gxlqqki28a3rq7p5a7labxdn3w1d9n49yy6zj8a")) (modules '((guix build utils))) (snippet `(begin (delete-file-recursively "src/llvm") #t)))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) ; For the tests ("tar" ,tar) ; used to be implicit ("xz" ,xz) ; used to be implicit ("cmake" ,cmake) ("flex" ,flex) ; For the tests ("git" ,git) ("procps" ,procps) ; For the tests ("python-2" ,python-2) ("cargo-bootstrap" ,cargo-bootstrap) ("rust-bootstrap" ,rust-bootstrap) ("which" ,which) ("strace" ,strace) ;("cross-gcc" ,(cross-gcc "i686-linux-gnu" ; #:xbinutils (cross-binutils "i686-linux-gnu") ; #:libc (cross-libc "i686-linux-gnu"))) ;("cross-libc" ,(cross-libc "i686-linux-gnu")) )) (inputs `(("jemalloc" ,jemalloc) ("llvm" ,llvm-3.9.1))) (arguments `( ;#:implicit-inputs? #f #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about mismatched checksums. (delete 'patch-source-shebangs) (delete 'patch-generated-file-shebangs) (delete 'patch-usr-bin-file) (add-after 'unpack 'patch-configure (lambda* (#:key inputs #:allow-other-keys) (substitute* "configure" (("/usr/bin/env") (which "env")) ; Detect target CPU correct= ly. (("probe_need CFG_CURL curl") "") ; Avoid curl build depende= ncy. ;; Newer LLVM has a NVPTX (NVIDIA) backend which the Rust ;; Makefiles don't know about, causing a linker failure ;; if we don't intervene. ;; Therefore, we add NVPTX here. ;; See . ;; For the next release, we will have to use rustbuild. ;; Right now, rustbuild doesn't work yet. (("-DLLVM_TARGETS_TO_BUILD=3D'") "-DLLVM_TARGETS_TO_BUILD=3D'NVPTX;")) ; Make LLVM >=3D 3.8.= 1 work. (substitute* "src/tools/compiletest/src/util.rs" (("(\"amd64\", \"x86_64\"),") "(\"amd64\", \"x86_64\"), (\"nvptx\", \"nvptx\"),")) ; Make LLVM >=3D 3.8.1 work. ;(system* "mv" "src/bootstrap/config.toml.example" ; "src/bootstrap/config.toml") (mkdir-p "src/bootstrap/.cargo") (call-with-output-file "src/bootstrap/.cargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'src/vendor' [target.i686-linux-gnu] linker =3D \"~a/bin/i686-linux-gnu-gcc\" " (assoc-ref inputs "cross-gcc")))) #t)) (add-after 'unpack 'set-env (lambda* (#:key inputs #:allow-other-keys) (define (cross? x) (string-contains x "cross-")) (setenv "SHELL" (which "sh")) (setenv "CONFIG_SHELL" (which "sh")) (setenv "VERBOSE" "1") (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH= ")) (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH")) ;(setenv "PATH" (string-append (assoc-ref inputs "rust-bootstr= ap") "/bin:" (getenv "PATH"))) (for-each (lambda (env-name) (let* ((env-value (getenv env-name)) (search-path (search-path-as-string->list env-value)) (new-search-path (filter (lambda (e) (not (cross? e)= )) search-path)) (new-env-value (list->search-path-as-string new-search-path ":"))) (setenv env-name new-env-value))) '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH")) #t)) (add-after 'unpack 'patch-tests (lambda* (#:key inputs #:allow-other-keys) (let ((bash (assoc-ref inputs "bash"))) (substitute* "src/tools/tidy/src/main.rs" (("^.*cargo.*::check.*$") "")) (substitute* "src/libstd/process.rs" ;; The newline is intentional. ;; There's a line length "tidy" check in Rust which would ;; fail otherwise. (("\"/bin/sh\"") (string-append " \"" bash "/bin/sh\""))) ;; See . (substitute* "src/libstd/sys/unix/process/process_common.rs" (("fn test_process_mask") "#[cfg_attr(target_os =3D \"linu= x\", ignore)] fn test_process_mask")) ;; Our ld-wrapper cannot process non-UTF8 bytes in LIBRARY_P= ATH. ;; See . (delete-file-recursively "src/test/run-make/linker-output-no= n-utf8") #t))) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc (assoc-ref inputs "gcc")) (binutils (assoc-ref inputs "binutils")) (python (assoc-ref inputs "python-2")) (rustc (assoc-ref inputs "rustc-bootstrap")) (llvm (assoc-ref inputs "llvm")) (jemalloc (assoc-ref inputs "jemalloc")) ;; TODO make bootstrapper use i686 libraries! (-lutil, = -ldl, ...). (flags (list (string-append "--prefix=3D" out) ; FIXME (string-append "--datadir=3D" out "/sha= re") ; FIXME (string-append "--infodir=3D" out "/sha= re/info") (string-append "--default-linker=3D" gcc "/bin/= gcc") (string-append "--default-ar=3D" binutils "/bin= /ar") (string-append "--python=3D" python "/bin/pytho= n2") ; FIXME /gnu/store/6rri0kxb9q1gz6lv1dgdwjh41aa9= ijdl-rustc-bootstrap-1.17.0/bin/cargo is wrong. ;(string-append "--local-rust-root=3D" rustc) (string-append "--llvm-root=3D" llvm) (string-append "--jemalloc-root=3D" jemalloc "/= lib") "--release-channel=3Dstable" "--enable-rpath" "--enable-local-rust" "--disable-manage-submodules" ; "--enable-extended" ; FIXME "--disable-sanitizers" ; FIXME re-enable ;"--build=3Dx86_64-unknown-linux-gnu" ;"--enable-full-bootstrap" ))) (mkdir "Xcargo") (call-with-output-file "Xcargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'src/vendor' [target.i686-linux-gnu] linker =3D \"~a/bin/i686-linux-gnu-gcc\" " (assoc-ref inputs "cross-gcc")))) (setenv "CARGO_HOME" (string-append (getcwd) "/Xcargo")) (setenv "CC_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "gcc") "/bin/gcc")) (setenv "CXX_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "gcc") "/bin/g++")) (setenv "AR_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "binutils") "/bin/a= r")) ;(mkdir-p (string-append (getcwd) "/build/bootstrap")) (call-with-output-file (string-append (getcwd) "/config.toml") (lambda (port) (format port "[build] rustc =3D \"~a/bin/rustc\" cargo =3D \"~a/bin/cargo\" verbose =3D 2 [rust] #default-linker =3D \"cc\" #default-ar =3D \"~a/bin/ar\" [target.x86_64-unknown-linux-gnu] ar =3D \"~a/bin/ar\" cc =3D \"~a/bin/gcc\" cxx =3D \"~a/bin/gcc\" linker =3D \"~a/bin/gcc\" " (assoc-ref inputs "rustc-bootstrap") (assoc-ref inputs "cargo-bootstrap") (assoc-ref inputs "binutils") (assoc-ref inputs "binutils") (assoc-ref inputs "gcc") (assoc-ref inputs "gcc") (assoc-ref inputs "gcc") ))) (substitute* "src/bootstrap/bootstrap.py" (("build[.]config_toml =3D config.read[(][)]") "build.config_toml =3D config.read() ; import os ; print(= \"XXXX\", os.getcwd())") (("/etc/NIXOS") (getcwd)) ;; FIXME remove (("self[.]program_config[(]'cargo'[)]") (string-append "'" (assoc-ref inputs "cargo-bootstrap") "/bin/cargo'")) (("cargo[(][)], \"build\"") "cargo(), \"build\", \"--verbo= se\"")) ;; Rust uses a custom configure script (no autoconf). (let ((status (zero? (apply system* (which "sh") "./configur= e" flags)))) (substitute* "src/bootstrap/config.rs" ;; This would override build.cargo and we don't want that.= Alternative: patch config.mk (("CFG_LOCAL_RUST_ROOT") "CFG_LOCAL_RUST_ROOTx")) status)))) (add-after 'install 'wrap-rustc (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (libc (assoc-ref inputs "libc")) (ld-wrapper (assoc-ref inputs "ld-wrapper"))) ;; Let gcc find ld and libc startup files. (wrap-program (string-append out "/bin/rustc") `("PATH" ":" prefix (,(string-append ld-wrapper "/bin"))) `("LIBRARY_PATH" ":" suffix (,(string-append libc "/lib"))= )) #t)))))) ;; rustc invokes gcc, so we need to set its search paths accordingly. (native-search-paths (package-native-search-paths gcc)) (synopsis "Compiler for the Rust progamming language") (description "Rust is a systems programming language that provides memo= ry safety and thread safety guarantees.") (home-page "https://www.rust-lang.org") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) ;; This tries very hard not to get into a cyclic dependency like this: ;; cargo <- cargo-build-system <- cargo. (define-public cargo (package (name "cargo") (version (cargo-version (rustc-version %rust-bootstrap-binaries-version= ))) (source (origin (method url-fetch) (uri (string-append "https://github.com/rust-lang/cargo/archi= ve/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "1y1zy9gk1ly0wh57y78fisk7cdd92qk0x7z664f6l7lzl2krqs7w")))) (build-system cargo-build-system) (propagated-inputs `(("cmake" ,cmake) ("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("libgit2" ,libgit2) ("libssh2" ,libssh2) ("openssl" ,openssl) ("python-2" ,python-2) ("zlib" ,zlib))) (native-inputs `(("rust-openssl" ,(origin (method url-fetch) (uri (crate-uri "openssl" "0.9.6")) (sha256 (base32 "0g28g692gby6izp9qmnwnyxyhf9b0870yhd500p18j9l69lxl00c")))) ("rust-strsim" ,(origin (method url-fetch) (uri (crate-uri "strsim" "0.5.1")) (sha256 (base32 "0bj4fsm1l2yqbfpspyvjf9m3m50pskapcddzm0ji9c74jbgnkh2h")))) ("rust-libc" ,(origin (method url-fetch) (uri (crate-uri "libc" "0.2.18")) (sha256 (base32 "0w5cghr0wx3hi2sclk8r9iyzlbxsakil87ada40q2ykyhky24655")))) ("rust-bitflags" ,(origin (method url-fetch) (uri (crate-uri "bitflags" "0.7.0")) (sha256 (base32 "0v8hh6wdkpk9my8z8442g4hqrqf05h0qj53dsay6mv18lqvqklda")))) ("rust-unicode-normalization" ,(origin (method url-fetch) (uri (crate-uri "unicode-normalization" "0.1.2")) (sha256 (base32 "0whi4xxqcjfsz6ywyrfd5lhgk1a44c86qwgvfqcmzidshcpklr16")))) ("rust-rand" ,(origin (method url-fetch) (uri (crate-uri "rand" "0.3.14")) (sha256 (base32 "1984zvj8572ig28fz6idc4r96fx39h4lzmr07yf7kb7gdn6di497")))) ("rust-gcc" ,(origin (method url-fetch) (uri (crate-uri "gcc" "0.3.39")) (sha256 (base32 "1q0idjvmhp6shkb9hqabh51rgfr8dqpi1xfmyzq7q8vgzybll7kp")))) ("rust-tempdir" ,(origin (method url-fetch) (uri (crate-uri "tempdir" "0.3.5")) (sha256 (base32 "1mij45kgzflkja0h8q9avrik76h5a0b60m9hfd6k9yqxbiplm5w7")))) ("rust-memchr" ,(origin (method url-fetch) (uri (crate-uri "memchr" "0.1.11")) (sha256 (base32 "084d85hjfa3xf5kwdms2mhbkh78m1gl2254cp5swcxj3a7xjkdnq")))) ("rust-rustc-serialize" ,(origin (method url-fetch) (uri (crate-uri "rustc-serialize" "0.3.21")) (sha256 (base32 "064qmyr2508qf78dwcpiv25rfjp9h9vd0wrj4mmwgppjg4fgrydz")))) ("rust-cmake" ,(origin (method url-fetch) (uri (crate-uri "cmake" "0.1.19")) (sha256 (base32 "0am8c8ns1h6b1a5x9z2r1m3rszvya5nccl2pzszzjv5aiiaydgcf")))) ("rust-matches" ,(origin (method url-fetch) (uri (crate-uri "matches" "0.1.4")) (sha256 (base32 "1c8190j84hbicy8jwscw5icfam12j6lcxi02lvmadq9260p65mzg")))) ("rust-winapi" ,(origin (method url-fetch) (uri (crate-uri "winapi" "0.2.8")) (sha256 (base32 "0yh816lh6lf56dpsgxy189c2ai1z3j8mw9si6izqb6wsjkbcjz8n")))) ("rust-pkg-config" ,(origin (method url-fetch) (uri (crate-uri "pkg-config" "0.3.8")) (sha256 (base32 "1ypj4nj2z9z27qg06v3g40jyhw685i3l2wi098d21bvyri781vlc")))) ("rust-libssh2-sys" ,(origin (method url-fetch) (uri (crate-uri "libssh2-sys" "0.2.5")) (sha256 (base32 "0d2r36hrh9vc1821r0v4kywv30svpf37d31calwql69fbij3bqci")))) ("rust-libz-sys" ,(origin (method url-fetch) (uri (crate-uri "libz-sys" "1.0.13")) (sha256 (base32 "034pgvxzgsv37iafgs0lmvd1ifm0bg0zm1xcsn9x71nn8lm93vp5")))) ("rust-curl-sys" ,(origin (method url-fetch) (uri (crate-uri "curl-sys" "0.3.6")) (sha256 (base32 "0fi8kjz3f8m8vfazycs3ddm0h6j3x78hw78gwbvybx71129192i1")))) ("rust-error-chain" ,(origin (method url-fetch) (uri (crate-uri "error-chain" "0.7.2")) (sha256 (base32 "03qjh6l2a9fkiyg0428p7q3dcpi47cbmrqf9zmlymkg43v3v731i")))) ("rust-metadeps" ,(origin (method url-fetch) (uri (crate-uri "metadeps" "1.1.1")) (sha256 (base32 "0l818461bslb7nrs7r1amkqv45n53fcp5sabyqipwx0xxbkzz7w2")))) ("rust-openssl-sys" ,(origin (method url-fetch) (uri (crate-uri "openssl-sys" "0.9.6")) (sha256 (base32 "1hzpyf9z8xg1yn5r9g17bl5j20nifd6s2zp10xh90v7m0sd2yj5i")))) ("rust-fs2" ,(origin (method url-fetch) (uri (crate-uri "fs2" "0.3.0")) (sha256 (base32 "0lg57mgcm1r0m8jm4nqpcrl6lmxg8lj854k2h0r7qp46pphh2034")))) ("rust-log" ,(origin (method url-fetch) (uri (crate-uri "log" "0.3.6")) (sha256 (base32 "0m40hgs3cg57dd5kk1mabfk6gk8z6l1cihar8akx4kmzz1xlk0xb")))) ("rust-filetime" ,(origin (method url-fetch) (uri (crate-uri "filetime" "0.1.10")) (sha256 (base32 "08p9scgv30i1141cnp5xi4pqlnkfci455nrpca55df1r867anqsk")))) ("rust-tar" ,(origin (method url-fetch) (uri (crate-uri "tar" "0.4.9")) (sha256 (base32 "1vi3nl8s3jjf5l20ni47gmh1p4bdjfh7q50fbg7izzqrf7i4i40c")))) ("rust-glob" ,(origin (method url-fetch) (uri (crate-uri "glob" "0.2.11")) (sha256 (base32 "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb")))) ("rust-cfg-if" ,(origin (method url-fetch) (uri (crate-uri "cfg-if" "0.1.0")) (sha256 (base32 "137qikjcal4h75frzcn6mknygqk8vy5bva7w851aydb5gc6pc7ny")))) ("rust-winapi-build" ,(origin (method url-fetch) (uri (crate-uri "winapi-build" "0.1.1")) (sha256 (base32 "1g4rqsgjky0a7530qajn2bbfcrl2v0zb39idgdws9b1l7gp5wc9d")))) ("rust-advapi32-sys" ,(origin (method url-fetch) (uri (crate-uri "advapi32-sys" "0.2.0")) (sha256 (base32 "16largvlrd1800vvdchml0ngnszjlnpqm01rcz5hm7di1h48hrg0")))) ("rust-gdi32-sys" ,(origin (method url-fetch) (uri (crate-uri "gdi32-sys" "0.2.0")) (sha256 (base32 "0605d4ngjsspghwjv4jicajich1gnl0aik9f880ajjzjixd524h9")))) ("rust-ws2_32-sys" ,(origin (method url-fetch) (uri (crate-uri "ws2_32-sys" "0.2.1")) (sha256 (base32 "0ppscg5qfqaw0gzwv2a4nhn5bn01ff9iwn6ysqnzm4n8s3myz76m")))) ("rust-user32-sys" ,(origin (method url-fetch) (uri (crate-uri "user32-sys" "0.2.0")) (sha256 (base32 "0ivxc7hmsxax9crdhxdd1nqwik4s9lhb2x59lc8b88bv20fp3x2f")))) ("rust-unicode-bidi" ,(origin (method url-fetch) (uri (crate-uri "unicode-bidi" "0.2.3")) (sha256 (base32 "0gqbyf6slkgzr14nf6v8dw8a19l5snh6bpms8bpfvzpxdawwxxy1")))) ("rust-net2" ,(origin (method url-fetch) (uri (crate-uri "net2" "0.2.26")) (sha256 (base32 "1qp3q6xynb481rsp3ig1nmqb6qlxfba3shfrmqij88cppsv9rpsy")))) ("rust-utf8-ranges" ,(origin (method url-fetch) (uri (crate-uri "utf8-ranges" "0.1.3")) (sha256 (base32 "03xf604b2v51ag3jgzw92l97xnb10kw9zv948bhc7ja1ik017jm1")))) ("rust-crossbeam" ,(origin (method url-fetch) (uri (crate-uri "crossbeam" "0.2.10")) (sha256 (base32 "15wga0kvk3iqf3l077957j931brf1pl3p74xibd698jccqas4phc")))) ("rust-toml" ,(origin (method url-fetch) (uri (crate-uri "toml" "0.2.1")) (sha256 (base32 "1d1cz43bxrx4fd6j2p6myckf81f72bp47akg36y3flxjkhj60svk")))) ("rust-aho-corasick" ,(origin (method url-fetch) (uri (crate-uri "aho-corasick" "0.5.3")) (sha256 (base32 "0rnvdmlajikq0i4zdy1p3pv699q6apvsxfc7av7byhppllp2r5ya")))) ("rust-psapi-sys" ,(origin (method url-fetch) (uri (crate-uri "psapi-sys" "0.1.0")) (sha256 (base32 "0y14g8qshsfnmb7nk2gs1rpbrs1wrggajmzp4yby4q6k0wd5vkdb")))) ("rust-idna" ,(origin (method url-fetch) (uri (crate-uri "idna" "0.1.0")) (sha256 (base32 "049c2rmlydrrrgrxdaq2v21adx9vkfh6k9x4xj56ckyf01p26lqh")))) ("rust-url" ,(origin (method url-fetch) (uri (crate-uri "url" "1.2.3")) (sha256 (base32 "1myr1i8djbl2bhvvrm6n3h7bj7sl6kh5dmaaz2f7c6x8hyyzgk28")))) ("rust-regex-syntax" ,(origin (method url-fetch) (uri (crate-uri "regex-syntax" "0.3.9")) (sha256 (base32 "0ms9hgdhhsxw9w920i7gipydvagf100bb56jbs192rz86ln01v7r")))) ("rust-kernel32-sys" ,(origin (method url-fetch) (uri (crate-uri "kernel32-sys" "0.2.2")) (sha256 (base32 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm")))) ("rust-term" ,(origin (method url-fetch) (uri (crate-uri "term" "0.4.4")) (sha256 (base32 "0jpr7jb1xidadh0arklwr99r8w1k1dfc4an3ginpsq5nnfigivrx")))) ("rust-thread-id" ,(origin (method url-fetch) (uri (crate-uri "thread-id" "2.0.0")) (sha256 (base32 "00zzs2bx1xw8aqm5plqqgr7bc2zz6zkqrdxq8vpiqb8hc2srslx9")))) ("rust-thread_local" ,(origin (method url-fetch) (uri (crate-uri "thread_local" "0.2.7")) (sha256 (base32 "1mgxikqvhpsic6xk7pan95lvgsky1sdxzw2w5m2l35pgrazxnxl5")))) ("rust-miow" ,(origin (method url-fetch) (uri (crate-uri "miow" "0.1.3")) (sha256 (base32 "16jvfjsp6fr4mbd2sw5hcdmi4dsa0m0aa45gjz78mb1h4mwcdgym")))) ("rust-regex" ,(origin (method url-fetch) (uri (crate-uri "regex" "0.1.80")) (sha256 (base32 "0bs036h3vzc6pj5jj4vc909s9rppq7b808ic99qn0y6gm3karm2g")))) ("rust-num_cpus" ,(origin (method url-fetch) (uri (crate-uri "num_cpus" "1.1.0")) (sha256 (base32 "1bfwcn3yhwa31rinjw9yr7b6gvn6c06hnwnjz06pvm938w4fd448")))) ("rust-libgit2-sys" ,(origin (method url-fetch) (uri (crate-uri "libgit2-sys" "0.6.6")) (sha256 (base32 "074h9q4p60xh6canb0sj4vrc801wqv6p53l9lp0q724bkwzf7967")))) ("rust-env_logger" ,(origin (method url-fetch) (uri (crate-uri "env_logger" "0.3.5")) (sha256 (base32 "0bvcjgkw4s3k1rd7glpflgc8s9a393zjd6jfdgvs8gjvwj0dgaqm")))) ("rust-openssl-probe" ,(origin (method url-fetch) (uri (crate-uri "openssl-probe" "0.1.0")) (sha256 (base32 "0689h6rhzy6dypqr90lsxnf108nsnh952wsx7ggs70s48b44jvbm")))) ("rust-lazy_static" ,(origin (method url-fetch) (uri (crate-uri "lazy_static" "0.2.2")) (sha256 (base32 "16z1h7w702sxnscak38jykxlhxq0b5ip4mndlb46pkaqwzi0xgka")))) ("rust-semver-parser" ,(origin (method url-fetch) (uri (crate-uri "semver-parser" "0.6.1")) (sha256 (base32 "1s8s7a7yg8xhgci17y0xhyyncg229byivhpr0wbs3ljdlyjl73p8")))) ("rust-semver" ,(origin (method url-fetch) (uri (crate-uri "semver" "0.5.1")) (sha256 (base32 "1xbiv8l72rmngb3lgbmk3vd4lalcbzxcnrn085c2b75irl7gcbxf")))) ("rust-docopt" ,(origin (method url-fetch) (uri (crate-uri "docopt" "0.6.86")) (sha256 (base32 "1nf4f4zf5yk0d0l4kl7hkii4na22fhn0l2hgfb46yzv08l2g6zja")))) ("rust-miniz-sys" ,(origin (method url-fetch) (uri (crate-uri "miniz-sys" "0.1.7")) (sha256 (base32 "0m7dlggsxash0k5jkx576p556g9r8vnhyl9244gjxhq1g8rls7wx")))) ("rust-curl" ,(origin (method url-fetch) (uri (crate-uri "curl" "0.4.1")) (sha256 (base32 "1b0y27b6vpqffgzm2kxc1s2i6bgdzxk3wn65g2asbcdxrvys3mcg")))) ("rust-flate2" ,(origin (method url-fetch) (uri (crate-uri "flate2" "0.2.14")) (sha256 (base32 "1fx3zsls5bb1zfx87s5sxkgk853z4nhjsbvq5s6if13kjlg4isry")))) ("rust-git2" ,(origin (method url-fetch) (uri (crate-uri "git2" "0.6.3")) (sha256 (base32 "06b1bw3pwszs8617xn8js6h0j983qjgfwsychw33lshccj3cld05")))) ("rust-crates-io" ,(origin (method url-fetch) (uri (crate-uri "crates-io" "0.4.0")) (sha256 (base32 "0kk6abp1qbpv44hkq1yjp7xgpzjzafs83i1l26ycr0aph1gbwig9")))) ("rust-git2-curl" ,(origin (method url-fetch) (uri (crate-uri "git2-curl" "0.7.0")) (sha256 (base32 "13mzqp4rd81zp78261rlq23iw9aaysdr56484y1yy2xzhk3nnrv8")))) ("rust-bufstream" ,(origin (method url-fetch) (uri (crate-uri "bufstream" "0.1.2")) (sha256 (base32 "0x6h27md1fwabbhbycfldj0wklrpjr520z9p0cpzm60fzzidnj3v")))) ("rust-hamcrest" ,(origin (method url-fetch) (uri (crate-uri "hamcrest" "0.1.1")) (sha256 (base32 "1m49rf7bnkx0qxja56slrjh44zi4z5bjz5x4pblqjw265828y25z")))) ("rust-num" ,(origin (method url-fetch) (uri (crate-uri "num" "0.1.36")) (sha256 (base32 "081i1r3mdz6jasqd7qwraqqfqa3sdpvdvxl1xq0s7ip714xw1rxx")))) ("rust-num-traits" ,(origin (method url-fetch) (uri (crate-uri "num-traits" "0.1.36")) (sha256 (base32 "07688sp4z40p14lh5ywvrpm4zq8kcxzhjks8sg33jsr5da2l4sm1")))) ("rust-num-integer" ,(origin (method url-fetch) (uri (crate-uri "num-integer" "0.1.32")) (sha256 (base32 "14pvaaawl0pgdcgh4dfdd67lz58yxlfl95bry86h28pjnfzxj97v")))) ("rust-num-bigint" ,(origin (method url-fetch) (uri (crate-uri "num-bigint" "0.1.35")) (sha256 (base32 "0jayfkdm33p4zvcahlv46zdfhlzg053mpw32abf2lz0z8xw47cc8")))) ("rust-num-rational" ,(origin (method url-fetch) (uri (crate-uri "num-rational" "0.1.35")) (sha256 (base32 "1bwaygv64qg7i78yqg0v4d0amfhamj598rpy4yxjz9rlhcxn1zsl")))) ("rust-num-iter" ,(origin (method url-fetch) (uri (crate-uri "num-iter" "0.1.32")) (sha256 (base32 "0p74nj5c1mc33h9lx4wpmlmggmn5lnkhxv1225g0aix8d6ciqyi8")))) ("rust-num-complex" ,(origin (method url-fetch) (uri (crate-uri "num-complex" "0.1.35")) (sha256 (base32 "0bzrjfppnnzf9vmkpklhp2dw9sb1lqzydb8r6k83z76i9l2qxizh")))) ("rust-shell-escape" ,(origin (method url-fetch) (uri (crate-uri "shell-escape" "0.1.3")) (sha256 (base32 "1y2fp2brv639icv4a0fdqs1zhlrxq8qbz27ygfa86ifmh5jcjp6x")))))) (arguments `(#:cargo ,cargo-bootstrap #:tests? #f ; FIXME #:modules ((ice-9 match) (srfi srfi-1) ; 'every (guix build utils) (guix build cargo-build-system)) #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about missmatched checksums. (delete 'patch-source-shebangs) (delete 'patch-generated-file-shebangs) (delete 'patch-usr-bin-file) (add-after 'unpack 'unpack-submodule-sources (lambda* (#:key inputs #:allow-other-keys) (define (unpack source target) (mkdir-p target) (with-directory-excursion target (zero? (system* "tar" "xf" source "--strip-components=3D1")))) (define (touch file-name) (call-with-output-file file-name (const #t))) (define (install-rust-library entry) (match entry ((name . src) (if (string-prefix? "rust-" name) (let* ((rust-length (string-length "rust-")) (rust-name (string-drop name rust-length)) (rsrc (string-append "vendor/" rust-name)) (unpack-status (unpack src rsrc))) (touch (string-append rsrc "/.cargo-ok")) (generate-checksums rsrc src) unpack-status))) (_ #t))) (mkdir "vendor") (every install-rust-library inputs))) (add-after 'unpack 'set-environment-up (lambda* (#:key inputs #:allow-other-keys) (let* ((gcc (assoc-ref inputs "gcc")) (cc (string-append gcc "/bin/gcc"))) (mkdir ".cargo") (call-with-output-file ".cargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'vendor' "))) (setenv "CMAKE_C_COMPILER" cc) ;; TODO CC_i686_unknown_linux_gnu=3Dgcc (setenv "CC" cc)) #t)) (delete 'configure)))) (home-page "https://github.com/rust-lang/cargo") (synopsis "Build tool and package manager for Rust") (description "Cargo is a tool that allows Rust projects to declare their dependencies and ensures a reproducible build.") ;; Cargo is dual licensed Apache and MIT. Also contains ;; code from openssl which is GPL2 with linking exception. (license (list license:asl2.0 license:expat license:gpl2)))) --MP_/3jl1=ZcjNPDqs3O3XGFy/i0-- From unknown Sat Sep 13 02:39:28 2025 X-Loop: help-debbugs@gnu.org Subject: [bug#28433] [WIP] Rust update Resent-From: Danny Milosavljevic Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Wed, 29 Nov 2017 08:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 28433 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: moreinfo To: ng0 Cc: Ricardo Wurmus , Ludovic =?UTF-8?Q?Court=C3=A8s?= , 28433@debbugs.gnu.org Received: via spool by 28433-submit@debbugs.gnu.org id=B28433.151194269521054 (code B ref 28433); Wed, 29 Nov 2017 08:05:02 +0000 Received: (at 28433) by debbugs.gnu.org; 29 Nov 2017 08:04:55 +0000 Received: from localhost ([127.0.0.1]:35635 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJxMJ-0005TI-OS for submit@debbugs.gnu.org; Wed, 29 Nov 2017 03:04:55 -0500 Received: from dd1012.kasserver.com ([85.13.128.8]:38278) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eJxMG-0005T5-12 for 28433@debbugs.gnu.org; Wed, 29 Nov 2017 03:04:42 -0500 Received: from localhost (77.118.188.219.wireless.dyn.drei.com [77.118.188.219]) by dd1012.kasserver.com (Postfix) with ESMTPSA id 122471CA07CD; Wed, 29 Nov 2017 09:04:36 +0100 (CET) Date: Wed, 29 Nov 2017 09:04:31 +0100 From: Danny Milosavljevic Message-ID: <20171129090431.5fe37e26@scratchpost.org> In-Reply-To: <20171128063517.yrkmqip2mjh4kudn@abyayala> References: <20170912185023.7de883ff@scratchpost.org> <873767cnsu.fsf@elephly.net> <20171026101728.6493ef46@scratchpost.org> <20171028124258.22553eee@scratchpost.org> <20171028133157.4dc52bd9@scratchpost.org> <20171028135726.76e5a14e@scratchpost.org> <87d1575dsw.fsf@gnu.org> <20171030123501.66cebab2@scratchpost.org> <8760aw7ijp.fsf@gnu.org> <20171030171415.0cf6c27d@scratchpost.org> <20171128063517.yrkmqip2mjh4kudn@abyayala> X-Mailer: Claws Mail 3.15.1-dirty (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/.0Fc56V.LHMN5QU//C+=qGA" X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) --MP_/.0Fc56V.LHMN5QU//C+=qGA Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Disposition: inline New version attached... Rust's libbacktrace now picks up the x86_64 gcc but then that uses the i686 ld. --MP_/.0Fc56V.LHMN5QU//C+=qGA Content-Type: text/x-scheme Content-Transfer-Encoding: quoted-printable Content-Disposition: attachment; filename=rust.scm ;;; GNU Guix --- Functional package management for GNU ;;; Copyright =C2=A9 2016 David Craven ;;; Copyright =C2=A9 2016 Eric Le Bihan ;;; Copyright =C2=A9 2016 ng0 ;;; Copyright =C2=A9 2017 Ben Woodcroft ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages rust) #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages bootstrap) #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages cross-base) #:use-module (gnu packages curl) #:use-module (gnu packages elf) #:use-module (gnu packages flex) #:use-module (gnu packages gcc) #:use-module (gnu packages jemalloc) #:use-module (gnu packages linux) #:use-module (gnu packages llvm) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages ssh) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (guix build-system cargo) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (ice-9 match) #:use-module (srfi srfi-26)) ;; Should be one less than the current released version. (define %rust-bootstrap-binaries-version "1.21.0") (define %rust-bootstrap-binaries (origin (method url-fetch) (uri (string-append "https://static.rust-lang.org/dist/" "rust-" %rust-bootstrap-binaries-version "-i686-unknown-linux-gnu.tar.gz")) (sha256 (base32 "1vnvqwz30hvyjcfr1f602lg43v2vlqjr3yhb5vr8xnrcc07yvjmp")))) (define (increment-rust-version rust-version major patch) (match (string-split rust-version #\.) (("1" minor _) (string-append (number->string major) "." (number->string (+ (string->number minor) 1)) "." (number->string patch))))) (define* (cargo-version rustc-version #:optional (patch 0)) ;; Computes the cargo version that matches the rustc version. ;; https://github.com/rust-lang/cargo#Releases (increment-rust-version rustc-version 0 patch)) (define* (rustc-version bootstrap-version #:optional (patch 0)) ;; Computes the rustc version that can be compiled from a given ;; other rustc version. The patch argument is for selecting ;; a stability or security fix. 1.11.0 -> 1.12.1 -> 1.13.0 (increment-rust-version bootstrap-version 1 patch)) (define-public rustc-bootstrap (package (name "rustc-bootstrap") (version %rust-bootstrap-binaries-version) (source %rust-bootstrap-binaries) (build-system gnu-build-system) (native-inputs `(("patchelf" ,patchelf))) (inputs `(("gcc:lib" ,(canonical-package gcc) "lib") ("zlib" ,zlib))) (arguments `(#:tests? #f #:strip-binaries? #f #:system "i686-linux" #:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc:lib (assoc-ref inputs "gcc:lib")) (libc (assoc-ref inputs "libc")) (zlib (assoc-ref inputs "zlib")) (ld-so (string-append libc ,(glibc-dynamic-linker "i686-linu= x"))) (rpath (string-append out "/lib:" zlib "/lib:" libc "/lib:" gcc:lib "/lib")) (rustc (string-append out "/bin/rustc")) (rustdoc (string-append out "/bin/rustdoc"))) (system* "bash" "install.sh" (string-append "--prefix=3D" out) (string-append "--components=3Drustc," "rust-std-i686-unknown-linux-gnu")) (for-each (lambda (file) (system* "patchelf" "--set-rpath" rpath file)) (cons* rustc rustdoc (find-files out "\\.so$"))) (for-each (lambda (file) (system* "patchelf" "--set-interpreter" ld-so fi= le)) (list rustc rustdoc)))))))) (supported-systems '("i686-linux" "x86_64-linux")) (home-page "https://www.rust-lang.org") (synopsis "Prebuilt rust compiler") (description "This package provides a pre-built @command{rustc} compile= r, which can in turn be used to build the final Rust compiler.") (license license:asl2.0))) (define cargo-bootstrap (package (name "cargo-bootstrap") (version (cargo-version %rust-bootstrap-binaries-version)) (source %rust-bootstrap-binaries) (build-system gnu-build-system) (native-inputs `(("patchelf" ,patchelf))) (inputs `(("gcc:lib" ,(canonical-package gcc) "lib"))) (arguments `(#:tests? #f #:strip-binaries? #f #:system "i686-linux" #:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc:lib (assoc-ref inputs "gcc:lib")) (libc (assoc-ref inputs "libc")) (ld-so (string-append libc ,(glibc-dynamic-linker "i686-linu= x"))) (rpath (string-append out "/lib:" libc "/lib:" gcc:lib "/lib")) (cargo (string-append out "/bin/cargo"))) (system* "bash" "install.sh" (string-append "--prefix=3D" out) "--components=3Dcargo") (system* "patchelf" "--set-interpreter" ld-so "--set-rpath" rpath cargo))))))) (supported-systems '("i686-linux" "x86_64-linux")) (home-page "https://www.rust-lang.org") (synopsis "Prebuilt cargo package manager") (description "This package provides a pre-built @command{cargo} package manager, which is required to build itself.") (license license:asl2.0))) (define-public rust-bootstrap (package (name "rust-bootstrap") (version %rust-bootstrap-binaries-version) (source #f) (build-system trivial-build-system) (propagated-inputs `(("rustc-bootstrap" ,rustc-bootstrap) ("cargo-bootstrap" ,cargo-bootstrap) ("gcc" ,(canonical-package gcc)) ("gcc:lib" ,(canonical-package gcc) "lib") ("binutils" ,binutils))) ; for ld. (native-inputs `(("glibc" ,glibc))) (native-search-paths (list (search-path-specification (variable "LD_LIBRARY_PATH") (files '("lib"))))) (arguments `(#:modules ((guix build utils) (guix build union)) #:system "i686-linux" ;#:implicit-inputs? #f #:builder (begin (use-modules (guix build utils)) (use-modules (guix build union)) (let ((out (assoc-ref %outputs "out")) (gcc (assoc-ref %build-inputs "gcc")) (gcc:lib (assoc-ref %build-inputs "gcc:lib")) (glibc (assoc-ref %build-inputs "glibc")) (binutils (assoc-ref %build-inputs "binutils"))) (mkdir-p (string-append out "/bin")) ;(mkdir-p (string-append out "/lib")) ;; Rust requires a C toolchain for linking. The prebuilt ;; binaries expect a compiler called cc. Thus symlink gcc ;; to cc. (symlink (string-append gcc "/bin/gcc") (string-append out "/bin/cc")) ;; cc invokes "ld". Provide it. (symlink (string-append binutils "/bin/ld") (string-append out "/bin/ld")) (union-build (string-append out "/lib") (list (string-append glibc "/lib") (string-append gcc:lib "/lib"))) ;(system "chmod" "+x" (string-append out "/lib/libgcc_s.so.1")) )))) (home-page "https://www.rust-lang.org") (synopsis "Rust bootstrapping meta package") (description "Meta package for a rust environment. Provides pre-compiled rustc-bootstrap and cargo-bootstrap packages.") (license license:asl2.0))) (define-public rustc (package (name "rustc") (version (rustc-version %rust-bootstrap-binaries-version)) (source (origin (method url-fetch) (uri (string-append "https://static.rust-lang.org/dist/" "rustc-" version "-src.tar.gz")) (sha256 (base32 "0saaprfb01z95gxlqqki28a3rq7p5a7labxdn3w1d9n49yy6zj8a")) (modules '((guix build utils))) (snippet `(begin (delete-file-recursively "src/llvm") #t)))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) ; For the tests ("tar" ,tar) ; used to be implicit ("xz" ,xz) ; used to be implicit ("cmake" ,cmake) ("flex" ,flex) ; For the tests ("git" ,git) ("procps" ,procps) ; For the tests ("python-2" ,python-2) ("cargo-bootstrap" ,cargo-bootstrap) ("rust-bootstrap" ,rust-bootstrap) ("which" ,which) ("strace" ,strace) ;("cross-gcc" ,(cross-gcc "i686-linux-gnu" ; #:xbinutils (cross-binutils "i686-linux-gnu") ; #:libc (cross-libc "i686-linux-gnu"))) ;("cross-libc" ,(cross-libc "i686-linux-gnu")) )) (inputs `(("jemalloc" ,jemalloc) ("llvm" ,llvm-3.9.1))) (arguments `( ;#:implicit-inputs? #f #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about mismatched checksums. (delete 'patch-source-shebangs) (delete 'patch-generated-file-shebangs) (delete 'patch-usr-bin-file) (add-after 'unpack 'patch-configure (lambda* (#:key inputs #:allow-other-keys) (substitute* "configure" (("/usr/bin/env") (which "env")) ; Detect target CPU correct= ly. (("probe_need CFG_CURL curl") "") ; Avoid curl build depende= ncy. ;; Newer LLVM has a NVPTX (NVIDIA) backend which the Rust ;; Makefiles don't know about, causing a linker failure ;; if we don't intervene. ;; Therefore, we add NVPTX here. ;; See . ;; For the next release, we will have to use rustbuild. ;; Right now, rustbuild doesn't work yet. (("-DLLVM_TARGETS_TO_BUILD=3D'") "-DLLVM_TARGETS_TO_BUILD=3D'NVPTX;")) ; Make LLVM >=3D 3.8.= 1 work. (substitute* "src/tools/compiletest/src/util.rs" (("(\"amd64\", \"x86_64\"),") "(\"amd64\", \"x86_64\"), (\"nvptx\", \"nvptx\"),")) ; Make LLVM >=3D 3.8.1 work. ;(system* "mv" "src/bootstrap/config.toml.example" ; "src/bootstrap/config.toml") (mkdir-p "src/bootstrap/.cargo") (call-with-output-file "src/bootstrap/.cargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'src/vendor' [target.i686-linux-gnu] linker =3D \"~a/bin/i686-linux-gnu-gcc\" " (assoc-ref inputs "cross-gcc")))) #t)) (add-after 'unpack 'set-env (lambda* (#:key inputs #:allow-other-keys) (define (cross? x) (string-contains x "cross-")) (setenv "SHELL" (which "sh")) (setenv "CONFIG_SHELL" (which "sh")) (setenv "VERBOSE" "1") (setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) (setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH= ")) (setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH")) ;(setenv "PATH" (string-append (assoc-ref inputs "rust-bootstr= ap") "/bin:" (getenv "PATH"))) (for-each (lambda (env-name) (let* ((env-value (getenv env-name)) (search-path (search-path-as-string->list env-value)) (new-search-path (filter (lambda (e) (not (cross? e)= )) search-path)) (new-env-value (list->search-path-as-string new-search-path ":"))) (setenv env-name new-env-value))) '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH" "LIBRARY_PATH")) #t)) (add-after 'unpack 'patch-tests (lambda* (#:key inputs #:allow-other-keys) (let ((bash (assoc-ref inputs "bash"))) (substitute* "src/tools/tidy/src/main.rs" (("^.*cargo.*::check.*$") "")) (substitute* "src/libbacktrace/configure" (("sh -c") (string-append bash "/bin/sh -c")) (("'sh") (string-append "'" bash "/bin/sh"))) (substitute* "src/build_helper/lib.rs" (("return Some[(]parent[.]join[(][&]file[)][)];") " let target_u =3D target.replace(\"-\", \"_\"); return match env::var(&format!(\"AR_{}\", target_u)).ok() { Some(s) =3D> Some(PathBuf::from(s)), None =3D> Some(PathBuf::from(\"arx\")), }; ")) (substitute* '("src/liballoc_jemalloc/build.rs" "src/vendor/lzma-sys/build.rs" "src/vendor/libz-sys/build.rs" "src/vendor/curl-sys/build.rs" "src/vendor/git2/src/cred.rs" ; FIXME retaine= d? "src/vendor/backtrace-sys/build.rs" "src/bootstrap/install.rs" "src/test/run-pass/process-sigpipe.rs" "src/libstd/build.rs") (("\"sh\"") (string-append "\"" bash "/bin/sh\""))) (substitute* "src/libstd/process.rs" ;; The newline is intentional. ;; There's a line length "tidy" check in Rust which would ;; fail otherwise. (("\"/bin/sh\"") (string-append " \"" bash "/bin/sh\""))) ;; See . (substitute* "src/libstd/sys/unix/process/process_common.rs" (("fn test_process_mask") "#[cfg_attr(target_os =3D \"linu= x\", ignore)] fn test_process_mask")) ;; Our ld-wrapper cannot process non-UTF8 bytes in LIBRARY_P= ATH. ;; See . (delete-file-recursively "src/test/run-make/linker-output-no= n-utf8") #t))) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (gcc (assoc-ref inputs "gcc")) (binutils (assoc-ref inputs "binutils")) (python (assoc-ref inputs "python-2")) (rustc (assoc-ref inputs "rustc-bootstrap")) (llvm (assoc-ref inputs "llvm")) (jemalloc (assoc-ref inputs "jemalloc")) ;; TODO make bootstrapper use i686 libraries! (-lutil, = -ldl, ...). (flags (list (string-append "--prefix=3D" out) ; FIXME (string-append "--datadir=3D" out "/sha= re") ; FIXME (string-append "--infodir=3D" out "/sha= re/info") (string-append "--default-linker=3D" gcc "/bin/= gcc") (string-append "--default-ar=3D" binutils "/bin= /ar") (string-append "--python=3D" python "/bin/pytho= n2") ; FIXME /gnu/store/6rri0kxb9q1gz6lv1dgdwjh41aa9= ijdl-rustc-bootstrap-1.17.0/bin/cargo is wrong. ;(string-append "--local-rust-root=3D" rustc) (string-append "--llvm-root=3D" llvm) (string-append "--jemalloc-root=3D" jemalloc "/= lib") "--release-channel=3Dstable" "--enable-rpath" "--enable-local-rust" "--disable-manage-submodules" ; "--enable-extended" ; FIXME "--disable-sanitizers" ; FIXME re-enable ;"--build=3Dx86_64-unknown-linux-gnu" ;"--enable-full-bootstrap" ))) (mkdir "Xcargo") (call-with-output-file "Xcargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'src/vendor' [target.i686-linux-gnu] linker =3D \"~a/bin/i686-linux-gnu-gcc\" " (assoc-ref inputs "cross-gcc")))) (setenv "CARGO_HOME" (string-append (getcwd) "/Xcargo")) (setenv "CC_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "gcc") "/bin/gcc")) (setenv "CXX_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "gcc") "/bin/g++")) (setenv "AR_x86_64_unknown_linux_gnu" (string-append (assoc-ref inputs "binutils") "/bin/a= r")) ;(mkdir-p (string-append (getcwd) "/build/bootstrap")) (call-with-output-file (string-append (getcwd) "/config.toml") (lambda (port) (format port "[build] rustc =3D \"~a/bin/rustc\" cargo =3D \"~a/bin/cargo\" verbose =3D 2 [rust] #default-linker =3D \"cc\" #default-ar =3D \"~a/bin/ar\" [target.x86_64-unknown-linux-gnu] ar =3D \"~a/bin/ar\" cc =3D \"~a/bin/gcc\" cxx =3D \"~a/bin/gcc\" linker =3D \"~a/bin/gcc\" " (assoc-ref inputs "rustc-bootstrap") (assoc-ref inputs "cargo-bootstrap") (assoc-ref inputs "binutils") (assoc-ref inputs "binutils") (assoc-ref inputs "gcc") (assoc-ref inputs "gcc") (assoc-ref inputs "gcc") ))) (substitute* "src/bootstrap/bootstrap.py" (("build[.]config_toml =3D config.read[(][)]") "build.config_toml =3D config.read() ; import os ; print(= \"XXXX\", os.getcwd())") (("/etc/NIXOS") (getcwd)) ;; FIXME remove (("self[.]program_config[(]'cargo'[)]") (string-append "'" (assoc-ref inputs "cargo-bootstrap") "/bin/cargo'")) (("cargo[(][)], \"build\"") "cargo(), \"build\", \"--verbo= se\"")) ;; Rust uses a custom configure script (no autoconf). (let ((status (zero? (apply system* (which "sh") "./configur= e" flags)))) (substitute* "src/bootstrap/config.rs" ;; This would override build.cargo and we don't want that.= Alternative: patch config.mk (("CFG_LOCAL_RUST_ROOT") "CFG_LOCAL_RUST_ROOTx")) status)))) (add-after 'install 'wrap-rustc (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (libc (assoc-ref inputs "libc")) (ld-wrapper (assoc-ref inputs "ld-wrapper"))) ;; Let gcc find ld and libc startup files. (wrap-program (string-append out "/bin/rustc") `("PATH" ":" prefix (,(string-append ld-wrapper "/bin"))) `("LIBRARY_PATH" ":" suffix (,(string-append libc "/lib"))= )) #t)))))) ;; rustc invokes gcc, so we need to set its search paths accordingly. (native-search-paths (package-native-search-paths gcc)) (synopsis "Compiler for the Rust progamming language") (description "Rust is a systems programming language that provides memo= ry safety and thread safety guarantees.") (home-page "https://www.rust-lang.org") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) ;; This tries very hard not to get into a cyclic dependency like this: ;; cargo <- cargo-build-system <- cargo. (define-public cargo (package (name "cargo") (version (cargo-version (rustc-version %rust-bootstrap-binaries-version= ))) (source (origin (method url-fetch) (uri (string-append "https://github.com/rust-lang/cargo/archi= ve/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "1y1zy9gk1ly0wh57y78fisk7cdd92qk0x7z664f6l7lzl2krqs7w")))) (build-system cargo-build-system) (propagated-inputs `(("cmake" ,cmake) ("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) ("libgit2" ,libgit2) ("libssh2" ,libssh2) ("openssl" ,openssl) ("python-2" ,python-2) ("zlib" ,zlib))) (native-inputs `(("rust-openssl" ,(origin (method url-fetch) (uri (crate-uri "openssl" "0.9.6")) (sha256 (base32 "0g28g692gby6izp9qmnwnyxyhf9b0870yhd500p18j9l69lxl00c")))) ("rust-strsim" ,(origin (method url-fetch) (uri (crate-uri "strsim" "0.5.1")) (sha256 (base32 "0bj4fsm1l2yqbfpspyvjf9m3m50pskapcddzm0ji9c74jbgnkh2h")))) ("rust-libc" ,(origin (method url-fetch) (uri (crate-uri "libc" "0.2.18")) (sha256 (base32 "0w5cghr0wx3hi2sclk8r9iyzlbxsakil87ada40q2ykyhky24655")))) ("rust-bitflags" ,(origin (method url-fetch) (uri (crate-uri "bitflags" "0.7.0")) (sha256 (base32 "0v8hh6wdkpk9my8z8442g4hqrqf05h0qj53dsay6mv18lqvqklda")))) ("rust-unicode-normalization" ,(origin (method url-fetch) (uri (crate-uri "unicode-normalization" "0.1.2")) (sha256 (base32 "0whi4xxqcjfsz6ywyrfd5lhgk1a44c86qwgvfqcmzidshcpklr16")))) ("rust-rand" ,(origin (method url-fetch) (uri (crate-uri "rand" "0.3.14")) (sha256 (base32 "1984zvj8572ig28fz6idc4r96fx39h4lzmr07yf7kb7gdn6di497")))) ("rust-gcc" ,(origin (method url-fetch) (uri (crate-uri "gcc" "0.3.39")) (sha256 (base32 "1q0idjvmhp6shkb9hqabh51rgfr8dqpi1xfmyzq7q8vgzybll7kp")))) ("rust-tempdir" ,(origin (method url-fetch) (uri (crate-uri "tempdir" "0.3.5")) (sha256 (base32 "1mij45kgzflkja0h8q9avrik76h5a0b60m9hfd6k9yqxbiplm5w7")))) ("rust-memchr" ,(origin (method url-fetch) (uri (crate-uri "memchr" "0.1.11")) (sha256 (base32 "084d85hjfa3xf5kwdms2mhbkh78m1gl2254cp5swcxj3a7xjkdnq")))) ("rust-rustc-serialize" ,(origin (method url-fetch) (uri (crate-uri "rustc-serialize" "0.3.21")) (sha256 (base32 "064qmyr2508qf78dwcpiv25rfjp9h9vd0wrj4mmwgppjg4fgrydz")))) ("rust-cmake" ,(origin (method url-fetch) (uri (crate-uri "cmake" "0.1.19")) (sha256 (base32 "0am8c8ns1h6b1a5x9z2r1m3rszvya5nccl2pzszzjv5aiiaydgcf")))) ("rust-matches" ,(origin (method url-fetch) (uri (crate-uri "matches" "0.1.4")) (sha256 (base32 "1c8190j84hbicy8jwscw5icfam12j6lcxi02lvmadq9260p65mzg")))) ("rust-winapi" ,(origin (method url-fetch) (uri (crate-uri "winapi" "0.2.8")) (sha256 (base32 "0yh816lh6lf56dpsgxy189c2ai1z3j8mw9si6izqb6wsjkbcjz8n")))) ("rust-pkg-config" ,(origin (method url-fetch) (uri (crate-uri "pkg-config" "0.3.8")) (sha256 (base32 "1ypj4nj2z9z27qg06v3g40jyhw685i3l2wi098d21bvyri781vlc")))) ("rust-libssh2-sys" ,(origin (method url-fetch) (uri (crate-uri "libssh2-sys" "0.2.5")) (sha256 (base32 "0d2r36hrh9vc1821r0v4kywv30svpf37d31calwql69fbij3bqci")))) ("rust-libz-sys" ,(origin (method url-fetch) (uri (crate-uri "libz-sys" "1.0.13")) (sha256 (base32 "034pgvxzgsv37iafgs0lmvd1ifm0bg0zm1xcsn9x71nn8lm93vp5")))) ("rust-curl-sys" ,(origin (method url-fetch) (uri (crate-uri "curl-sys" "0.3.6")) (sha256 (base32 "0fi8kjz3f8m8vfazycs3ddm0h6j3x78hw78gwbvybx71129192i1")))) ("rust-error-chain" ,(origin (method url-fetch) (uri (crate-uri "error-chain" "0.7.2")) (sha256 (base32 "03qjh6l2a9fkiyg0428p7q3dcpi47cbmrqf9zmlymkg43v3v731i")))) ("rust-metadeps" ,(origin (method url-fetch) (uri (crate-uri "metadeps" "1.1.1")) (sha256 (base32 "0l818461bslb7nrs7r1amkqv45n53fcp5sabyqipwx0xxbkzz7w2")))) ("rust-openssl-sys" ,(origin (method url-fetch) (uri (crate-uri "openssl-sys" "0.9.6")) (sha256 (base32 "1hzpyf9z8xg1yn5r9g17bl5j20nifd6s2zp10xh90v7m0sd2yj5i")))) ("rust-fs2" ,(origin (method url-fetch) (uri (crate-uri "fs2" "0.3.0")) (sha256 (base32 "0lg57mgcm1r0m8jm4nqpcrl6lmxg8lj854k2h0r7qp46pphh2034")))) ("rust-log" ,(origin (method url-fetch) (uri (crate-uri "log" "0.3.6")) (sha256 (base32 "0m40hgs3cg57dd5kk1mabfk6gk8z6l1cihar8akx4kmzz1xlk0xb")))) ("rust-filetime" ,(origin (method url-fetch) (uri (crate-uri "filetime" "0.1.10")) (sha256 (base32 "08p9scgv30i1141cnp5xi4pqlnkfci455nrpca55df1r867anqsk")))) ("rust-tar" ,(origin (method url-fetch) (uri (crate-uri "tar" "0.4.9")) (sha256 (base32 "1vi3nl8s3jjf5l20ni47gmh1p4bdjfh7q50fbg7izzqrf7i4i40c")))) ("rust-glob" ,(origin (method url-fetch) (uri (crate-uri "glob" "0.2.11")) (sha256 (base32 "1ysvi72slkw784fcsymgj4308c3y03gwjjzqxp80xdjnkbh8vqcb")))) ("rust-cfg-if" ,(origin (method url-fetch) (uri (crate-uri "cfg-if" "0.1.0")) (sha256 (base32 "137qikjcal4h75frzcn6mknygqk8vy5bva7w851aydb5gc6pc7ny")))) ("rust-winapi-build" ,(origin (method url-fetch) (uri (crate-uri "winapi-build" "0.1.1")) (sha256 (base32 "1g4rqsgjky0a7530qajn2bbfcrl2v0zb39idgdws9b1l7gp5wc9d")))) ("rust-advapi32-sys" ,(origin (method url-fetch) (uri (crate-uri "advapi32-sys" "0.2.0")) (sha256 (base32 "16largvlrd1800vvdchml0ngnszjlnpqm01rcz5hm7di1h48hrg0")))) ("rust-gdi32-sys" ,(origin (method url-fetch) (uri (crate-uri "gdi32-sys" "0.2.0")) (sha256 (base32 "0605d4ngjsspghwjv4jicajich1gnl0aik9f880ajjzjixd524h9")))) ("rust-ws2_32-sys" ,(origin (method url-fetch) (uri (crate-uri "ws2_32-sys" "0.2.1")) (sha256 (base32 "0ppscg5qfqaw0gzwv2a4nhn5bn01ff9iwn6ysqnzm4n8s3myz76m")))) ("rust-user32-sys" ,(origin (method url-fetch) (uri (crate-uri "user32-sys" "0.2.0")) (sha256 (base32 "0ivxc7hmsxax9crdhxdd1nqwik4s9lhb2x59lc8b88bv20fp3x2f")))) ("rust-unicode-bidi" ,(origin (method url-fetch) (uri (crate-uri "unicode-bidi" "0.2.3")) (sha256 (base32 "0gqbyf6slkgzr14nf6v8dw8a19l5snh6bpms8bpfvzpxdawwxxy1")))) ("rust-net2" ,(origin (method url-fetch) (uri (crate-uri "net2" "0.2.26")) (sha256 (base32 "1qp3q6xynb481rsp3ig1nmqb6qlxfba3shfrmqij88cppsv9rpsy")))) ("rust-utf8-ranges" ,(origin (method url-fetch) (uri (crate-uri "utf8-ranges" "0.1.3")) (sha256 (base32 "03xf604b2v51ag3jgzw92l97xnb10kw9zv948bhc7ja1ik017jm1")))) ("rust-crossbeam" ,(origin (method url-fetch) (uri (crate-uri "crossbeam" "0.2.10")) (sha256 (base32 "15wga0kvk3iqf3l077957j931brf1pl3p74xibd698jccqas4phc")))) ("rust-toml" ,(origin (method url-fetch) (uri (crate-uri "toml" "0.2.1")) (sha256 (base32 "1d1cz43bxrx4fd6j2p6myckf81f72bp47akg36y3flxjkhj60svk")))) ("rust-aho-corasick" ,(origin (method url-fetch) (uri (crate-uri "aho-corasick" "0.5.3")) (sha256 (base32 "0rnvdmlajikq0i4zdy1p3pv699q6apvsxfc7av7byhppllp2r5ya")))) ("rust-psapi-sys" ,(origin (method url-fetch) (uri (crate-uri "psapi-sys" "0.1.0")) (sha256 (base32 "0y14g8qshsfnmb7nk2gs1rpbrs1wrggajmzp4yby4q6k0wd5vkdb")))) ("rust-idna" ,(origin (method url-fetch) (uri (crate-uri "idna" "0.1.0")) (sha256 (base32 "049c2rmlydrrrgrxdaq2v21adx9vkfh6k9x4xj56ckyf01p26lqh")))) ("rust-url" ,(origin (method url-fetch) (uri (crate-uri "url" "1.2.3")) (sha256 (base32 "1myr1i8djbl2bhvvrm6n3h7bj7sl6kh5dmaaz2f7c6x8hyyzgk28")))) ("rust-regex-syntax" ,(origin (method url-fetch) (uri (crate-uri "regex-syntax" "0.3.9")) (sha256 (base32 "0ms9hgdhhsxw9w920i7gipydvagf100bb56jbs192rz86ln01v7r")))) ("rust-kernel32-sys" ,(origin (method url-fetch) (uri (crate-uri "kernel32-sys" "0.2.2")) (sha256 (base32 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm")))) ("rust-term" ,(origin (method url-fetch) (uri (crate-uri "term" "0.4.4")) (sha256 (base32 "0jpr7jb1xidadh0arklwr99r8w1k1dfc4an3ginpsq5nnfigivrx")))) ("rust-thread-id" ,(origin (method url-fetch) (uri (crate-uri "thread-id" "2.0.0")) (sha256 (base32 "00zzs2bx1xw8aqm5plqqgr7bc2zz6zkqrdxq8vpiqb8hc2srslx9")))) ("rust-thread_local" ,(origin (method url-fetch) (uri (crate-uri "thread_local" "0.2.7")) (sha256 (base32 "1mgxikqvhpsic6xk7pan95lvgsky1sdxzw2w5m2l35pgrazxnxl5")))) ("rust-miow" ,(origin (method url-fetch) (uri (crate-uri "miow" "0.1.3")) (sha256 (base32 "16jvfjsp6fr4mbd2sw5hcdmi4dsa0m0aa45gjz78mb1h4mwcdgym")))) ("rust-regex" ,(origin (method url-fetch) (uri (crate-uri "regex" "0.1.80")) (sha256 (base32 "0bs036h3vzc6pj5jj4vc909s9rppq7b808ic99qn0y6gm3karm2g")))) ("rust-num_cpus" ,(origin (method url-fetch) (uri (crate-uri "num_cpus" "1.1.0")) (sha256 (base32 "1bfwcn3yhwa31rinjw9yr7b6gvn6c06hnwnjz06pvm938w4fd448")))) ("rust-libgit2-sys" ,(origin (method url-fetch) (uri (crate-uri "libgit2-sys" "0.6.6")) (sha256 (base32 "074h9q4p60xh6canb0sj4vrc801wqv6p53l9lp0q724bkwzf7967")))) ("rust-env_logger" ,(origin (method url-fetch) (uri (crate-uri "env_logger" "0.3.5")) (sha256 (base32 "0bvcjgkw4s3k1rd7glpflgc8s9a393zjd6jfdgvs8gjvwj0dgaqm")))) ("rust-openssl-probe" ,(origin (method url-fetch) (uri (crate-uri "openssl-probe" "0.1.0")) (sha256 (base32 "0689h6rhzy6dypqr90lsxnf108nsnh952wsx7ggs70s48b44jvbm")))) ("rust-lazy_static" ,(origin (method url-fetch) (uri (crate-uri "lazy_static" "0.2.2")) (sha256 (base32 "16z1h7w702sxnscak38jykxlhxq0b5ip4mndlb46pkaqwzi0xgka")))) ("rust-semver-parser" ,(origin (method url-fetch) (uri (crate-uri "semver-parser" "0.6.1")) (sha256 (base32 "1s8s7a7yg8xhgci17y0xhyyncg229byivhpr0wbs3ljdlyjl73p8")))) ("rust-semver" ,(origin (method url-fetch) (uri (crate-uri "semver" "0.5.1")) (sha256 (base32 "1xbiv8l72rmngb3lgbmk3vd4lalcbzxcnrn085c2b75irl7gcbxf")))) ("rust-docopt" ,(origin (method url-fetch) (uri (crate-uri "docopt" "0.6.86")) (sha256 (base32 "1nf4f4zf5yk0d0l4kl7hkii4na22fhn0l2hgfb46yzv08l2g6zja")))) ("rust-miniz-sys" ,(origin (method url-fetch) (uri (crate-uri "miniz-sys" "0.1.7")) (sha256 (base32 "0m7dlggsxash0k5jkx576p556g9r8vnhyl9244gjxhq1g8rls7wx")))) ("rust-curl" ,(origin (method url-fetch) (uri (crate-uri "curl" "0.4.1")) (sha256 (base32 "1b0y27b6vpqffgzm2kxc1s2i6bgdzxk3wn65g2asbcdxrvys3mcg")))) ("rust-flate2" ,(origin (method url-fetch) (uri (crate-uri "flate2" "0.2.14")) (sha256 (base32 "1fx3zsls5bb1zfx87s5sxkgk853z4nhjsbvq5s6if13kjlg4isry")))) ("rust-git2" ,(origin (method url-fetch) (uri (crate-uri "git2" "0.6.3")) (sha256 (base32 "06b1bw3pwszs8617xn8js6h0j983qjgfwsychw33lshccj3cld05")))) ("rust-crates-io" ,(origin (method url-fetch) (uri (crate-uri "crates-io" "0.4.0")) (sha256 (base32 "0kk6abp1qbpv44hkq1yjp7xgpzjzafs83i1l26ycr0aph1gbwig9")))) ("rust-git2-curl" ,(origin (method url-fetch) (uri (crate-uri "git2-curl" "0.7.0")) (sha256 (base32 "13mzqp4rd81zp78261rlq23iw9aaysdr56484y1yy2xzhk3nnrv8")))) ("rust-bufstream" ,(origin (method url-fetch) (uri (crate-uri "bufstream" "0.1.2")) (sha256 (base32 "0x6h27md1fwabbhbycfldj0wklrpjr520z9p0cpzm60fzzidnj3v")))) ("rust-hamcrest" ,(origin (method url-fetch) (uri (crate-uri "hamcrest" "0.1.1")) (sha256 (base32 "1m49rf7bnkx0qxja56slrjh44zi4z5bjz5x4pblqjw265828y25z")))) ("rust-num" ,(origin (method url-fetch) (uri (crate-uri "num" "0.1.36")) (sha256 (base32 "081i1r3mdz6jasqd7qwraqqfqa3sdpvdvxl1xq0s7ip714xw1rxx")))) ("rust-num-traits" ,(origin (method url-fetch) (uri (crate-uri "num-traits" "0.1.36")) (sha256 (base32 "07688sp4z40p14lh5ywvrpm4zq8kcxzhjks8sg33jsr5da2l4sm1")))) ("rust-num-integer" ,(origin (method url-fetch) (uri (crate-uri "num-integer" "0.1.32")) (sha256 (base32 "14pvaaawl0pgdcgh4dfdd67lz58yxlfl95bry86h28pjnfzxj97v")))) ("rust-num-bigint" ,(origin (method url-fetch) (uri (crate-uri "num-bigint" "0.1.35")) (sha256 (base32 "0jayfkdm33p4zvcahlv46zdfhlzg053mpw32abf2lz0z8xw47cc8")))) ("rust-num-rational" ,(origin (method url-fetch) (uri (crate-uri "num-rational" "0.1.35")) (sha256 (base32 "1bwaygv64qg7i78yqg0v4d0amfhamj598rpy4yxjz9rlhcxn1zsl")))) ("rust-num-iter" ,(origin (method url-fetch) (uri (crate-uri "num-iter" "0.1.32")) (sha256 (base32 "0p74nj5c1mc33h9lx4wpmlmggmn5lnkhxv1225g0aix8d6ciqyi8")))) ("rust-num-complex" ,(origin (method url-fetch) (uri (crate-uri "num-complex" "0.1.35")) (sha256 (base32 "0bzrjfppnnzf9vmkpklhp2dw9sb1lqzydb8r6k83z76i9l2qxizh")))) ("rust-shell-escape" ,(origin (method url-fetch) (uri (crate-uri "shell-escape" "0.1.3")) (sha256 (base32 "1y2fp2brv639icv4a0fdqs1zhlrxq8qbz27ygfa86ifmh5jcjp6x")))))) (arguments `(#:cargo ,cargo-bootstrap #:tests? #f ; FIXME #:modules ((ice-9 match) (srfi srfi-1) ; 'every (guix build utils) (guix build cargo-build-system)) #:phases (modify-phases %standard-phases ;; Avoid cargo complaining about missmatched checksums. (delete 'patch-source-shebangs) (delete 'patch-generated-file-shebangs) (delete 'patch-usr-bin-file) (add-after 'unpack 'unpack-submodule-sources (lambda* (#:key inputs #:allow-other-keys) (define (unpack source target) (mkdir-p target) (with-directory-excursion target (zero? (system* "tar" "xf" source "--strip-components=3D1")))) (define (touch file-name) (call-with-output-file file-name (const #t))) (define (install-rust-library entry) (match entry ((name . src) (if (string-prefix? "rust-" name) (let* ((rust-length (string-length "rust-")) (rust-name (string-drop name rust-length)) (rsrc (string-append "vendor/" rust-name)) (unpack-status (unpack src rsrc))) (touch (string-append rsrc "/.cargo-ok")) (generate-checksums rsrc src) unpack-status))) (_ #t))) (mkdir "vendor") (every install-rust-library inputs))) (add-after 'unpack 'set-environment-up (lambda* (#:key inputs #:allow-other-keys) (let* ((gcc (assoc-ref inputs "gcc")) (cc (string-append gcc "/bin/gcc"))) (mkdir ".cargo") (call-with-output-file ".cargo/config" (lambda (p) (format p " [source.crates-io] registry =3D 'https://github.com/rust-lang/crates.io-index' replace-with =3D 'vendored-sources' [source.vendored-sources] directory =3D 'vendor' "))) (setenv "CMAKE_C_COMPILER" cc) ;; TODO CC_i686_unknown_linux_gnu=3Dgcc (setenv "CC" cc)) #t)) (delete 'configure)))) (home-page "https://github.com/rust-lang/cargo") (synopsis "Build tool and package manager for Rust") (description "Cargo is a tool that allows Rust projects to declare their dependencies and ensures a reproducible build.") ;; Cargo is dual licensed Apache and MIT. Also contains ;; code from openssl which is GPL2 with linking exception. (license (list license:asl2.0 license:expat license:gpl2)))) --MP_/.0Fc56V.LHMN5QU//C+=qGA-- From debbugs-submit-bounces@debbugs.gnu.org Sat Dec 23 17:18:15 2017 Received: (at control) by debbugs.gnu.org; 23 Dec 2017 22:18:15 +0000 Received: from localhost ([127.0.0.1]:49697 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eSs7S-0005IR-Vo for submit@debbugs.gnu.org; Sat, 23 Dec 2017 17:18:15 -0500 Received: from dd26836.kasserver.com ([85.13.145.193]:51154) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1eSs7R-0005II-IP for control@debbugs.gnu.org; Sat, 23 Dec 2017 17:18:13 -0500 Received: from localhost (77.118.245.126.wireless.dyn.drei.com [77.118.245.126]) by dd26836.kasserver.com (Postfix) with ESMTPSA id 9A5DB3360499 for ; Sat, 23 Dec 2017 23:18:12 +0100 (CET) Date: Sat, 23 Dec 2017 23:18:10 +0100 From: Danny Milosavljevic To: Message-ID: <20171223231806.621a018f@scratchpost.org> X-Mailer: Claws Mail 3.16.0 (GTK+ 2.24.31; x86_64-unknown-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: close 28433 [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [85.13.145.193 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: close 28433 [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [85.13.145.193 listed in list.dnswl.org] 1.8 MISSING_SUBJECT Missing Subject: header 0.2 NO_SUBJECT Extra score for no subject 0.0 TVD_SPACE_RATIO No description available. close 28433