aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2019-12-04ci/test: unused args for objc, objc++Michael Hirsch, Ph.D6-7/+11
2019-12-04ci/test: unused args for WindowsMichael Hirsch, Ph.D33-28/+86
2019-12-04Add raise at the start of MesonExceptionMichael Brockus1-7/+7
2019-12-03mparser.py: actually check the type of key variable, not its valueMarc Herbert2-6/+15
Fixes PR #6166 and more specifically commit 4e460f04f3b2 that tried to make sure the type of a key variable is a string but checked the type of the value instead. Extends test common/228's limited coverage, its only test case had (surprise) a string value. Also avoid reserved python keyword 'dict' and potentially confusing string 'key'. Implements #5231 for real.
2019-12-03run_unittests: Add tests for LD on windowsDylan Baker1-0/+23
2019-12-03linkers: make constructor signature of VisualStudioLike linkers the sameDylan Baker1-4/+6
2019-12-03environment: Fix selecting the linker with rustcDylan Baker2-29/+45
2019-12-03linkers: Correct MSVC-like linkers invoke directly flagDylan Baker1-1/+1
This is returning the inverse of the correct value, which happens to work out because in general the compilers that a link.exe-like linker is paired with accepts the same arguments.
2019-12-03run_project_tests: Fix skip rustDylan Baker1-5/+4
which expects an argument of backend, but isn't getting one.
2019-12-03run_unittests: Add unittests for ld overridingDylan Baker1-0/+37
2019-12-03Intel: Dump worthless Xild abstractionsDylan Baker3-31/+15
This dumps xild on mac and linux. After a lot of reading and banging my head I've discovered we (meson) don't care about xild, xild is only useful if your invoke ld directly (not through icc/icpc) and you want to do ipo/lto/wpo. Instead just make icc report what it's actually doing, invoking ld or ld64 (for linux and mac respectively) directly. This allows us to get -fuse-ld working on linux.
2019-12-02run_unittests: remove unused PatchModule classDylan Baker1-20/+1
2019-12-02azure: print where link.exe is coming from tooDylan Baker1-1/+2
2019-12-02environment: Add a special error case for getting GNU link.exeDylan Baker1-0/+5
Since I spent three days banging my head against this it seems reasonable that other people might also run into this problem. It can happen if you're trying to use microsoft's link.exe, but also have the dmd bin directory at the tail of your %PATH%, among other reasons.
2019-12-02environment: unify platform detection logicDylan Baker1-4/+2
I noticed this while I was here, it's not much, just a small cleanup to the platform detection logic.
2019-12-02docs: Update docs for LD and ld entriesDylan Baker3-2/+31
2019-12-02environment: Remove duplicate argument from _guess_nix_linkerDylan Baker1-32/+27
Since we pass the whole compiler class (as a type()) we don't need to also pass it's LINKER_PREFIX attribute, we can just get it from the type we're passing.
2019-12-02Allow selecting the dynamic linkerDylan Baker9-95/+182
This uses the normal meson mechanisms, an LD environment variable or via cross/native files. Fixes: #6057
2019-12-02backends/ninja: apply linker arguments when using rustDylan Baker1-0/+2
This will be required to make switching the linker work with rust.
2019-12-02Fix detection of D linker in MSVC environmentsDylan Baker1-4/+5
Rather than trying to figure out if we're using MSVC based on environment variables, then trying to get the C compiler and test some attributes, get the C compiler and see if it's MSVC. This is much more reliable and we were already doing it anyway.
2019-12-02linkers: Fix Apple and VS-like linkers always_argsDylan Baker1-2/+2
Which would not call the super() method, thus overriding the default behavior when it should have instead extended it.
2019-12-02doc: update travis-CI info and add GitHub Actions example [skip ci]Michael Hirsch, Ph.D1-50/+100
2019-11-30scalapack: test that find methods workMichael Hirsch, Ph.D2-5/+0
2019-11-30scalapack: allow specifying find methodMichael Hirsch, Ph.D3-87/+311
2019-11-30CI: scalapack not skippable since it's now in Docker imageMichael Hirsch, Ph.D1-5/+1
2019-11-30CI-actions: combine extra frameworks tests into one .yml fileMichael Hirsch, Ph.D2-41/+25
2019-11-30scalapack: run without mpiexecMichael Hirsch, Ph.D2-19/+4
Normally MPI programs would be run with MPI exec, but Travis-CI has errors wanting --allow-run-as-root. To simplify, we don't use mpiexec in this test, since it's a library check, not an MPI stack check.
2019-11-30scalapack: add to DockerfileMichael Hirsch, Ph.D2-30/+2
scalapack: actions Macos
2019-11-30deps: add scalapackMichael Hirsch, Ph.D8-3/+314
Scalapack uses a library stack that can be challenging to manage. Not least of all since many Scalapacks ship with broken / incomplete pkg-config files and CMake FindScalapack.cmake This resolves those issues for typical Scalapack setups including: * Linux: Intel MKL or OpenMPI + Netlib * MacOS: Intel MKL or OpenMPI + Netlib * Windows: Intel MKL (OpenMPI not available on Windows)
2019-11-30fix extraneous '\\ ' in some windows pkg-config filesMichael Hirsch, Ph.D1-1/+4
This fixes general issues with pkg-config on Windows, including specifically with Intel MKL that has "wrongly" escaped spaces on Windows.
2019-11-30Update CI Continuous Integration page and add CircleCi example [skip ci]Michael Brockus1-7/+61
2019-11-30Prevent the presence of duplicated items in .vcxproj filesLuca Bacci1-22/+43
Visual Studio refuses to open projects that present duplicated items, for example: <ItemGroup> <CLInclude Include="glib-enumtypes.h"/> <CLInclude Include="glib-enumtypes.h"/> </ItemGroup> Note that MSBuild handles duplicated items without any issue, this is useful only for compatibility with the VS IDE. See pull request mesonbuild#6151 Fixes issue mesonbuild#6147
2019-11-30cmake: Make output_target_map more robust (fixes #6208)Daniel Mensinger7-66/+160
This PR refactors the old output_target_map, which was a raw dict, into it's own class. This makes the access to the map more uniform and robust (at the cost of more lines of code). Additionally relative paths to the build directory are now also tracked for outputs. This is neccessary to corretcly distingluish files with the same name, that are in different directories.
2019-11-30improve error message when old version detectedtaz-0071-1/+2
Be more explicit about the --wipe command requiring to be executed from the source dir.
2019-11-30Fix regular expression for MSVC target arch detectionLuca Bacci1-1/+1
Make it work regardless of MSVC output language Fixes #6128 See PR #6265
2019-11-29docs: fix typochris1-1/+1
2019-11-29tests: add osx test case for PIE builds.Mihai Moldovan2-0/+8
2019-11-29linkers: AppleDynamicLinker supports -pie.Mihai Moldovan1-0/+3
The linker implementation split up introduced a regression: since the AppleDynamicLinker subclass doesn't expose PIE support, builds using that feature just plainly fail. Add back support for it using the default and supported -pie flag.
2019-11-28Revert "Have set() and set_quoted() of configuration object work with newlines."Xavier Claessens4-15/+0
This reverts commit 6ed36e97aeb01dd779115a9710d3a97cdbcb4ccf.
2019-11-28wrap: Redirect stdin to DEVNULL (again)Nirbheek Chauhan1-0/+4
Same fix as e7b25018c4715e538234d4ba51e32194b4757388, was accidentally missed when this code was rewritten.
2019-11-28Merge pull request #5989 from xclaesse/cmake-part2Jussi Pakkanen7-26/+203
cmake: Add support for add_custom_target() and add_dependencies()
2019-11-28wrap: Resolver.get_git: Factor out --depth argument generation and make sure ↵Martin Hostettler1-5/+9
not to pass None as parameter 507cf47507cf47 broke the combination of clone-recursive without depth. Because it passed depth (as None) to git. To fix this the depth option is now generated once as a list when depth is set and else set to an empty list and unpacked into the argument this when needed. This reduces duplication and allows code to work the same for both cases.
2019-11-28ci: hdf5: Actions MacOS CI addedMichael Hirsch, Ph.D1-62/+3
* MacOS Homebrew catches latest HDF5 release * Linux catches older HDF5 release * MSYS2 isn't yet ready on Actions for this test
2019-11-28HDF5: make much more robust across platformsMichael Hirsch, Ph.D6-73/+232
This addresses various real-world problems with HDF5 pkg-config, including * hdf*.pc with package versions as part of the filename * malformed hdf*.pc missing the commonly-used HDF5 HL module --- Additionally, this refactors more complicated dependencies such as HDF5 and OpenMPI. This may help us deduplicate internal dependency code in the future. HDF5 selftest: improve platform-agnostic test ci: init demo github action for HDF5 framework ci Actions: hold off on MSYS2 for now [skip ci] hdf5: ensure C libraries always included ci: mac hdf5--use clang+gfortran
2019-11-28cmake: Reassign dependencies from header-only targetsDaniel Mensinger1-0/+45
2019-11-28cmake: Detect dependenciy cycles and avoid infinite recursionDaniel Mensinger1-0/+9
2019-11-28cmake: Some minor fixupDaniel Mensinger5-14/+47
2019-11-27docs: Fix typo [skip ci]Robert Ancell1-1/+1
2019-11-27cmake: Add unit test for add_custom_target() and add_dependency()Xavier Claessens3-0/+32
Also test commands with args separated by ';'
2019-11-27cmake: Propagate error when running commandXavier Claessens1-1/+4