Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Merge pull request #6207 from dcbaker/linker-option | Jussi Pakkanen | 2019-12-11 | 1 | -0/+6 | |
|\ | | | | | Add a way to select the dynamic linker meson uses | |||||
| * | Allow selecting the dynamic linker | Dylan Baker | 2019-12-02 | 1 | -0/+6 | |
| | | | | | | | | | | | | | | This uses the normal meson mechanisms, an LD environment variable or via cross/native files. Fixes: #6057 | |||||
* | | compilers: Rework the CompilerArgs to be less awful | Dylan Baker | 2019-12-05 | 1 | -71/+73 | |
| | | | | | | | | | | | | | | | | There are two awful things about CompilerArgs, one is that it directly inherits from list, and there are a lot of subtle gotcahs with inheriting from builtin types. The second is that the class allows arguments to be passed in whatever order. That's bad. This also fully annotates the CompilerArgs class, so mypy can type check it for us. | |||||
* | | compilers: use import typing instead of from typing import | Dylan Baker | 2019-12-05 | 1 | -44/+47 | |
| | | | | | | | | | | | | | | | | `from foo import` should be used sparingly because of namespace pollution, especially since those names will be exported unconditionally. For typing this is extra annoying because anytime someone wants to use another symbol from the typing module they have to add it to the import line. Use `import typing` to avoid all of this. | |||||
* | | lgtm: fix __eq__ not overridden when adding attributes | Daniel Mensinger | 2019-12-05 | 1 | -0/+10 | |
| | | ||||||
* | | lgtm: Actually supress the Non-standard exception warning | Daniel Mensinger | 2019-12-05 | 1 | -6/+6 | |
| | | ||||||
* | | lgtm: ignore Non-standard exception raised in special method | Daniel Mensinger | 2019-12-05 | 1 | -3/+3 | |
| | | ||||||
* | | lgtm: Fix Module imported with `import` and `import from` | Daniel Mensinger | 2019-12-05 | 1 | -30/+29 | |
|/ | ||||||
* | openbsd: execinfo is not a compiler lib | Antoine Jacoutot | 2019-11-25 | 1 | -2/+4 | |
| | ||||||
* | Fix typos found by codespell | Wolfgang Stöggl | 2019-11-06 | 1 | -1/+1 | |
| | | | | - Typos were found by codespell v1.16.0 | |||||
* | Fix all flake8 warnings | Daniel Mensinger | 2019-10-20 | 1 | -1/+1 | |
| | ||||||
* | compilers: replace CompilerType with MachineInfo | Dylan Baker | 2019-10-07 | 1 | -44/+5 | |
| | | | | | | 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 #5953 from mensinda/isystem | Jussi Pakkanen | 2019-10-06 | 1 | -1/+17 | |
|\ | | | | | Add is_system to dependency | |||||
| * | Use -isystem instead of -idirafter | Daniel Mensinger | 2019-10-03 | 1 | -1/+17 | |
| | | ||||||
* | | cmake: fix detection of libraries with .so version | Daniel Mensinger | 2019-10-03 | 1 | -1/+1 | |
|/ | ||||||
* | Correctly handle platform-specific LDFLAGS options | Aleksey Gurtovoy | 2019-09-27 | 1 | -0/+5 | |
| | ||||||
* | CUDA support on Windows | Aleksey Gurtovoy | 2019-09-24 | 1 | -2/+11 | |
| | ||||||
* | the solaris linker also needs start/end-group for circular linking | Dylan Baker | 2019-09-09 | 1 | -2/+2 | |
| | ||||||
* | mesonlib.split_args/quote_arg/join_args | Aleksey Gurtovoy | 2019-09-05 | 1 | -7/+7 | |
| | ||||||
* | compilers: Move the compiler argument to proxy linker flags to the compiler ↵ | Dylan Baker | 2019-08-30 | 1 | -0/+2 | |
| | | | | | | | | | | | | class Instead of the DynamicLinker returning a hardcoded value like `-Wl,-foo`, it now is passed a value that could be '-Wl,', or could be something '-Xlinker=' This makes a few things cleaner, and will make it possible to fix using clang (not clang-cl) on windows, where it invokes either link.exe or lld-link.exe instead of a gnu-ld compatible linker. | |||||
* | compilers: Dispatch to dynamic linker class | Dylan Baker | 2019-08-14 | 1 | -166/+98 | |
| | | | | | Most of the cuda code is from Olexa Bilaniuk. Most of the PGI code is from Michael Hirsc | |||||
* | Add basic Webassembly support via Emscripten. | Jussi Pakkanen | 2019-08-05 | 1 | -0/+1 | |
| | ||||||
* | Fix cross compilation on OSX | Xavier Claessens | 2019-08-04 | 1 | -2/+6 | |
| | | | | | Do not set -Wl,-headerpad_max_install_names when compiling on OSX for another platform. It causes linker issues. | |||||
* | compilers: pull sanitzier args into compiler classes | Dylan Baker | 2019-07-23 | 1 | -16/+8 | |
| | | | | This simplifies and cleans things up. | |||||
* | compilers: return as-needed args as a list | Dylan Baker | 2019-07-23 | 1 | -1/+1 | |
| | ||||||
* | compilers: Move lto args into compiler class | Dylan Baker | 2019-07-23 | 1 | -5/+9 | |
| | | | | | | | | | There are two problems, one is that it assumes -flto is the argument to do LTO/WPO, which isn't true of ICC and MSVC (and presumably) others. It's also incorrect because it assumes that the compiler and linker will always be the same, which isn't necessarily true. You could combine GCC with Apple's linker, or clang with link.exe, which use different arguments. | |||||
* | Add optional progress bar when generating build.ninja | Nirbheek Chauhan | 2019-07-20 | 1 | -3/+3 | |
| | ||||||
* | fix all flake8 issues | Daniel Mensinger | 2019-07-18 | 1 | -4/+3 | |
| | ||||||
* | compilers: split pgi compiler out of compilers module | Dylan Baker | 2019-07-15 | 1 | -69/+0 | |
| | ||||||
* | compilers/mixins/elbrus: add type annotations and fix types | Dylan Baker | 2019-07-15 | 1 | -1/+1 | |
| | | | | | | | | | There is a pretty big error in here, trying to return a tuple comperhension: (a for a in []) is not a tuple, it's a generator. This has profound type annotations: generators don't support most tuple or list methods, and they can only be iterated once. Beyond that tuples are meant for heterogenous types, ie, position matters for types. I've converted the output to a list in all cases. | |||||
* | compilers: put elbrus in mixins | Dylan Baker | 2019-07-15 | 1 | -40/+0 | |
| | ||||||
* | compilers: Put clang mixin in a module | Dylan Baker | 2019-07-15 | 1 | -61/+1 | |
| | ||||||
* | compilers: move ArmClang into mixins/arm.py | Dylan Baker | 2019-07-15 | 1 | -118/+0 | |
| | ||||||
* | compilers: Put Intel compiler classes into the mixins folder | Dylan Baker | 2019-07-15 | 1 | -100/+0 | |
| | ||||||
* | compilers: split gnu and gnulike compilers out of compilers | Dylan Baker | 2019-07-15 | 1 | -358/+1 | |
| | | | | | I debated a bit whether both classes really belong in the same module, and decided that they do because the share a number of helpers. | |||||
* | compilers: Move the VisualStudioLikeCompiler class into mixins | Dylan Baker | 2019-07-15 | 1 | -386/+1 | |
| | ||||||
* | compilers: Move ArmCompiler to a mixin module | Dylan Baker | 2019-07-15 | 1 | -109/+0 | |
| | ||||||
* | compilers: move ccrx compiler abstraction into mixins | Dylan Baker | 2019-07-15 | 1 | -129/+1 | |
| | ||||||
* | move Gnu-specific feature '--print-search-dirs' to GnuLikeCompiler | Norbert Nemec | 2019-07-07 | 1 | -0/+60 | |
| | ||||||
* | Improve performance with windows defender ATP | Charlie Barto | 2019-07-05 | 1 | -4/+4 | |
| | ||||||
* | Fix two errors when cross-compiling with Vala | James Westman | 2019-06-27 | 1 | -0/+3 | |
| | | | | | | | | | | | | - AttributeError: 'ValaCompiler' object has no attribute 'get_program_dirs' Fixed by adding a `get_program_dirs()` function to the base Compiler class, to match `get_library_dirs()` - KeyError: 'vala_COMPILER' Fixed by creating the Vala compile rules for all machines, not just the build machine. | |||||
* | sanitycheckc: avoid linking sanitycheckc when cross compiling | Cody Schafer | 2019-06-27 | 1 | -6/+11 | |
| | ||||||
* | tvOS: added support AppleTVOS | Roman Shpuntov | 2019-06-13 | 1 | -3/+3 | |
| | ||||||
* | Solaris fixes | Kurtis Rader | 2019-06-12 | 1 | -0/+2 | |
| | | | | Fixes #5351 | |||||
* | compilers: armclang supports only cross-compilation | sompen | 2019-06-11 | 1 | -1/+1 | |
| | | | | Revert the change done to Armclang compiler class in PR-4010 | |||||
* | Purge `is_cross` and friends without changing user interfaces | John Ericson | 2019-06-09 | 1 | -3/+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. | |||||
* | UserOption no longer has a name field. | John Ericson | 2019-05-15 | 1 | -20/+13 | |
| | | | | | | | This avoids the duplication where the option is stored in a dict at its name, and also contains its own name. In general, the maxim in programming is things shouldn't know their own name, so removed the name field just leaving the option's position in the dictionary as its name. | |||||
* | Merge pull request #5331 from dcbaker/icl | Jussi Pakkanen | 2019-05-14 | 1 | -15/+60 | |
|\ | | | | | ICL (Intel for Windows) support | |||||
| * | compilers: Add basic ICL abstractions | Dylan Baker | 2019-05-13 | 1 | -0/+42 | |
| | | ||||||
| * | compilers: ICL is not GCC like | Dylan Baker | 2019-05-13 | 1 | -2/+2 | |
| | |