Commit graph

130 commits

Author SHA1 Message Date
Simon Sapin
8303f5b926 Update to cargo 0.21.0-nightly (eb6cf012a 2017-07-02)
Cargo binaries are now produced on Rust’s CI, not Cargo’s.
Remove cargo-commit-hash and find Cargo based on rust-commit-hash.
2017-07-19 00:56:30 +02:00
Jonathan Chan
260c41aeea mach: Fail properly if we can't find the path for OSMesa or GLAPI.
Currently we check `if not (osmesa_path and glapi_path)` after using
`path.join`. It seems we actually want to check whether
`find_dep_path_newest` returns something, because if calls to that
function fail, we'll instead get an error from `path.join` about
`NoneType` not having attribute `endswith` (it expects a string), which
preempts this check.
2017-06-22 14:45:30 -07:00
Imanol Fernandez
04fb628d20 Make armv7-linux-androideabi default target on Android 2017-05-31 22:31:26 +02:00
bors-servo
286bfb96a0 Auto merge of #16769 - MortimerGoro:android_archs, r=larsbergstrom
Support for Android armv7 and aarch64 target triples

<!-- Please describe your changes on the following line: -->

Support for Android armv7 and aarch64 target triples in python build scripts (build + packaging)

`--android` build parameter works as always (arm-linux-androideabi still the default)
`./mach build --release --android`

New compilation modes for android
`./mach build --release --target=arm-linux-androideabi`
`./mach build --release --target=armv7-linux-androideabi`
`./mach build --release --target=aarch64-linux-android`

See https://github.com/servo/servo/issues/11921. When all crates are ready we'll switch default android compilations to` armv7-linux-androideabi` target triple.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [x] There are tests for these changes OR
- [ ] These changes do not require tests because _____

<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/16769)
<!-- Reviewable:end -->
2017-05-13 10:24:29 -05:00
Imanol Fernandez
01228282cd Support for Android armv7 and aarch64 target triples 2017-05-08 17:28:59 +02:00
UK992
d03e52d240 Add clobber mechanism 2017-05-08 16:19:56 +02:00
Simon Sapin
574b155cf6 Add ./mach cargoup 2017-04-25 12:28:08 +02:00
Aneesh Agrawal
022f0aa34a Remove more deprecated Windows GNU code/docs 2017-04-16 22:12:17 -04:00
Simon Sapin
ca08ff876b Add cargo-geckolib and rustc-geckolib commands to mach. 2017-04-05 21:50:44 +02:00
ddh
e527c9a991 Update Hyper and OpenSSL 2017-03-31 16:32:21 +02:00
Simon Sapin
af1edaa883 Fix "option Z is unstable" warning on geckolib with incremental=true
`incremental = true` can be set in the `[build]` section of `.servobuild`
to enable incremental compilation.

In `./mach build-geckolib`, which uses a stable version of the compiler,
this would cause a warning repeated for each invocation of rustc:

```
warning: the option `Z` is unstable and should only be used on the nightly
compiler, but it is currently accepted for backwards compatibility;
this will soon change, see issue #31847 for more details
```

This PR disables incremental compilation for `build-geckolib`,
regardless of `.servobuild` settings.
2017-03-16 21:59:07 +01:00
Simon Sapin
bd8ec03740 Disable LLVM assertions by default, on supported platforms.
But keep them on linux-dev CI.
2017-02-16 08:38:14 +01:00
Anthony Ramine
57fd45a5c2 Allow disabling LLVM assertions in rustc (fixes #15548) 2017-02-15 14:55:02 +01:00
Anthony Ramine
336e6c8f28 Switch to commit-specific nightlies 2017-02-15 14:55:02 +01:00
UK992
b6b96322c1 Remove freetype dependency on Windows 2017-02-06 02:28:54 +01:00
Simon Sapin
e273ecce4c Option configuration to enable incremental compilation.
https://internals.rust-lang.org/t/incremental-compilation-beta/4721
2017-02-05 14:45:00 +01:00
Aneesh Agrawal
60a1503b29 Clean up and simplify existing mach bootstrap
- Default to interactive mode and remove the `--interactive` flag
- Use `--force` to skip interactivity
- Change MSVC dependency storage organization on disk: put each version
  into its own folder and directly refer to the versioned folders,
  providing immutability and making the installation list redundant
- Reuse `host_triple()` function to fix broken bootstrapper dispatching
- Simplify code:
  - Remove or inline many unused and redudant functions and variables
  - Prefer plain functions to classes
  - Consolidate into fewer files, remove unnecessary bootstrapper/ dir
- Improve Python style
- Sort dependency list
2017-01-15 15:41:37 -05:00
Aneesh Agrawal
02b054ec9e Create a util.py Python module for common functions
Extracting these functions helps avoid circular dependencies,
and make them easier to find/reuse.
2017-01-15 15:21:35 -05:00
Teodor Szente
48df976bcd Move get_browserhtml_path to command_base #14815
Remove unused import of find_dep_path_newest #14815

Move get_browserhtml_path top along with find_dep_path_newest #14815
2017-01-02 16:39:20 +02:00
bors-servo
7f2da7483b Auto merge of #14346 - mati865:master, r=UK992,larsberg
Use MSVC toolchain if PLATFORM is defined

<!-- Please describe your changes on the following line: -->
`VSInstallDir` exists only when Visual Studio is installed.
`VS140COMNTOOLS` is defined by installing either Visual Studio or [Visual C++ Build Tools](http://landinghub.visualstudio.com/visual-cpp-build-tools)

It will allow to build MSVC based Servo without having to install whole Visual Studio (few GiB).

EDIT: Another (maybe cleaner) solution would be reverting 63ec96a57d

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors
- [ ] These changes fix #__ (github issue number if applicable).

<!-- Either: -->
- [ ] There are tests for these changes OR
- [x] These changes do not require tests because `VS140COMNTOOLS` variable is already used in [mach.bat](https://github.com/servo/servo/blob/master/mach.bat)

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14346)
<!-- Reviewable:end -->
2016-12-28 07:37:45 -08:00
bors-servo
44af5ea2e4 Auto merge of #14601 - Wafflespeanut:osmesa, r=emilio
Raise warning when OSMesa path is not set

In Ubuntu 14.04, I still get crashes due to non-existence of OsMesa library (#13515). It turned out that sometimes I have paths like `osmesa-src-<hash>` without `out/lib/gallium`. Now, we raise a warning whenever we don't find a proper path.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [x] `./mach build -d` does not report any errors
- [x] `./mach test-tidy` does not report any errors

<!-- Either: -->
- [x] These changes do not require tests because it's related to mach.

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14601)
<!-- Reviewable:end -->
2016-12-15 07:42:30 -08:00
Ravi Shankar
000d46490e Warn when OSMesa library path cannot be set 2016-12-15 18:53:14 +05:30
bors-servo
d6788a5048 Auto merge of #13650 - UK992:win32, r=larsbergstrom
Define NATIVE_WIN32_PYTHON environment variable

r? @Wafflespeanut or @larsbergstrom

---
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors

<!-- Reviewable:start -->

---

This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/13650)

<!-- Reviewable:end -->
2016-12-15 05:14:16 -08:00
Xidorn Quan
af487f5730 Auto-update in-tree bindings 2016-12-15 21:33:14 +11:00
bors-servo
75c869d508 Auto merge of #14251 - vvuk:servobuild-rustflags, r=ConnorGBrewster
Support build.rustflags in .servobuild

Add ability to specify rustflags in .servobuild.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14251)
<!-- Reviewable:end -->
2016-12-13 16:55:12 -08:00
mati865
02b2b9ccbc use MSVC toolchain if PLATFORM is defined 2016-12-07 19:10:13 +01:00
Simon Sapin
f5af40d694 Upgrade to cargo 0.16.0-nightly (built 2016-12-06)
Instead of once per day (or night) with a date in the URL,
Cargo binaries are now built and published for every merge to master
(with the merge commit hash in the URL).
2016-12-06 12:40:40 -10:00
bors-servo
bd5eef58a2 Auto merge of #14379 - kimsnj:run-headless, r=jdm
Use software rendering when running servo in headless mode

<!-- Please describe your changes on the following line: -->
Properly setting environment to use OsMesa in headless mode.

---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `__` with appropriate data: -->
- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy` does not report any errors
- [X] These changes fix #13515

<!-- Either: -->
- [ ] There are tests for these changes OR
- [X] These changes do not require tests because I manually ran: `./mach run -d tests/html/about-mozilla.html -z`

<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14379)
<!-- Reviewable:end -->
2016-12-03 07:55:24 -08:00
Anthony Ramine
dfb35db6d3 Move to Cargo workspaces 2016-11-28 09:44:20 +01:00
KimSnj
b5b76e8053 Use software rendering when running servo in headless mode 2016-11-27 18:15:51 +01:00
Vladimir Vukicevic
a82be9ffb4 Support build.rustflags in .servobuild 2016-11-21 09:25:31 -05:00
Xidorn Quan
63ec96a57d Use msvc toolchain when in Visual Studio env 2016-11-21 17:47:21 +11:00
UK992
6832e9266b Define NATIVE_WIN32_PYTHON environment variable 2016-11-17 20:09:43 +01:00
bors-servo
f14e7339b5 Auto merge of #14172 - servo:ports, r=jdm
Move the servo binary to ports.

<!-- Reviewable:start -->
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14172)
<!-- Reviewable:end -->
2016-11-16 16:40:18 -06:00
Jack Moffitt
8e8519d038 Fix test-wpt and test-css for Windows.
In addition to minor changes for Windows, this forces Windows Python to
be used for all Windows builds (instead of using Windows Python only for
pc-windows-msvc builds).
2016-11-16 10:38:15 -07:00
Ms2ger
9a5abab442 Move the servo binary to ports. 2016-11-16 13:31:21 +01:00
Glenn Watson
cdb69d4423 Add OSMesa headless mode, run WPT against Webrender, update tests. 2016-09-28 11:57:33 +10:00
UK992
fc3555556c Create mach bootstrap based on Mozilla's mozboot bootstrapper 2016-09-07 22:45:05 +02:00
tp6vup54
55af3e3c27 Change the separator used in rust path into os.path.join 2016-08-22 23:32:02 +08:00
Xidorn Quan
0510b4a198 Check PLATFORM for proper toolchain when use msvc 2016-08-18 21:19:27 +10:00
Vladimir Vukicevic
5ab760e698 Fix unicode env issues for call() 2016-08-17 09:51:09 -04:00
UK992
6548325bd2 Run git command only with mach build commands 2016-08-05 22:47:27 +02:00
Anton Ovchinnikov
0a056a9b31 Create .tar.gz package deterministically
Fixes #11981.
2016-08-04 21:47:37 +02:00
Xidorn Quan
ce2447f921 Change to use msvc triple for Windows Python 2016-07-11 11:28:45 +10:00
Simon Sapin
38b6b24a5d Fix #12359: make ensure_bootstrap check for host std if rustc exists. 2016-07-09 00:33:12 +02:00
Simon Sapin
79ef0a5d7f Remove the "./mach build-stable" subcommand
It is replaced by "./mach build-gecklibo" using stable Rust.
2016-07-08 22:28:51 +02:00
Simon Sapin
6ae5598a5c Fix "looking for rustc at …" message for stable when already bootstrapped
Also always download from static-rust-lang-org.s3.amazonaws.com instead
of static.rust-lang.org. They host the same content, but the latter goes
through a CDN and has a TLS certificate that failed to verify and some
Python versions:

https://github.com/servo/servo/issues/3582
https://github.com/servo/servo/pull/3971
2016-07-08 22:27:20 +02:00
Gabriel Poesia
a1a1dec4d5 Add mach build-stable to build with stable rustc
Github issue: #11806
Building with current stable rust (1.9.0) still fails because of
feature pragmas in some dependencies (e.g. serde_item).
2016-06-30 00:15:50 -03:00
bors-servo
5478e605ae Auto merge of #11262 - campaul:add_version_flag, r=Manishearth
Add `--version` flag

- [X] `./mach build -d` does not report any errors
- [X] `./mach test-tidy --faster` does not report any errors
- [X] These changes fix #11241 (github issue number if applicable).

Either:
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because _____

Not 100% sure of a good way to test this, so I'm submitting as is for feedback. Manually testing it appears to work fine.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/11262)
<!-- Reviewable:end -->
2016-06-29 09:05:35 -05:00
Cameron Paul
d76ffa8fd8 Add --version flag 2016-06-28 20:00:39 -05:00