-
Notifications
You must be signed in to change notification settings - Fork 90
Use xargo to build #62
Conversation
2334b29
to
d0c3a0e
Compare
Paired iwth intermezzOS/kernel#62, this now uses xargo rather than our own fork of libcore.
Paired with intermezzOS/kernel#62, this now uses xargo rather than our own fork of libcore.
@@ -1,8 +1,13 @@ | |||
sudo: required | |||
dist: trusty |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you might make a comment in this PR about the changes that are happening here
"os": "intermezzos", | ||
"target-endian": "little", | ||
"target-pointer-width": "64", | ||
"features": "-mmx,-fxsr,-sse,-sse2,+soft-float", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
mention this in the PR the diff makes it impossible to see
"raw-cpuid 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||
"serde_json 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", | ||
] | ||
|
||
[metadata] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lol oh hey
@@ -31,7 +23,7 @@ target/boot.o: src/asm/boot.asm | |||
nasm -f elf64 src/asm/boot.asm -o target/boot.o | |||
|
|||
target/kernel.bin: $(o_files) src/asm/linker.ld cargo | |||
ld -n -o target/kernel.bin -T src/asm/linker.ld $(o_files) $(libintermezzos_a) | |||
ld -n -o target/kernel.bin -T src/asm/linker.ld --gc-sections $(o_files) $(libintermezzos_a) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
splain please
```bash | ||
$ rustup override set nightly-2016-05-26 | ||
``` | ||
If you don’t have Rust installed, you should use [rustup](https://rustup.rs/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"If you don’t have Rust installed, and probably even if you do,"
Paired with intermezzOS/kernel#62, this now uses xargo rather than our own fork of libcore.
This is much much nicer than maintaining a port of libcore. Thanks @japaric! ❤️ This also means that the "hello cargo" chapter of the book will need to be redone. I also re-organized the .json file to be in alphabetical order and fixed some indentation issues. I also added +soft-float, which is needed since we no longer have the no-float patch. I also had to update the x86 dependency to work with current nightly. There were some updates to the travis.yml: removing the specific VM version of Trusty, which meant installing grub-common. This also means that we are no longer tied to a specific Rust version. Finally, --gc-sections was needed. We used to have a no-float patch for libcore when we compiled it custom, but xargo doesn't know how to do that. --gc-sections will get rid of the unused calls instead.
This is much much nicer than maintaining a port of libcore. Thanks
@japaric! ❤️
This also means that the "hello cargo" chapter of the book will need to
be redone.
r? @ashleygwilliams