Dylan Baker
fbad73c939
dependencies: Use a DependencyFactory for threads
...
This lets us make a number of uses of threads safer, because we can use
the threads_factory instead of the ThreadDependency
5 years ago
Dylan Baker
5d630c663c
dependencies: Use a factory for NetCDF
...
This uses a custom factory because that makes more sense here, since we
need logic to decide what pkg-config files to look for
5 years ago
Dylan Baker
a8817a8e68
dependencies: Remove now dead code
...
Mostly this is the metagprogramming that ConfigToolDependency used to
do, but doesn't need anymore.
5 years ago
Dylan Baker
89c67383cc
dependencies: Use a custom factory for shaderc
5 years ago
Dylan Baker
b0f0d30cf3
dependencies: Add a decorator for dependency factory functions
...
This helps make them a bit more self documenting, and remove a bit of
the boilerplate they would otherwise have to each implement.
5 years ago
Dylan Baker
47502f8adf
dependencies: Use DependencyFactory for sdl2
5 years ago
Dylan Baker
0dbe9f6159
dependencies: Use DependencyFactory for gl
5 years ago
Dylan Baker
773cc7b4b0
dependencies: Use DependencyFactory for gpgme
5 years ago
Dylan Baker
69835a7c53
dependencies: Use DependencyFactory for LibGcrypt
5 years ago
Dylan Baker
70d28e4532
dependencies: Use DependencyFactory for libwmf
5 years ago
Dylan Baker
4cc890e70a
dependencies: Use DependencyFactory for cups
5 years ago
Dylan Baker
a1f03881c1
dependencies: Use DependencyFactory for python3
5 years ago
Dylan Baker
309d30a9c2
dependencies: Use DependencyFactory for libpcap
5 years ago
Dylan Baker
bc2bfcacbd
dependencies: Use DependencyFactory for gmock
5 years ago
Dylan Baker
626f73416f
dependencies: Use a DependencyFactory for gtest
5 years ago
Dylan Baker
c17fa3223f
dependencies: Use DependencyFactory for Vulkan
5 years ago
Dylan Baker
29b6d3e63c
dependencies: Use a DependencyFactory for LLVM
5 years ago
Dylan Baker
8a9d6b1ed9
dependencies: Add a sub_dependency_method that takes a list of
...
dependencies
This will be useful for adding dependencies that come from a factory,
and thus are a list.
5 years ago
Dylan Baker
751f6fb90f
run_unitests: Add a test for DependencyFactory ordering
5 years ago
Dylan Baker
af4acc8e05
run_unittests: Add a chdir context manager
...
Because seriously
5 years ago
Dylan Baker
2c844f86f2
dependencies: Add a DependencyFactory class
...
Instead of using dependencies as their own factories, which is rather
odd, lets just add a dedicated DependencyFactory class. This should be
able to take over for a lot of the factory type dependencies really
easily, and reduce the amount of code we have.
5 years ago
Dylan Baker
fd892ad7ce
dependencies: Make Dependency initializer signatures match
...
Currently PkgConfig takes language as a keyword parameter in position 3,
while the others take it as positional in position 2. Because most
dependencies don't actually set a language (they use C style linking),
using a positional argument makes more sense. ExtraFrameworkDependencies
is even more different, and duplicates some arguments from the base
ExternalDependency class.
For later changes I'm planning to make having all of the dependencies
use the same signature is really, really helpful.
5 years ago
Dylan Baker
f85d6cee6a
dependencies/base: Split process_method_kw out of Dependency
...
I want to use this in a new class as well, that doesn't descend from
Dependency.
5 years ago
Daniel Mensinger
d0c7b51693
mintro: use interpreter data for buildsystem-files ( fixes #6390 )
5 years ago
Daniel Mensinger
668610c0d2
backend: refactor: set self.interpreter in the constructor
5 years ago
Dylan Baker
3f8d6af9c2
compilers: Use /Zi instead of /ZI with clang-cl
...
Clang-cl doesn't support /ZI, so we need to use either /Zi or /Z7, which
both do the same thing for clang-cl (though not for msvc)
Fixes #6414
5 years ago
Dylan Baker
0f47ca95c1
compilers: Split ClangCL and MSVC mixins
...
Instead of checking the compiler id inside the VisualStudioLikeCompiler
class, this creates two subclasses that each represent the divergent
behavior of the two compilers
5 years ago
Dylan Baker
3d60665885
Merge pull request #6455 from makise-homura/elbrus_0.53.0
...
Elbrus support is broken in 0.53.0, so fixing it
5 years ago
Jussi Pakkanen
0fe485a100
Tell contributors not to write things in the snippet help file. [skip ci]
5 years ago
Jussi Pakkanen
7375eaa263
Always disable interpolation for ini parsers.
5 years ago
Jussi Pakkanen
8cb2cbaed2
Only provide 64 bit MSIs going forward. [skip ci]
5 years ago
Dylan Baker
b16a7ff454
docs: small cleanups and clarifications to setting the dynamic linker [skip ci]
...
Fixes #6510
5 years ago
makise-homura
ee6c2c87fc
Bringing back defines in Elbrus C compiler to simplify environment.py
5 years ago
makise-homura
c910ad4b8f
Fix Sider errors
5 years ago
makise-homura
6300007396
Fix broken link on Elbrus Fortran compiler
...
Error is raised due to Elbrus Fortran compiler can't
generate debug information for now, because it's a 2-step
compiler where 1st step is code conversion from Fortran to C,
so debug information which C compiler would produce, is useless.
5 years ago
makise-homura
7ca53e40a3
ObjC/ObjC++ compilers are not available for Elbrus, so don't fail
5 years ago
makise-homura
ca1f7726d5
Remove RTTI option from get_option_compile_args() for Elbrus compiler
5 years ago
makise-homura
7870cc0d91
Add missing functions to Elbrus compiler class
5 years ago
makise-homura
7321cc776a
Fix missing 'defines' argumet for Elbrus compiler
...
...But somehow it still remains in C++ compiler.
5 years ago
Jussi Pakkanen
a493761d89
Merge pull request #6432 from mensinda/cmExeRefactor
...
cmake: Refactor CMakeExecutor and CMakeTraceParser
5 years ago
Jussi Pakkanen
a51c9af921
Merge pull request #6423 from dcbaker/declare-dependency-variables
...
Add ability to set and query arbitrary variables on declare_dependency objects
5 years ago
Jussi Pakkanen
9e07f8d8e6
Check for bad timestamps that cause eternal configure loops.
5 years ago
Lisa White
42bbce2835
Update wrapdb docs to reflect repositories split [skip ci]
5 years ago
Daniel Mensinger
375a51712b
cmake: Some test improvements
5 years ago
Daniel Mensinger
acc6dbfab7
cmake: Add support for --trace-redirect
5 years ago
Daniel Mensinger
3607f50d7f
cmake: Refactor CMakeExecutor and CMakeTraceParser
...
This moves most of the execution code from the CMakeInterpreter
into CMakeExecutor. Also, CMakeTraceParser is now responsible
for determining the trace cmd arguments.
5 years ago
Xavier Claessens
b74ece344f
Support multiple args to message() and warning()
5 years ago
Ernestas Kulik
dbad64cf34
tests: Prevent multiple-definition of symbols
...
With GCC 10, -fno-common becomes default behavior, meaning that any
subtly-broken code will be broken not so subtly anymore.
This commit changes the linkage to variables declared in headers to
external and, where needed, adds additional definitions in other
compilation units.
5 years ago
Xavier Claessens
f54f27b1a8
Fix required dependency() not failing when wrap-mode=nofallback
...
When a dependency is required, not found on the system, and its fallback
is disabled with --wrap-mode=nofallback, meson should abort instead of
returning not-found.
5 years ago
Xavier Claessens
b6b4903129
mconf: Recommend using --reconfigure when setting unknown options
...
Fixes : #6477
5 years ago