Daniel Mensinger
77b5c82d07
cmake: switch to pathlib ( fixes #7322 )
4 years ago
Dylan Baker
10b44584ff
Merge pull request #7795 from dcbaker/submit/full-compiler-annotations
...
Full annotations for the Compiler package
4 years ago
Nirbheek Chauhan
264939963f
docs: Fixup find_program search path documentation [skip ci]
...
It was slightly wrong, and also make it a bullet point for easier
parsing.
4 years ago
Vili Väinölä
32cf7a03d2
Fix meson compile for 32-bit MSVC build
...
- Remove platform from env so that msbuild does not try to compile
e.g. configuration debug|x86
4 years ago
Dylan Baker
2fe400c350
compilers/icl fix IntelClCPP argument checking
...
Unlike MSVC and ClangCl it needs to call into it's own compiler check
args
4 years ago
Dylan Baker
f9316fbb46
compilers/icl: Fix pch usage
4 years ago
Dylan Baker
be99d00e95
linkers: Fix Xilink constructor
4 years ago
Dylan Baker
b309f4904b
compilers/fortran: make ifort on windows signature match ICL's
4 years ago
Dylan Baker
ff51e1c5aa
compilers/clike: Store exe_wrapper as ExternalProgram
...
Which is what other languages do.
4 years ago
Dylan Baker
135f5d5838
compilers: make get_optimization_args abstract
4 years ago
Dylan Baker
577a2de7e8
compilers/fortran: fix has_multi_*_arguments
...
The implementation of the link variant was what should have been the
compiler variant, and there was no valid compiler variant, which meant
it was getting C code.
4 years ago
Dylan Baker
4cdc32114b
run_mypy: mark the whole compilers package as type safe
4 years ago
Dylan Baker
6a9761a2c0
compilers/d: add type annotations
4 years ago
Dylan Baker
6eb981e0c0
compilers/gnu: Don't pretend to inherit CLike
...
We don't need it anymore, and it would be problematic for the D
compilers.
4 years ago
Dylan Baker
738e343860
compilers: move _build_wrapper out of clike into Compiler
...
This abstraction is really useful, and most compilers could use it
(including D). It also will allow the Gnu mixins to work properly
without the CLikeCompiler in their mro.
4 years ago
Dylan Baker
cd59ce98dc
compilers: clang: use get_compiler_check_args
4 years ago
Dylan Baker
1c20f187e8
compilers/intel: use get_compiler_check_args
...
Instead of trying to override the compiles() method, which gets skipped
in a bunch of cases.
4 years ago
Dylan Baker
8291e947f5
compilers: move get_compile_check_args() to Compiler
...
This is groundwork to put _build_wrapper in the base Compiler, which is
needed to make the D compilers truly type safe.
4 years ago
Dylan Baker
e039727e63
compilers/fortran: add type annotations
4 years ago
Dylan Baker
3fc37fc13e
compilers/java: Add type annotations
4 years ago
Dylan Baker
4430269d4e
compilers/rust: add type annotations
4 years ago
Dylan Baker
e437bdd0a9
compilers/swift: Add type annotations
4 years ago
Dylan Baker
efceec9615
Compilers/vala: Add type annotations
4 years ago
Dylan Baker
d3a059b55f
compilers/cuda: make type safe
4 years ago
Dylan Baker
6d173f9678
mesonlib: make OptionOverrideProxy a true MutableMapping
...
So that we can actually use it anyplace that an OptionDictType could be
used. I've also done a bit optimizing/simplifying of the implementation.
This is needed for cuda, as it returns an OptionOverrideProxy where we
ask for an OptionDicType
4 years ago
Dylan Baker
224a752489
compilres: move depfile_for_object to compiler
4 years ago
Dylan Baker
413f4d87e9
compilers/cs: Add type annotations
4 years ago
Dylan Baker
e7f0890cb9
compilers: move get_dependency_gen_args to base Compiler
...
So that every subclass doesn't have to reimplement it. Especially since
the Gnu implementation moved out of the CCompiler and into the
GnuLikeCompiler mixin
4 years ago
Dylan Baker
1513aa437d
compilers: move split_shlib_to_parts to the base compiler
...
Only the GnuLikeCompiler overrides this, and it's implemented multiple
places
4 years ago
Dylan Baker
fe97977b00
compilers/cpp: Add type annotations
4 years ago
Dylan Baker
96a1ae6dfe
compilers: fully type annotate the C compilers
4 years ago
Dylan Baker
20663564bd
deprecated get_configtool_variable and get_pkgconfig_variable
...
The get_variable method is able to do everything they do and more,
making it generally more useful. Let's tell people to stop using the old
ones.
4 years ago
Rasmus Thomsen
1d04caff29
Document search order of find_program
4 years ago
Alexandros Theodotou
a65fffd127
document keys() method of dictionary object [skip ci]
4 years ago
Ian Harvey
3afe18228a
compilers: Use /Od for no-optimisation flag for Intel compilers on windows
...
Intel compilers on Windows (and the Microsoft C++ compiler) use /Od to disable optimisation, not /O0.
4 years ago
Dylan Baker
ce2d927a79
Merge pull request #7757 from dcbaker/submit/curses-dependency
...
Extend the Curses dependency to use config tools and hand rolled search
4 years ago
Dylan Baker
a3106776a6
dependencies/curses: don't try ncurses-config or system dependency on windows
...
with msys ncurses-config returns a unix style path (currently, though
it's been fixed upstream), which the compilers don't understand, so we
can't do that. Additionally, while the system search does work, there's
missing include directories that need to be added.
4 years ago
Yonggang Luo
9a47509764
dependencies/curses: Add support for pdcurses
...
On win32 there is pdcurses, so we detect it first, because python
depends on ncursesw, so if we don't want to use ncursesw, we should make
sure pdcurses detect before ncursesw
4 years ago
Yonggang Luo
e873e64b40
dependencies/curses: Add way to testing curses on msys2.
4 years ago
Dylan Baker
19f2b3d583
tests/curses: Extend to test versions
...
This is mostly important for the system dependency where we need to roll
the version check ourselves.
4 years ago
Dylan Baker
5aee8567b8
dependencies/curses: Add a system dependency
...
That calls find_library and has_header in conjunction to look for curses
implementations that are baked into the system without any other find
method.
4 years ago
Dylan Baker
cb6ccf2632
dependencies/zlib: Fix header detection
...
has_header returns a tuple of (found: bool, cached: bool), so `if
has_header` will always return true because the tuple is non-empty. We
need to check if the found value is true or not.
4 years ago
Dylan Baker
7d11d7cf68
dependencies/curses: Add support for using the ncurses config tools
...
These are mostly duplicated with pkg-config, but maybe someone has one
but not another, and they're easy to turn on with the
ConfigToolDependency.
4 years ago
Dylan Baker
354c1c1d09
dependency/misc: change lookup order for curses pkg-config
...
look for (in order): ncursesw, ncurses, curses.
4 years ago
Dylan Baker
16d3513df6
docs/Dependencies Add missing curses documentation
4 years ago
Dylan Baker
c411b29b6d
dependencies/misc: Fix typing of curses_factory
4 years ago
Dylan Baker
137c3124e2
Merge pull request #7758 from dcbaker/submit/hdf5-factory
...
dependencies/hdf5: Convert to a dependency_factory
4 years ago
Jussi Pakkanen
400ec2d685
Merge pull request #7762 from jon-turney/meson-exe-output-improve
...
Improve the output for meson wrapped commands
4 years ago
Vili Väinölä
d1638a4fde
compilers/VS: fix build to use optimization and debug flags
...
- Fixed using debug and optimization built-in options in MSVC.
- Fixed that VS backend does not create pdb files in release mode.
VS implicitly adds the debug fields if left out.
- Fix that it is possible to add debug info with ninja backend with
optimizations.
4 years ago
Jussi Pakkanen
5f70984403
Merge pull request #7772 from xclaesse/deprecate-source-root
...
Deprecate meson.build_root() and meson.source_root()
4 years ago