diff --git a/cook.sh b/cook.sh index 875e78cb746847beb26e1f508bde17fcd2183b42..45a78038d96752a93e294d00870c05071dc3bf96 100755 --- a/cook.sh +++ b/cook.sh @@ -33,7 +33,7 @@ function op { ;; build) pushd build > /dev/null - xargo build --target "$TARGET" $CARGOFLAGS + xargo build --target "$TARGET" --release $CARGOFLAGS popd > /dev/null ;; clean) @@ -49,7 +49,7 @@ function op { recipe_stage ../stage fi #TODO xargo install --root "../stage" $CARGOFLAGS - bins="$(find target/x86_64-unknown-redox/debug/ -maxdepth 1 -type f ! -name '*.*')" + bins="$(find target/x86_64-unknown-redox/release/ -maxdepth 1 -type f ! -name '*.*')" if [ -n "$bins" ] then mkdir -p ../stage/bin diff --git a/setup.sh b/setup.sh index 395d2b639755df991b2042c01af9a0e0210bbb5b..e337617130f38eaa23c61d4da6307e08964ba848 100755 --- a/setup.sh +++ b/setup.sh @@ -3,16 +3,19 @@ set -e echo "Defaulting to rust nightly" -rustup default nightly +rustup override set nightly echo "Downloading rust source" rustup component add rust-src -echo "Installing xargo" -cargo install -f xargo +if [ -z "$(which xargo)" ] +then + echo "Installing xargo" + cargo install -f xargo +fi echo "Building libstd" ./cook.sh libstd unfetch ./cook.sh libstd fetch ./cook.sh libstd build -cp recipes/libstd/build/target/x86_64-unknown-redox/debug/deps/*.rlib ~/.xargo/lib/rustlib/x86_64-unknown-redox/lib/ +cp recipes/libstd/build/target/x86_64-unknown-redox/release/deps/*.rlib ~/.xargo/lib/rustlib/x86_64-unknown-redox/lib/ echo "cook.sh is ready to use" diff --git a/targets/x86_64-unknown-redox.json b/targets/x86_64-unknown-redox.json index 3d6de47460af91fc0b936444e5677260904bee0b..8878e06ed185e58a2d229cc0ac62ebdb24861583 100644 --- a/targets/x86_64-unknown-redox.json +++ b/targets/x86_64-unknown-redox.json @@ -9,7 +9,8 @@ "vendor": "unknown", "target-family": "redox", "pre-link-args": ["-m64", "-nostdlib", "-static"], - "features": "-sse3,-ssse3,-sse4.1,-sse4.2,-3dnow,-3dnowa,-avx,-avx2", + "post-link-args": ["build/userspace/libopenlibm.a"], + "features": "", "dynamic-linking": false, "executables": true, "relocation-model": "static",