From: ng0 <ng0@we.make.ritual.n0.is>
To: David Craven <david@craven.ch>,
Eric Le Bihan <eric.le.bihan.dev@free.fr>
Cc: guix-devel <guix-devel@gnu.org>
Subject: Re: [PATCH v2] gnu: Add rust (sidenotes on rust)
Date: Tue, 13 Sep 2016 12:19:37 +0000 [thread overview]
Message-ID: <8760q0dmau.fsf@we.make.ritual.n0.is> (raw)
In-Reply-To: <87bmzsdnf3.fsf@we.make.ritual.n0.is>
ng0 <ng0@we.make.ritual.n0.is> writes:
> I can testbuild rustc and give some input.
>
> Additionally, we're having conversations about rust, today this came up:
>
>
> dev @> Very interesting: https://github.com/rust-lang/rfcs/blob/master/text/1200-cargo-install.md
> " it's not clear that this is worthwhile enough to support installing libraries yet."
> on bootstraping: https://mail.mozilla.org/pipermail/rust-dev/2014-June/010222.html
>
> dev @> apparently cargo is not designed to use system paths to find dynamic libraries
> by default libraries are downloaded from github and stored in a cache directory
>
>
> How problematic will this be for us? Our person in charge for the rust
> stuff works around this by including copies of the libraries in a folder
> named 'third_party', but I don't understand enough of the language and
> lack a build system at the moment.
These two links should be useful too, so it might not be that hard to
establish a build system.
http://doc.crates.io/source-replacement.html
http://doc.crates.io/specifying-dependencies.html
> David Craven <david@craven.ch> writes:
>
>> I haven't actually built rustc yet, because I know how long it takes...
>>
>>> + (ld-so (string-append
>>> + (assoc-ref inputs "libc")
>>> + ,(glibc-dynamic-linker)))
>>
>>> + ;; Remove reference to "/lib64/ld-linux-x86-64.so.2" from binary
>>> + (zero? (system*
>>> + "patchelf"
>>> + "--set-interpreter" ld-so
>>
>> I think that this should be part of the a rustc-bootstrap package. We
>> shouldn't export binaries to the user, but I think we need a fully
>> functional bootstrap compiler.
>>
>>> + (setenv "SHELL" (which "sh"))
>>> + (setenv "CONFIG_SHELL" (which "sh"))
>>> + ;; Tell where to find libgcc_s.so
>>> + (setenv "LD_LIBRARY_PATH" (string-append gcc-lib "/lib"))
>>
>> I think this should be a separate phase. We can then use
>> #:configure-flags to pass --default-linker etc.
>>
>>> + #:tests? #f))
>>
>> To get tests enabled you can apply this patch [0].
>>
>> [0] https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/compilers/rust/patches/disable-lockfile-check.patch
>>
>
> --
> ng0
> For non-prism friendly talk find me on http://www.psyced.org
>
>
--
ng0
next prev parent reply other threads:[~2016-09-13 12:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-07 5:57 [PATCH v2] gnu: Add rust Eric Le Bihan
2016-09-07 8:48 ` David Craven
2016-09-13 11:55 ` [PATCH v2] gnu: Add rust (sidenotes on rust) ng0
2016-09-13 12:19 ` ng0 [this message]
2016-09-13 12:28 ` David Craven
2016-09-13 12:09 ` [PATCH v2] gnu: Add rust ng0
2016-09-13 17:20 ` Eric Le Bihan
2016-09-13 18:29 ` ng0
2016-09-13 18:45 ` ng0
2016-09-13 19:11 ` ng0
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=8760q0dmau.fsf@we.make.ritual.n0.is \
--to=ng0@we.make.ritual.n0.is \
--cc=david@craven.ch \
--cc=eric.le.bihan.dev@free.fr \
--cc=guix-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.