rustc/debian
2017-04-16 14:47:33 +02:00
..
bin Enable optional tests, and add verbosity/backtraces to tests 2016-02-09 21:24:26 +01:00
icons Replace 32x32 logo with local file 2015-07-20 10:26:40 +10:00
patches Undo patchfix reversion 2017-04-16 14:35:10 +02:00
source Drop Pre-Depends on multiarch-support 2017-02-25 12:16:28 +01:00
upstream Update debian/watch file 2015-02-24 10:52:29 +01:00
.gitignore Anchor .gitignore patterns and also ignore patch backup files 2016-12-08 01:35:45 +01:00
architecture-test.mk Tentatively add support for ARM architectures 2016-07-17 16:58:22 +02:00
architecture.mk Compatibility fixes and improvements to help work better on Ubuntu 2017-02-27 13:34:51 +01:00
build-preview-dsc.sh Update patches for 1.14 and 1.15 2016-12-08 02:04:59 +01:00
changelog Try to fix buildd failure by swapping B-D alternatives 2017-04-16 14:47:33 +02:00
compat Back to dh 9, use binutils instead of binutils-multiarch 2017-02-27 14:12:37 +01:00
control Try to fix buildd failure by swapping B-D alternatives 2017-04-16 14:47:33 +02:00
copyright Link to the system jquery instead of writing a new copy of it 2016-11-07 17:25:32 +01:00
docs Numerous minor rust-doc fixups 2015-02-27 09:50:00 +00:00
ensure-patch Dynamically apply rust-boot-1.12.1-from-1.12.0.diff 2016-10-28 19:39:15 +02:00
gbp.conf restore gbp.conf defaults, which is what we're using in practise anyways 2015-10-31 14:50:58 +01:00
libstd-rust-1.16.lintian-overrides New upstream erlease 2017-03-17 10:38:25 +01:00
libstd-rust-dev.install Split out library packages for multiarch 2015-05-27 18:02:10 +10:00
libstd-rust-dev.lintian-overrides Split out library packages for multiarch 2015-05-27 18:02:10 +10:00
make_orig-dl_tarball.sh * Merge with Debian; remaining changes: 2017-04-13 15:22:24 +02:00
README.Debian Update README.Debian, the old one was way out of date 2016-12-24 19:09:39 +01:00
README.source Add a source_orig-dl target to help bootstrap new distros 2016-07-16 19:35:15 +02:00
rules Don't ignore test failures on Debian unstable 2017-04-16 14:40:21 +02:00
rust-doc.doc-base.book Numerous minor rust-doc fixups 2015-02-27 09:50:00 +00:00
rust-doc.doc-base.intro Remove EPUB from doc-base files 2015-07-19 22:50:26 +10:00
rust-doc.doc-base.reference Upstream don't seem to be building reference.pdf any more 2016-11-07 14:14:53 +01:00
rust-doc.docs Split out library packages for multiarch 2015-05-27 18:02:10 +10:00
rust-doc.install Replace 32x32 logo with local file 2015-07-20 10:26:40 +10:00
rust-doc.links Document future tasks regarding arch/indep tests and jquery 2016-11-12 12:59:35 +01:00
rust-gdb.install Install debugger_pretty_printers_common to rust-gdb and rust-lldb 2016-11-07 12:36:22 +01:00
rust-gdb.links Link rust-{gdb,lldb}.1 to {gdb,lldb}.1 manpages 2015-07-20 11:16:25 +10:00
rust-lldb.install Install debugger_pretty_printers_common to rust-gdb and rust-lldb 2016-11-07 12:36:22 +01:00
rust-lldb.links Fix rust-lldb symlink 2017-03-02 23:00:39 +01:00
rustc.install Fix architecture.mk install path 2015-05-27 18:02:10 +10:00
rustc.lintian-overrides Overrides the 'binary-or-shlib-defines-rpath' lintian warnings. We need them for now 2017-02-28 11:47:22 +01:00
rustc.manpages Rename rust binary package to rustc 2015-02-27 09:50:00 +00:00
TODO.Debian More tips from eddyb on debugging the build time increases 2017-02-28 00:27:27 +01:00
update-version.sh New upstream erlease 2017-03-17 10:38:25 +01:00
watch Update debian/watch 2016-12-23 16:20:15 +01:00

Document by Luca Bruno & Sylvestre Ledru

This source package is unfortunately quite tricky and with
several cutting edges, due to the complexity of rust-lang
bootstrapping system and the high rate of language changes
still ongoing.

We try to describe here inner packaging details and the
reasons behind them.


Embedded libraries
==================

This source package embeds several external libraries (foeked and managed
by rust upstream as git submodules).
In early stages, many more libraries were forked/emebedded but we are steadily
progressing in splitting them out.

Here below the remaining ones, with the technical reasons.

 * jemalloc from https://github.com/rust-lang/jemalloc
   -> system-wide one can't be used due to rust using a "je_" prefix.

   This is intentional upstream design and won't change soon, see:
    - https://github.com/rust-lang/rust/pull/18678
    - http://smallcultfollowing.com/babysteps/blog/2014/11/14/allocators-in-rust/

 * compiler-rt from https://github.com/rust-lang/compiler-rt
   -> system-wide compiler-rt fails during linkage

   Bug reported upstream, still to be fixed, see:
    - https://github.com/rust-lang/rust/issues/15054
    - https://github.com/rust-lang/rust/issues/15708

As a summary, we plan to:
 * keep embedding jemalloc (probably forever)
 * work with upstream to fix compiler-rt linkage soon.

 -- Sylvestre Ledru <sylvestre@debian.org>  Fri, 27 Mar 2015 14:27:12 +0100