aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-05-19Build private directory name from output file name.Jussi Pakkanen3-14/+29
2020-05-18pass exe_wrapper to test scripts through the environmentDylan Baker7-21/+75
This adds a new MESON_EXE_WRAPPER environment variable containing the string form of the exe_wrapper, if there is an exe_wrapper defined. Fixes #4427
2020-05-18backends: Consider arguments passed to a test when cross compilingDylan Baker16-11/+39
Otherwise a wrapper script which takes an executable as an argument will mistakenly run when that executable is cross compiled. This does not wrap said executable in an exe_wrapper, just skip it. Fixes #5982
2020-05-18backends: ensure that test executables can be run when passed as argumentsDylan Baker5-11/+44
If an executable is passed as an argument to a script in the build directory that it resides in then it will not execute (on *nix) due to a lack of ./. Ie, `foo` must be called as `./foo`. If it is called from a different directory it will work. Ie `../foo` or `bar/foo`. Fixes #5984
2020-05-18tests: Add tests for cross file exe_wrapperDylan Baker1-2/+52
tests needs_exe wrapper but doesn't have one, !needs_exe_wrapper, and needs_exe_wrapper and has one.
2020-05-18run_unittests: move cross_file_system_paths to the cross testsDylan Baker1-61/+63
2020-05-18mtest: don't use len() to test container emptinessDylan Baker1-5/+5
It's not idiomatic python and is significantly slower than not using the bool protocol.
2020-05-18Merge pull request #7103 from dankegel/bug4027-rpath-rememberJussi Pakkanen27-55/+253
Let .pc files and LDFLAGS provide rpaths.
2020-05-18symbolextractor: add OpenBSD supportAntoine Jacoutot1-0/+19
2020-05-18compilers/d: Enable pgo for GDCDylan Baker1-1/+2
2020-05-18Add cmake files to msi package.georgev931-0/+2
2020-05-16docs: add snippet documenting rpath behavior changeDan Kegel1-0/+7
2020-05-16Let LDFLAGS specify rpath.Dan Kegel7-0/+69
Fixes #2567
2020-05-16Let .pc files specify rpath.Dan Kegel21-55/+177
Fixes #4027
2020-05-16Add flags to support generation of dependency files with armclangDrew Reed1-1/+1
2020-05-16Modifed buildtypes and armcc compiler flags to match documented resultsDrew Reed1-7/+7
2020-05-16Call to CPPCompilers initilisation function was missing the info parameter ↵Drew Reed1-1/+3
during ArmClangCPPCompiler initialisation
2020-05-15Add expected stdout for failing-meson tests which are missing itJon Turney10-0/+70
2020-05-15Make expected stdout mandatory for warning-meson and failing-meson testsJon Turney1-40/+45
Unify present or absent test.json file cases in gather_tests Make expected stdout mandatory in test.json for some test categories Use a trivial TestCategory class rather than a tuple, to make it easier to default category attributes
2020-05-15symbolextractor: Do not store the size of code objectsNirbheek Chauhan1-1/+4
This will almost always change and cause a relink of everything. Our other symbol extractor implementations do not store this either. We only need to store the size of data objects, since that necessitates a relink due to copy relocations. Drastically reduces the amount of relinking required in gstreamer and gtk on Linux.
2020-05-15ninjabackend: Treat GNOME gir/typelib as librariesNirbheek Chauhan2-1/+12
When classifying generated sources, we were treating gir/typelib files generated by gobject-introspection as headers. This is bad because it serializes the build by adding order-only dependencies to every target even though sources will never actually use them for anything. Treat them as libraries, which is somewhat more accurate.
2020-05-15ninjabackend: Use order-only gen-header deps for gen-sourcesNirbheek Chauhan1-1/+1
We do not need to *always* rebuild generated sources when a generated header changes. We will get that information from the compiler's dependency file, and ninja will track it for us. This is exactly the same as static sources. However, we do need an order-only dependency on all generated headers, because we cannot know what headers will be needed at compile time (which is when the compiler's dependency file is generated). This fixes spurious rebuilds and relinking in many cases.
2020-05-15travis/macos: Restore the old pkg-config behaviourNirbheek Chauhan2-2/+4
We need to test both "have pkg-config" and "don't have pkg-config" pathways on macOS, which is why pkg-config was only installed in one branch based on --unity=on/off.
2020-05-15cmake: Print supported stds when warningNirbheek Chauhan1-2/+4
This was helpful while debugging CI failure on the 0.54 branch due to a difference in the structure of self.env.coredata.compiler_options: https://github.com/mesonbuild/meson/runs/674391139 https://travis-ci.org/github/mesonbuild/meson/jobs/686982807
2020-05-14Docs: Make the suggested use for the not-found dependency better [skip ci]Dylan Baker1-4/+6
2020-05-14run_unittests: Use unittest.mock instead of a handrolled mockDylan Baker1-11/+8
2020-05-14optinterpreter: Enable and update FeatureNew to use_singleDylan Baker1-7/+5
With the version information fixed we can use a FeatureNew inside the optinterpreter, so let's do it.
2020-05-14interpreter: Add always set default value for version and set it ASAPDylan Baker2-5/+6
Ideally we wouldn't need to have the default dict here and could just rely on it being set as soon as project is called. There is a corner case exercised by test case common/35 run program, which is that if a FeatureNew or FeatureDeprecated is called to generate the meson version it will be unset, to work around this I've changed the type from a dict to a default dict with '' as the default value. A better fix would probably be to store all of the FeatureNew/FeatureDeprecated checks until the end, then evaluate them, but for now this results in no loss of functionality, only more functionality, even if it isn't prefect.
2020-05-14use FeatureNew.single_useDylan Baker4-26/+29
This is just slightly cleaner looking
2020-05-14modules/pkgconfig: Remove duplicate FeatureNewDylan Baker1-2/+0
2020-05-14interpreterbase: Proxy extra_message through to feature_check_classDylan Baker1-2/+5
2020-05-14interpreterbase: Add a oneline helper method for Feature(New|Deprecated)Dylan Baker1-4/+15
This allows us to replace FeatureNew(..).use() with just FeatureNew.single_use(...). It's a lttle cleaner and hides some of the smell.
2020-05-14backend/vs: Fix b_vscrt=from_buildtype for debugoptimizedPeter Harris1-2/+2
The ninja backend only uses the debug C runtime for 'debug', not for 'debugoptimized'. The ninja backend always uses the DLL C runtime for all configurations. The documentation matches the ninja backend. Make the visual studio backend follow the documentation (and the precedent set by the ninja backend).
2020-05-14boost: always use compiler include pathsDaniel Mensinger1-2/+6
2020-05-14interpreter: Replace some uses of mlog.deprecation with FeatureDeprecatedDylan Baker3-9/+8
This gives the version that the feature was deprecated in, and doesn't print the warning if the project supports versions of meson in which the project wasn't deprecated.
2020-05-14interpreter: Rename has_exe_wrapper -> can_run_host_binariesDylan Baker7-15/+29
The implementation of this function has changed enough that the name doesn't really reflect what it actually does. It basically returns true unless you're cross compiling, need and exe_wrapper, and don't have one. The original function remains but is marked as deprecated. This makes one small change the meson source language, which is that it defines that can_run_host_binaries will return true in build == host compilation, which was the behavior that already existed. Previously this was undefined in build == host compilation.
2020-05-14interpreterbase: Allow passing an extra message in feature/deprecation warningsDylan Baker3-7/+22
The intended use it to tell people the new thing to do.
2020-05-14gnome.generate_gir: Fix missing include directoriesXavier Claessens7-9/+179
This revert a part of #7020 because it was using gir_inc_dirs before it is set. Properly fix typelib_includes instead that was working only when g-i is a pkgconfig dependency.
2020-05-14coredata: Fixup the default libdir value, not the set valueNirbheek Chauhan1-3/+3
We shouldn't change the value of libdir after builtins have been initialized because we want to change the *default* value.
2020-05-14unit tests: Fix broken test_cross_libdir testNirbheek Chauhan1-6/+13
test_cross_libdir() was broken because we were passing `--libdir=lib` when invoking meson. We didn't notice that https://github.com/mesonbuild/meson/issues/6115 broke because of this.
2020-05-14cmake: Fix string substitution index errorNirbheek Chauhan1-2/+2
``` File "mesonbuild/cmake/interpreter.py", line 293, in postprocess 'Unknown {}_std "{}" -> Ingoring. Try setting the project' IndexError: Replacement index 2 out of range for positional args tuple ```
2020-05-14ui/qt: Warn if Android cpu_family is unknownNirbheek Chauhan1-0/+3
2020-05-14ui/qt: use new directory layout for qt on androidMatthew Waters1-0/+14
Now follows ios and other platform directory layouts. Moves from separate android_$arch directories to every library containing a _$arch suffix. e.g. libQt5Core_x86.a in a single directory.
2020-05-14gfortran: Fix has_header implementation with GCC 10Nirbheek Chauhan1-0/+12
__has_include is not accepted as a pre-processor directive in Fortran code since GCC 10. Closes https://github.com/mesonbuild/meson/issues/7017
2020-05-14boost: Try finding libraries with the matching arch (fixes #7110)Daniel Mensinger2-5/+52
2020-05-14docs: Add a Howto about the null dependency [skip ci]Dylan Baker1-0/+23
2020-05-13Merge pull request #6620 from jon-turney/test-output-checkDylan Baker120-48/+940
Add a mechanism for validating meson output in tests
2020-05-13interpretor: Do not add dependencies if we already have themMarcel Hollerbach1-0/+4
in tree like dep structures with a lot of source: declarations, this can result in a lot of presure on the source list. this saves ~3s out of 7s in the interpretor stage in efl build.
2020-05-13macos: Remove framwork linkerlike argsEric Lemanissier2-2/+2
fixes-up 33fbc548ab74e79280d2f57b2cd499d14c1f1e91
2020-05-13Fix outdated cross-compilation checksOle André Vadla Ravnås4-14/+17