Commit Graph

8705 Commits

Author SHA1 Message Date
Dylan Baker 402f7afdb0 dependencies: netcdf always look for netcdf-fortran for fortran
Otherwise it tries to link with the C bindings and fails. This is why
the test is broken on archlinux
2020-01-31 10:46:47 +01:00
Daniel Mensinger 4104cbdaf9
typing: Fix Any --> T.Any 2020-01-31 09:48:21 +01:00
Dylan Baker d67271e1a6
Small cleanups for the LLVM dependency class (#6548) 2020-01-30 23:32:33 +02:00
Jussi Pakkanen 5d9bc3b324
Merge pull request #6537 from UnoccupiedColonist/ghwt_fixes
ghwt: allow user to specify branch
2020-01-30 23:31:32 +02:00
Jussi Pakkanen d8faf9b706
Merge pull request #6536 from jon-turney/cross-testing-refactor
Refactor CI cross-testing
2020-01-30 23:13:24 +02:00
Michael Hirsch, Ph.D 00f5dadd5b
Bugfix: sanitize_dir: use pathlib to handle case-insensitive filesystems (#6398) 2020-01-30 23:07:44 +02:00
alanNz 1682058dec -Fixed Renesas RX Family compiler to work with latest meson, updated cross-file, fixed assembly file use 2020-01-30 22:11:26 +02:00
Xavier Claessens 7a51f8bd11 Add CODEOWNERS file [skip ci]
Following proposal in #6485 we would like to delegate maitainership
of parts of the Meson project (modules) to selected volunteers.

Fixes: #6485.
2020-01-30 22:01:44 +02:00
Xavier Claessens 8201b725ed Qt5: Do not use system qmake if not specified in cross file
There is a comment saying we do it because we used to do it. But it's
wrong and lead to using system library when cross compiling.

Factor out the code we use to find pkg-config, because it is the same
use-case.
2020-01-30 00:01:42 +02:00
Daniel Mensinger 273aeb8473 deps: Fix prelimenary CMake lookup.
The CMake config files / modules have to be checked
case insensitive in some cases, otherwise some dependencies
will not be found even though they are installed.
2020-01-29 23:59:23 +02:00
Daniel Mensinger 71baca7abe ci: Add Arch Linux OS test 2020-01-29 23:59:23 +02:00
Jussi Pakkanen 95de289d0d Bump Java version in test program. 2020-01-29 23:32:09 +02:00
Jussi Pakkanen 15ab30383e Skip ld tests if no compiler installed.
Fixes https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=950020
2020-01-29 09:16:36 -08:00
Dylan Baker 32240d4276 dependencies: Add comment to the packages dict 2020-01-29 09:11:24 -08:00
Dylan Baker 4fc71e05c4 dependencies: Use a factory for curses 2020-01-29 09:11:24 -08:00
Dylan Baker 5ab29e264b dependencies: Rename _add_sub_dependency2 to _add_sub_dependency
Since the original _add_sub_dependency is no longer in use.
2020-01-29 09:11:24 -08:00
Dylan Baker 6440b55b07 dependencies: Use a factory for fortran coarrays 2020-01-29 09:11:24 -08:00
Dylan Baker 081de4bfbc dependencies: Split detect_compiler out of dependency
We need it for dependency factories as well.
2020-01-29 09:11:24 -08:00
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
2020-01-29 09:11:24 -08:00
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
2020-01-29 09:11:24 -08:00
Dylan Baker a8817a8e68 dependencies: Remove now dead code
Mostly this is the metagprogramming that ConfigToolDependency used to
do, but doesn't need anymore.
2020-01-29 09:11:24 -08:00
Dylan Baker 89c67383cc dependencies: Use a custom factory for shaderc 2020-01-29 09:11:24 -08:00
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.
2020-01-29 09:11:24 -08:00
Dylan Baker 47502f8adf dependencies: Use DependencyFactory for sdl2 2020-01-29 09:11:24 -08:00
Dylan Baker 0dbe9f6159 dependencies: Use DependencyFactory for gl 2020-01-29 09:11:24 -08:00
Dylan Baker 773cc7b4b0 dependencies: Use DependencyFactory for gpgme 2020-01-29 09:11:24 -08:00
Dylan Baker 69835a7c53 dependencies: Use DependencyFactory for LibGcrypt 2020-01-29 09:11:24 -08:00
Dylan Baker 70d28e4532 dependencies: Use DependencyFactory for libwmf 2020-01-29 09:11:24 -08:00
Dylan Baker 4cc890e70a dependencies: Use DependencyFactory for cups 2020-01-29 09:11:24 -08:00
Dylan Baker a1f03881c1 dependencies: Use DependencyFactory for python3 2020-01-29 09:11:24 -08:00
Dylan Baker 309d30a9c2 dependencies: Use DependencyFactory for libpcap 2020-01-29 09:11:24 -08:00
Dylan Baker bc2bfcacbd dependencies: Use DependencyFactory for gmock 2020-01-29 09:11:24 -08:00
Dylan Baker 626f73416f dependencies: Use a DependencyFactory for gtest 2020-01-29 09:11:24 -08:00
Dylan Baker c17fa3223f dependencies: Use DependencyFactory for Vulkan 2020-01-29 09:11:24 -08:00
Dylan Baker 29b6d3e63c dependencies: Use a DependencyFactory for LLVM 2020-01-29 09:11:24 -08:00
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.
2020-01-29 09:11:24 -08:00
Dylan Baker 751f6fb90f run_unitests: Add a test for DependencyFactory ordering 2020-01-29 09:11:24 -08:00
Dylan Baker af4acc8e05 run_unittests: Add a chdir context manager
Because seriously
2020-01-29 09:11:24 -08:00
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.
2020-01-29 09:11:24 -08:00
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.
2020-01-29 09:11:24 -08:00
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.
2020-01-29 09:11:24 -08:00
Kyle Stone c89dca8c70 Add ability to specify project branch to install 2020-01-28 19:00:39 -05:00
Kyle Stone f9a31a25db Put subprojects into folder specified by upstream wrap. 2020-01-28 19:00:39 -05:00
Kyle Stone bec46cc141 Fix expected/obtained hashes 2020-01-28 19:00:39 -05:00
Jon Turney d4c7ff173a
Make run_cross_test.py just a wrapper around run_project_tests.py
This makes the platform_fix_name() machinery for toolchains which don't
have gcc-like filename conventions available to cross testing.
2020-01-28 21:53:52 +00:00
Jon Turney ea805d4287
Make run_project_tests.py aware of --cross-file option 2020-01-28 21:42:06 +00:00
Jon Turney 26d1c2a52d
Specify crossfile use in CI job configuration
Pull the crossfile specification out of run_test.py so it can be
specified in the CI job configuration.

Also make some fixes to output ordering in run_test.py.
2020-01-28 21:41:22 +00:00
Daniel Mensinger d0c7b51693 mintro: use interpreter data for buildsystem-files (fixes #6390) 2020-01-28 21:18:25 +02:00
Daniel Mensinger 668610c0d2 backend: refactor: set self.interpreter in the constructor 2020-01-28 21:18:25 +02:00
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
2020-01-28 10:52:00 -08:00