aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-03-19Generators can depend on custom targets as well as build targets.gencustomJussi Pakkanen1-1/+1
2020-03-19compilers: Link D runtime/libphobs dynamically on !WindowsDylan Baker2-1/+19
Fixes: #6786
2020-03-19Fix failing rust CIXavier Claessens1-1/+1
rustc 1.42 now dynamically link to libstd so its path is needed in LD_LIBRARY_PATH.
2020-03-19Fix bogus parameter passed to LLVMDynamicLinker (llvm-mingw regression)Andrei Alexeyev1-1/+1
2020-03-17Revert "azure: Workaround MSYS2 PCH test failures"Jon Turney1-14/+0
This reverts commit 5f9dccb9bce957979efa6efea961192a12f76790.
2020-03-15Merge pull request #6779 from dcbaker/gdc-linker-argsJussi Pakkanen3-7/+26
Allow setting linker for GDC as well as LDC
2020-03-15fix conversion of hasattr to getattrDylan Baker2-2/+2
getattr() requires a default (return if missing) value or it raises an AttributeError. In a few cases I changed hasattr to getattr and didn't set a default value, so those cases could except. This corrects that.
2020-03-15Resolve Clang failure to use -Og with --optimization=gPhillip Johnston1-2/+9
Clang supports the GCC -Og flag, but --optimization=g is not setting that. This is because Clang is referencing the clike_optimization_args, which does not define a flag for 'g'. To address this, we'll mimic the GNU options instead of the C-like ones. Fixes #6619
2020-03-12docs: Update documentation for GDC linker overridingDylan Baker1-4/+6
2020-03-12compilers/d: Support linker selection with gdcDylan Baker1-1/+1
This should have worked before, but the inheritance order was backwards, so we got the DCompiler before the GnuCompiler, and the base Compiler methods overrode the Gnu methods.
2020-03-12unittests: Add tests for overriding D linker languageDylan Baker1-0/+14
2020-03-12run_unittests: Use skip_if_not_language for linker testsDylan Baker1-2/+5
A couple used checks for specific compiler binaries, but those might not be accurate for cross compiling. All the languages other than C and C++ (which we basically always assume we have) should have a skip_if_not_lang check.
2020-03-12docs: Document that ldc now supports linker overriding [skip ci]Dylan Baker1-0/+5
2020-03-12docs: Document from_builtype mapping for b_vscrt [skip ci]Nirbheek Chauhan1-0/+13
2020-03-12syntax-highlighting/vim: Add `in` as an operatorNirbheek Chauhan1-1/+1
This was missed. Ages ago.
2020-03-12Merge pull request #6356 from dcbaker/fix-d-compiler-abstractionsJussi Pakkanen19-133/+325
Fix d compiler abstractions
2020-03-11Add Glorytun in Users.md [skip ci]Adrien Gallouët1-0/+1
2020-03-11compilers: Don't put split soname args in start groupsDylan Baker5-1/+52
Some compilers that act as linker drivers (dmd and ldc) need to split arguments that GCC combines with , (ie, -Wl,-foo,bar -> -L=-foo -L=bar). As such we need to detect that the previous argument contained -soname, and not wrap that in a --start-group/--end-group This modifies the shared library test to demonstrate the problem, with a test case. Fixes #6359
2020-03-11compilers/d: Properly pass -soname argsDylan Baker1-4/+17
2020-03-11compilers/d: Fix rpath generation with LDC and DMDDylan Baker1-14/+18
2020-03-11coredata: Warn on usage of both -Dbuildtype and -Doptimization/-DdebugNirbheek Chauhan3-3/+12
It may not be obvious to users that these two ways to set build-types override each other and specifying both is redundant, and conflicts are resolved based on whichever is specified later. Closes https://github.com/mesonbuild/meson/issues/6742
2020-03-11coredata: Passing an option is supposed to set it, not flip the defaultNirbheek Chauhan2-3/+12
With the current logic passing `--debug` will actually be parsed as `-Ddebug=false`, which is absolutely not what is expected. There is no case in which the presence of a boolean option in `--foo` form will mean 'I want feature foo disabled', regardless of the *default* value of that option. Also includes a test. Closes https://github.com/mesonbuild/meson/issues/4686
2020-03-11coredata: Set default options as cmdline args that override each otherNirbheek Chauhan3-9/+32
The previous code was assuming that options do not depend on each other, and that you can set defaults using `dict.setdefault()`. This is not true for `buildtype` + `optimization`/`debug`, so we add defaults + overrides in the right order and use the options parsing code later to compute the values. Includes a test. Closes https://github.com/mesonbuild/meson/issues/6752
2020-03-11coredata: Convert all option parsing to OrderedDict()Nirbheek Chauhan1-5/+5
This ensures that options are always parsed in the order in which they were specified on the command-line, even with Python 3.5, and non-CPython implementations compatible with CPython 3.5 and 3.6. Closes https://github.com/mesonbuild/meson/issues/6742
2020-03-10Improve regular expression for MSVC compiler target arch detectionLuca Bacci1-1/+1
Did not work for some MSVC output language combinations. Now should work for every locale / output language. Fixes issue #6757
2020-03-09project_tests: Add the option to the test format to mark the languageDylan Baker9-17/+34
This is needed when mixing D and C code, as it's possible to end up witha combination of linkers and compilres such that C produces pdb files but D does not.
2020-03-09run_project_tests: Sort importsDylan Baker1-14/+16
It was impossible to figure out what was coming from where before.
2020-03-09linkers: Allow optlink to be invoked indirectlyDylan Baker2-3/+10
2020-03-09run_project_tests: fix argument typeDylan Baker1-1/+1
2020-03-09linkers: Move import_library_args to from VS compiler to linkerDylan Baker2-4/+4
This is the argument to name the implib when using the Visual Studio Linker. This is needed by LDC and DMD when using link.exe or lld-link.exe on windows, and is really a linker argument not a compiler argument.
2020-03-09tests: Add pdb files for d testsDylan Baker8-9/+24
2020-03-09Allow invoking the linker directly through dmdDylan Baker2-11/+24
DMD is awful in a lot of ways. To change the linker you set an environment variable, which is pretty much impossible for us.
2020-03-09Allow invoking link.exe and lld-link.exe through ldc2Dylan Baker2-24/+36
Like it wants
2020-03-09Document the requirement to run tests before coverage [skip ci]Vedran Miletić2-1/+16
Co-authored-by: Vedran Miletić <vedran@miletic.net>
2020-03-09travis: install ldc on macOSDylan Baker1-1/+1
So we have some dlang testing on macos.
2020-03-09project_tests: Add "version" to "shared_lib" and "pdb" typesDylan Baker4-24/+61
This allows the harness to apply the version correctly, putting it in the right place, dropping the right amount of numbers, etc. pdb taking a version allows it to be more easily copied from the shared_lib type.
2020-03-09Add OpenTitan to the list of users. [skip ci]Jussi Pakkanen1-0/+1
2020-03-09pkgconfig: Document conflicts keywordFini Jastrow2-1/+2
[why] Sometimes one want to set the 'Conflicts:' field in .pc files. This is possible by using the 'conflicts' keyword argument in the pkgconfig module. The feature is not documented on mesonbuild.org, though. But a warning is issued: WARNING: Passed invalid keyword argument "conflicts". WARNING: This will become a hard error in the future. History: It has been added along with kwarg 'url' with commit 309041918 pkgconfig: Add missing 'URL' and 'Conflicts' entries Later the kwargs check has been introduced with 80d665e8d Converted some modules. but both 'url' and 'conflicts' were missing. With commit 2acf737b pkgconfig: Document url keyword the 'url' kwarg has been added to the checks, but not 'conflicts'. [how] Add 'conflicts' to the allowed kwargs. Signed-off-by: Fini Jastrow <ulf.fini.jastrow@desy.de>
2020-03-09Merge pull request #6532 from jon-turney/languages-native-kwargJussi Pakkanen12-18/+103
Add add_languages(native:)
2020-03-09Fix introspection of symlink targets on macOS.Jussi Pakkanen1-13/+33
2020-03-08Merge pull request #6736 from dcbaker/mesonlib-type-annotationsJussi Pakkanen20-325/+355
Mesonlib type annotations
2020-03-08cmake: Fix build_by_default: false, install: true (fixes #6737)Daniel Mensinger3-3/+7
2020-03-08Merge pull request #6688 from dcbaker/emcc-linker-bugsJussi Pakkanen15-32/+157
Emcc linker bugs and improvments
2020-03-08update test_templatesMichael1-0/+5
2020-03-08add logic for Java jar projectMichael1-7/+29
2020-03-08update test_templates to add dlang and find rustMichael1-1/+7
2020-03-08intro: List symlinks in installdata (fixes #6734)Daniel Mensinger2-3/+34
2020-03-08qt5: Add has_tools() methodXavier Claessens4-1/+53
2020-03-07Merge pull request #6203 from xclaesse/override-dependencyJussi Pakkanen15-43/+276
Add meson.override_dependency()
2020-03-07add setup keyword in example commands [skip ci]Michael Brockus1-2/+2