Commit Graph

7394 Commits

Author SHA1 Message Date
Jussi Pakkanen dc2044c56d Report xpass results as failures. 2019-04-21 03:01:04 +03:00
Dylan Baker 79e925b8f6 docs/fallback-wraptool: wrap to 80 characters 2019-04-14 20:54:38 +03:00
Dylan Baker 68f5bfea62 docs: update fallback wraptool docs [skip ci]
Fixes #5229
2019-04-14 20:54:38 +03:00
Nirbheek Chauhan 10468b3a28 interpreter: Warn when environment() ops are overriden
Warn when someone tries to use append() or prepend() on an env var
which already has an operation set on it. People seem to think that
multiple append/prepend operations stack, but they don't.

Closes https://github.com/mesonbuild/meson/issues/5087
2019-04-13 22:53:33 +03:00
Daniel Mensinger c04651fe24 mintro: Fix set_variable plus assign bug (closes #5256) 2019-04-13 09:51:15 +00:00
Elliott Sales de Andrade eaed4aecbe Run postconf scripts absolutely last.
Introspection is broken if they are run any earlier.
2019-04-13 04:30:59 +00:00
Elliott Sales de Andrade e9b4344aee TST: Actually check that postconf introspection works. 2019-04-13 04:30:59 +00:00
Dylan Baker 0a0b473e84 interpreter: use container explosion where it makes sense
we can avoid writing code like:
a = c[0]
b = c[1]
by using:
a, b = c

or
a = c[0]
b = c[1:]
by using:
a, *b = c

This saves just a bit of code and is a teeny bit faster. But mostly
for less code
2019-04-12 00:24:51 +03:00
Dylan Baker 00a3bb8d69 interpreter: use zip function
Currently this is implemented as range(min(len(a), len(b)), an then
indexing into a and b to get what we actually want. Fortunately python
provides a function called zip that just does this.
2019-04-12 00:24:51 +03:00
TheQwertiest 2499e25476 Added a unit test for built-in options docs 2019-04-12 00:24:07 +03:00
jrl64 a2d222c383 Update Built-in Option c_std for C17. Closes #4842. 2019-04-10 23:14:51 +03:00
Jussi Pakkanen 04710b087a Add support for VS2019. Closes #4640. 2019-04-10 23:13:47 +03:00
Dylan Baker 02ff9829c4 docs: Change 0.51 to 0.50.1 [skip ci]
Since this is targeting the 0.50.1 bugfix release.
2019-04-10 19:30:18 +03:00
TheQwertiest 52fa6152cd [docs] Reordered options and fixed a typo [skip ci] 2019-04-10 19:29:25 +03:00
Dylan Baker 67ca2d5bdc docs: Document pkg_config_path and cross_ options [skip ci] 2019-04-09 16:34:10 +00:00
Jussi Pakkanen 6fcf6dfd68 Use LDFLAGS only on languages that need it. Closes #5215. 2019-04-09 16:01:52 +00:00
Jussi Pakkanen 54db2c9bab
Merge pull request #5225 from dcbaker/threads-is-not-special
Threads is not special
2019-04-08 21:06:55 +03:00
Daniel Mensinger d72d98d3af mintro: removed deprecated --target-files API 2019-04-08 21:06:15 +03:00
Jussi Pakkanen 93f756ec25
Merge pull request #5176 from ao2/add-subproject-foreach-command
Add 'meson subprojects foreach' command
2019-04-08 20:42:03 +03:00
Igor Gnatenko 2946eb4404
Revert "rpm: Always set b_ndebug to true"
It turned out that it is not really good idea.

This reverts commit da1bb49787.

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2019-04-08 13:00:40 +02:00
Nirbheek Chauhan ef87d11dcd
Merge pull request #4931 from dcbaker/pkg-config-builtin
dependencies: Add command line option for pkg_config_path
2019-04-07 07:55:36 +00:00
Paolo Bonzini a2c3ba474a mtest: fix TAP with --verbose (#5160)
* mtest: fix TAP with --verbose

TAP needs to process the test stdout even if --verbose is passed.
Capture it to a separate temporary file, and print it at the end
of the test if --verbose was passed.

In the future, we could parse it on the fly and print the result of
each TAP test point in verbose mode.

* Prefer "stderr is stdout" to "=="

The previous commit used "==" in accordance with the preexisting code,
but reviewers preferred using "is" instead. Fix both occurrences.
2019-04-07 02:42:44 +03:00
Jan Tojnar e8a688428d Add gpgme-config support
GPGME does not support pkg-config so we need config-tool support if
we do not want projects like Almanah and Seahorse to parse the values
manually.
2019-04-06 22:35:10 +03:00
Dylan Baker 63090605a5 dependencies/dev: Use ext_deps for GTest in GMock
Rather than assigning the gtest variables to gmock, just set gtest as
a sub dependency.
2019-04-05 16:42:44 -07:00
Dylan Baker 6ad7fbf950 dependencies/misc: don't special case threads
Instad of having special casing of threads in the backends and
everywehre else, do what we did for openmp, create a real
dependency. Then make use of the fact that dependencies can now have
sub dependencies to add threads.
2019-04-05 16:41:08 -07:00
Dylan Baker b842b0b04a dependencies: Add ext_deps to all dependencies
I'll be using this later, but it seems useful to allow dependencies to
that have special handlers to declare that they depend on other
dependencies. This should allow us to stop treating threads special
internally and just make it a normal dependency.
2019-04-05 16:19:30 -07:00
Dylan Baker 91b2475e30 dependencies/pkg-config: Add support for different cross_flags 2019-04-05 15:08:17 -07:00
Dylan Baker 377b652b93 coredata: Add ability to mark options as having separate cross values
Currently this only marks the pkg_config_path flag, but it could be
used to mark any of these values as having separate values for cross
and native builds, assuming that the necessary plumbing is done.
2019-04-05 15:08:17 -07:00
Dylan Baker 569e646e1e dependencies: Add command line option for pkg_config_path
This creates a new command line option to store pkg_config_path into,
and store the environment variable into that option. Currently this
works like the environment variable, for both cross and native targets.
2019-04-05 15:08:17 -07:00
Dylan Baker 25eb86382b run_cross_tests: Pass correct argument
I don't konw how the heck this has ever worked, but you know.
2019-04-05 15:08:17 -07:00
Michael Hirsch, Ph.D d6be7822a0 BUGFIX: don't crash Meson on bad existing exe file for Fortran sanity check 2019-04-05 23:50:22 +03:00
Michael Hirsch, Ph.D 42a04f7e23 BUGFIX: Microsoft MPI is only compatible with Intel Fortran 2019-04-05 23:48:20 +03:00
Dylan Baker 5ce0d9fbbb coredata: Don't log warnings about reserved prefixes 2019-04-05 09:26:42 -07:00
Dylan Baker 068c3bf60a optinterpreter: Add a log argument to is_invalid_name
Since we're adding arguments that use the cross_ prefix but are valid
we don't want to print "warning invalid argument name!", as that will
confuse people by virtue of being wrong.
2019-04-05 09:26:42 -07:00
Dylan Baker 05ad69a1c7 optinterpreter: Add type annotations to is_invalid_name 2019-04-05 09:26:42 -07:00
Dylan Baker 863de72599 coredata: Fold add_builtin_argument into BuiltinOption
It really is a method of the BuiltinOption class, not a standalone
function.
2019-04-04 15:02:20 -07:00
Dylan Baker 1d7eda5fc8 coredata: Merge get_builtin_option_cmdline_name into BuiltinOption 2019-04-04 15:02:20 -07:00
Dylan Baker c3cb966631 coredata: merge get_builtin_option_default in to BuiltinOption 2019-04-04 15:02:20 -07:00
Dylan Baker 5aa2219f50 coredata: pull get_builtin_option_choices into BuiltinOption
We can remove some guards here since we know the object will have
certain attributes.
2019-04-04 15:02:20 -07:00
Dylan Baker 1e5496d1ba coredata: Remove get_builtin_option_description
Since the attribute is always accessible from a BuiltinOptions
instance we don't need a special function for this.
2019-04-04 15:02:20 -07:00
Dylan Baker 6940848f0b coredata: Move argparse action getterin into BuiltinOption class 2019-04-04 15:02:20 -07:00
Dylan Baker f8fcc7174d coredata: Remove is_builtin_option
This is a silly abstraction at this point.
2019-04-04 15:02:20 -07:00
Dylan Baker c6060d795c coredata: remove get_builtin_options
This returns a list out of th keys of a dict. In both cases of use
remaining though it's used for checking membership, checking for list
membership, lists are O(n) lookup, while dicts are O(1), so removing
the abstraction reduces typing and improves performance.
2019-04-04 15:02:20 -07:00
Dylan Baker d778a371ac coredata: Add an object to abstract builtins
Currently the builtins are stored as lists, then there are a mess of
functions which take said lists, check what the type of the first
thing is, and then extract data from various points in the list based
on that.

This is stupid. This is what structs/classes are for.
2019-04-04 15:02:17 -07:00
Jan Niklas Hasse 4e939bcf8a Use ExternalProgram to find config tools, fix #1423
Needed for wx-config on Windows.
2019-04-04 22:12:12 +03:00
Jussi Pakkanen 4f0f618fa9
Merge pull request #5205 from dcbaker/python-module-log
Python module log which python is found
2019-04-04 22:11:33 +03:00
Arkadiusz Hiler 690dd723f4 Add symbol sizes to .symbols files
If we change a symbol size (e.g. array) in a .c file that is a part of
.so, executables that use it are not re-linked resulting in a runtime
error:

"Symbol xyz has different size in shared object, consider re-linking"

Adding symbol sizes to .symbol files fixes this issue.
2019-04-04 22:10:40 +03:00
Dylan Baker 94ba53c6b6 backends/ninja: Add native files to rebuild dependencies
Just like cross files.
2019-04-04 16:28:16 +00:00
Dylan Baker a710b83a67 modules/python: normalize output for disabled by feature
Instead of printing a message about how python was skipped, print the
normal 'Program foo found:' message, with a "disabled by feature"
message added.
2019-04-03 14:48:29 -07:00
Dylan Baker de48e887b8 modules/python: Do disabler check after validating inputs
This will help developers not introduce bugs (say putting 3 instead of
"python3"), and will be useful for the next patch.
2019-04-03 14:48:29 -07:00