summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/rust.py
Commit message (Collapse)AuthorAgeFilesLines
* use OptionKey for builtin and base optionsDylan Baker2021-01-041-2/+2
| | | | | | | | I would have prefered to do these seperatately, but they are combined in some cases, so it was much easier to convert them together. this eliminates the builtins_per_machine dict, as it's duplicated with the OptionKey's machine parameter.
* move OptionKey to mesonlibDylan Baker2021-01-041-2/+4
| | | | | There's starting to be a lot of things including coredata that coredata needs to itself include. putting it in mesonlib makes more sense
* use OptionKey for compiler_optionsDylan Baker2021-01-041-5/+8
|
* compilers/rust: add and use an implementation of use_linker_argsDylan Baker2020-11-131-0/+4
|
* compilers/rust: Add color outputDylan Baker2020-11-101-1/+7
| | | | | Rust has color output, although it's help doesn't document it. It uses the same values as cargo (and everything else), auto, never, always.
* compilers/rust: Add vs_crt supportDylan Baker2020-11-101-0/+6
| | | | | | As far as I can Tell, rust just handles this for us (it's always worked with no special arguments from us). However, since we're going to add support for base options for rust, we need to add the method.
* rust: implement support for --editionDylan Baker2020-11-051-0/+19
| | | | | | | | | Using the std option, so now `rust_std=..` will work. I've chosen to use "std" even though rust calls these "editions", as meson refers to language versions as "standards", which makes meson feel more uniform, and be less surprising. Fixes: #5100
* compilers/rust: add type annotationsDylan Baker2020-10-011-25/+38
|
* compilers/cuda: make type safeDylan Baker2020-10-011-3/+0
|
* compilers: make is_cross part of the base Compiler classDylan Baker2020-09-241-3/+2
| | | | | | | Every class needs to set this, so it should be part of the base. For classes that require is_cross, the positional argument remains in their signature. For those that don't, they just allow the base class to set their value to it's default of False.
* compilers: put name_string method in base compilerDylan Baker2020-09-241-3/+0
| | | | Every language had the exact same implementation
* compilers/compilers: Fully type annotateDylan Baker2020-09-241-0/+3
|
* types: import typing as T (fixes #6333)Daniel Mensinger2020-01-081-2/+2
|
* compilers: move language attribute to the class levelDylan Baker2019-12-121-1/+1
| | | | | We know that if a compiler class inherits CCompiler it's language will be C, so doing this at the class level makes more sense.
* Allow selecting the dynamic linkerDylan Baker2019-12-021-1/+5
| | | | | | | This uses the normal meson mechanisms, an LD environment variable or via cross/native files. Fixes: #6057
* compilers: replace CompilerType with MachineInfoDylan Baker2019-10-071-2/+7
| | | | | | Now that the linkers are split out of the compilers this enum is only used to know what platform we're compiling for. Which is what the MachineInfo class is for
* Merge pull request #5681 from dcbaker/dynamic-linker-splitJussi Pakkanen2019-08-201-9/+6
|\ | | | | split dynamic linker representations from compilers
| * compilers: Dispatch to dynamic linker classDylan Baker2019-08-141-7/+4
| | | | | | | | | | Most of the cuda code is from Olexa Bilaniuk. Most of the PGI code is from Michael Hirsc
| * compilers/rust: Proxy extra kwargs to Compiler.__init__Dylan Baker2019-08-141-2/+2
| |
* | Pass optimization flags to rustc properly. Closes: #5788.Jussi Pakkanen2019-08-171-5/+5
|/
* Increase logging for Rust CI failures.Jussi Pakkanen2019-06-221-3/+11
|
* Purge `is_cross` and friends without changing user interfacesJohn Ericson2019-06-091-4/+4
| | | | | | | | | | | | In most cases instead pass `for_machine`, the name of the relevant machines (what compilers target, what targets run on, etc). This allows us to use the cross code path in the native case, deduplicating the code. As one can see, environment got bigger as more information is kept structured there, while ninjabackend got a smaller. Overall a few amount of lines were added, but the hope is what's added is a lot simpler than what's removed.
* Fix setup so test suite runs with rustc + MSVC. Closes: 5099Jussi Pakkanen2019-03-241-0/+6
|
* Added more compiler option supportDaniel Mensinger2019-01-061-0/+8
|
* Absolute path generation refactoringDaniel Mensinger2019-01-061-0/+3
|
* Convert buildtype to optimization and debug options (#3489)Jussi Pakkanen2018-08-181-1/+15
|
* Add cross-compilation support for `rustc`Adam C. Foltzer2018-01-291-2/+13
| | | | | | This patch is largely modeled on the relatively-straightforward code for Fortran cross-compilation, so there might be some intricacies missing.
* Add build_rpath as new property allowing people to specify rpath entries ↵Jussi Pakkanen2017-07-211-2/+2
| | | | that are used in the build tree but will be removed on install.
* Split out languages from compilers.pyAlistair Thomas2017-06-231-0/+59