Commit Graph

5971 Commits

Author SHA1 Message Date
Christoph Behle efba193872 Ignore vim *.swp files [skip ci] 2018-07-16 00:38:52 +03:00
Thomas Hindoe Paaboel Andersen e2c36457c5 Avoid concatenating two options in list
'c++17' and 'gnu++98' were concatenated due to a missing comma
2018-07-13 20:00:50 +03:00
♫ Christian Krause ♫ c3e68189cd docs: adds a non-docker travis example (#3883) [skip ci] 2018-07-13 07:16:03 -07:00
Nirbheek Chauhan 43f7a75060 gnome.gdbus_codegen: Handle XML docbook in subdirs
Closes https://github.com/mesonbuild/meson/issues/3870
2018-07-11 22:47:12 +03:00
Daniel Schulte 6de9ebb10f Add Arduino ESP8266 sample project to Users.md 2018-07-11 22:25:26 +03:00
TingPing 544164b151
docs: Minor clarifications of gnome.compile_resources
This was causing confusion for a user about the fact any directory can be passed
2018-07-11 15:36:24 +02:00
Alberto Sartori 8bee30367e Implement get_link_whole_for() for IntelCompiler (#3863)
closes #3862
2018-07-10 13:23:51 -07:00
Nirbheek Chauhan 47c68a5993 find_library: Validate and sort globbed shared library files
We need to pick the library with the highest version, which is what
the OpenBSD linker also does.

https://github.com/mesonbuild/meson/issues/3570#issuecomment-403638752
2018-07-10 12:42:52 -07:00
Jussi Pakkanen 09ad29ec56 Fix directory verification. Closes #3857. 2018-07-09 23:14:59 +02:00
Nirbheek Chauhan 8cfb8fd02c
Fix searching of shared libraries on OpenBSD (#3851)
* get_library_naming: Use templates instead of suffix/prefix pairs

This commit does not change functionality, and merely sets the
groundwork for a more flexibly naming implementation.

* find_library: Fix manual searching on OpenBSD

On OpenBSD, shared libraries are called libfoo.so.X.Y where X is the
major version and Y is the minor version. We were assuming that it's
libfoo.so and not finding shared libraries at all while doing manual
searching, which meant we'd link statically instead.

See: https://www.openbsd.org/faq/ports/specialtopics.html#SharedLibs

Now we use file globbing to do searching, and pick the first one
that's a real file.

Closes https://github.com/mesonbuild/meson/issues/3844

* find_library: Fix priority of library search in OpenBSD

Also add unit tests for the library naming function so that it's
absolutely clear what the priority list of naming is.

Testing is done with mocking on Linux to ensure that local testing
is easy
2018-07-09 09:45:02 -07:00
gadic 28a2e658f8 docs: sources changed into sourcelist (#3855) [skip ci] 2018-07-09 07:09:54 -07:00
Nirbheek Chauhan 78f1ef85fd
Add missing method on external library object: type_name() (#3845)
For some reason this was missing, but it should've always existed
since cc.find_library() returns an object that is internally an
ExternalDependency instance.
2018-07-08 10:58:07 -07:00
Christoph Behle 2428b388db Document options for meson
Document what waring_level 1,2,3 means.
Test if markdown files are in sitemap
Add Builtin-options.md to sitemap.txt

Builtin-options.md:
  Fix tables in Builtin-options.md
  Add documentation for warning options
  Added more options to doc

General documentation:
  Add link to Builtin-options
  Remove obsolete file

Testing:
  Add function test_markdown_files_in_sitemap.
  Checks if each markdown file is contained in sitemap.txt
2018-07-08 10:56:37 -07:00
Nirbheek Chauhan 2093d45a4e Print a more usable message when a subproject fails to configure
Instead of just printing the message in the exception, if it's
a MesonException, also print the file and the line number. If it's an
unknown exception, print the entire traceback so that we can pin-point
what the Meson bug causing it is.
2018-07-07 04:33:24 -07:00
Nirbheek Chauhan 80392225a6 Raise a MesonException when substituting an invalid value
Avoids throwing a traceback. Also, warn when setting such a value.
2018-07-07 04:33:24 -07:00
Nirbheek Chauhan 4fb00ee1d8 Add new method: mlog.deprecation()
Instead of constructing it manually, use a helper.
2018-07-07 04:33:24 -07:00
Jussi Pakkanen 4dc97a910e
Merge pull request #3763 from noverby/wip/noverby/jar-linking-manifest
java: support for linking jar files (using manifest)
2018-07-07 13:10:22 +03:00
Nirbheek Chauhan 9bc9e9f306 Ask for more details when warning about unknown arch [skip appveyor] 2018-07-07 11:47:42 +03:00
Ross Burton e3e2e4ca14 Canonicalise 64-bit PowerPC CPU families to "ppc64"
Instead of exposing the endianness in the CPU family, canonicalise the CPU
family to just "ppc64" to match MIPS (which is also bi-endian).

Part of the work for #3842.
2018-07-07 11:47:42 +03:00
Nirbheek Chauhan a37c31e8a3 Reference-manual.md: Document find_library().partial_dependency() [skip ci]
+ typos.
2018-07-06 19:14:21 +05:30
Nirbheek Chauhan e4417eb301 mlog: Log timestamps in profile-self mode
This makes it much clearer which statements are taking a long time,
and helps in interpreting the outputted profile itself.
2018-07-06 06:25:12 +00:00
Nirbheek Chauhan 1415cd2d07 mlog: Add built-in support for quoting bolded messages
This allows us to drop wonky sep='' hacks and manual addition of
spaces across the codebase.
2018-07-06 06:25:12 +00:00
Nirbheek Chauhan f2b008f874 gnome.gtkdoc: Don't treat install_dir as a file option
Causes the value to be expanded to current source directory.

Fixes https://github.com/mesonbuild/meson/issues/3829
2018-07-06 05:44:02 +00:00
Nirbheek Chauhan b1901f315d
Builtin-options.md: broken markdown [skip ci] 2018-07-06 11:09:01 +05:30
Nirbheek Chauhan 77d66fec4b run_unittests.py: Test that empty cdata subst are actually done
Improved test for https://github.com/mesonbuild/meson/issues/3826
2018-07-05 19:01:46 +00:00
Nirbheek Chauhan 8e84b13850 meson.add_install_script: Move notes section up [skip ci]
The notes section of add_install_script somehow got separated, which
meant that no one reads it anymore.

Also rephrase it a bit to clarify that scripts *MUST* handle DESTDIR
correctly to mirror what Meson does, and how.
2018-07-05 19:01:46 +00:00
Jon Turney b387ab1ee1 Fix flake8 issues (#3834)
* Fix flake8 whitespace reports

$ flake8 | grep -E '(E203|E221|E226|E303|W291|W293)'
./mesonbuild/coredata.py:337:5: E303 too many blank lines (2)

* Fix flake8 'variable assigned value but unused' reports

$ flake8 | grep -E F841
./mesonbuild/modules/gnome.py:922:9: F841 local variable 'target_name' is assigned to but never used

* Fix flake8 'imported but unused' reports

$ flake8 | grep F401
./mesonbuild/compilers/__init__.py:128:1: F401 '.c.ArmclangCCompiler' imported but unused
./mesonbuild/compilers/__init__.py:138:1: F401 '.cpp.ArmclangCPPCompiler' imported but unused
./mesonbuild/modules/__init__.py:4:1: F401 '..mlog' imported but unused

PR #3717 imports ARMCLANG compilers in __init__, but does not add them to
__all__, so they are not re-exported by the compilers package like
everything else.

* More details about flake8 in Contributing.md

Mention that Sider runs flake8
Suggest seting flake8 as a pre-commit hook
2018-07-05 18:08:04 +00:00
Xi Ruoyao 8893d03703 Fix pkexec command for installation via polkit 2018-07-04 15:21:42 +00:00
Nirbheek Chauhan f18af09189 find_library: Only run link test on system dirs
Paths provided to us by the user or by pkg-config can be (and must be)
assumed to be usable since they might not be usable standalone.

Closes https://github.com/mesonbuild/meson/issues/3832
2018-07-04 10:39:14 +00:00
Nirbheek Chauhan 602e58d398 configure_file: Don't optimize away substitutions
It's possible that the configuration data object has components added
conditionally, and that sometimes an empty configuration data object
is passed on purpose.

Instead, we do the substitution and also warn if no tokens were found
that could've been substituted.

Closes https://github.com/mesonbuild/meson/issues/3826
2018-07-04 00:25:01 +00:00
Nirbheek Chauhan 2ac6f6be32 test cases: Merge two configure_file tests
Unnecessary overhead having a separate test like that.
2018-07-04 00:25:01 +00:00
Niclas Moeslund Overby 62a46a9b6e java: prevent creation of manifest duplicate in jar 2018-07-03 22:12:17 +02:00
Niclas Moeslund Overby c70a051e93 java: remove manifest classpath from installed jar 2018-07-03 22:12:17 +02:00
Niclas Moeslund Overby bc8239ded0 java: add jar linking test 2018-07-03 21:33:54 +02:00
Niclas Moeslund Overby 60b9c8300c java: implement java linking 2018-07-03 21:33:54 +02:00
Stephen Gallagher 70bc754a2c Add libmodulemd to the Users list (#3827) [skip ci]
libmodulemd is a GObject Introspected C library using meson to build and generate gtk-doc HTML.
2018-07-03 16:58:42 +00:00
Nirbheek Chauhan d58379abbe
Users.md: Add libmodulemd [skip ci] 2018-07-03 22:26:55 +05:30
Bruce Richardson 755ec53a6b prune nonexistent dirs from library search path
Rather than storing in the cache of search paths the full list returned
from the compiler and having each call ignore the non-existent ones, remove
from the list all non-existent ones before returning to the caching function.
2018-07-03 12:50:17 +00:00
Nirbheek Chauhan 8aba4aa2d7 0.47 release notes: Document polkit support [skip ci] 2018-07-03 03:12:55 +05:30
Nirbheek Chauhan c47c7105cc 0.47 release notes: Fix syntax, rephrase confusing sections [skip ci] 2018-07-03 01:51:54 +05:30
Jussi Pakkanen 36fbb48b43 Bump version number for new development. [skip ci] 2018-07-02 22:19:32 +03:00
Jussi Pakkanen 5d08219464 Update everything for new release. 2018-07-02 20:50:56 +03:00
Jussi Pakkanen 1c44afdeed
Merge pull request #3823 from mesonbuild/nirbheek/fix-featurenew-subprojects
Nirbheek/fix featurenew subprojects
2018-07-02 20:37:59 +03:00
Jussi Pakkanen 1ec3c79056 Documentation cleanup. [skip ci] 2018-07-02 20:35:00 +03:00
Nirbheek Chauhan cc58fdac33 setup.cfg: Don't warn about commented code 2018-07-02 19:52:53 +05:30
Nirbheek Chauhan d6a9b4cc79 Contributing.md: Document procedure for new features [skip ci] 2018-07-02 19:52:53 +05:30
Nirbheek Chauhan a1d9adba09 FeatureNew: Make all checks subproject-specific
We now pass the current subproject to every FeatureNew and
FeatureDeprecated call. This requires a bunch of rework to:

1. Ensure that we have access to the subproject in the list of
   arguments when used as a decorator (see _get_callee_args).
2. Pass the subproject to .use() when it's called manually.
3. We also can't do feature checks for new features in
   meson_options.txt because that's parsed before we know the
   meson_version from project()
2018-07-02 19:52:53 +05:30
Nirbheek Chauhan 5714ba2534 meson.vim: Add missing disabler() entry [skip ci] 2018-07-02 18:49:34 +05:30
Nirbheek Chauhan cd1d53ee75 FeatureNew: Declare functions as class methods explicitly 2018-07-02 07:05:08 +00:00
Nirbheek Chauhan a524524ac0 interpreter: Use is_subproject() everywhere 2018-07-02 07:05:08 +00:00