Commit Graph

2523 Commits

Author SHA1 Message Date
Jussi Pakkanen dc083b4fe7 Increment version number for release. 2016-10-03 22:50:35 +03:00
Jussi Pakkanen f73c0a1098 Merge pull request #843 from mesonbuild/tingping/gir-dir
gnome.generate_gir(): Fix install_dir and add install_dir_gir and install_dir_typelib
2016-10-03 21:27:54 +03:00
Jussi Pakkanen 7256e109bf Merge pull request #718 from QuLogic/glib-mkenums-genmarshal
glib-mkenums and glib-genmarshal support
2016-10-03 19:07:42 +03:00
Nirbheek Chauhan efc986ee93 swift tests: Port to Swift 3
Should remain compatible with Swift 2.2
2016-10-03 19:01:02 +03:00
Patrick Griffis dd9dfa77fb gnome.generate_gir(): Add install_dir_gir and install_dir_typelib
A generic `install_dir` is less useful and didn't work so just ignore it
2016-10-03 02:34:33 -04:00
Jussi Pakkanen 62ec92c8b0 Set soname with clang properly. 2016-10-02 12:52:16 -04:00
Patrick Griffis 084b854ce0 gnome: Consistently include current source dir
This is a common pattern so avoid the duplication
2016-10-02 12:16:22 -04:00
Jussi Pakkanen c69c15ee16 Revert #823, see also #830. 2016-10-02 09:35:02 -04:00
Jussi Pakkanen 6ec1e99043 Merge pull request #803 from centricular/generated-sources-header-deps
ninja backend: Fix header deps of generated source compiles
2016-10-01 15:41:46 -04:00
Jussi Pakkanen da57f77394 Merge pull request #827 from centricular/vala-generated-source-subdir
Add a vala test for generated sources in subdirs
2016-10-01 15:37:14 -04:00
Jussi Pakkanen f2df5f5567 Indent fix. 2016-10-01 22:36:51 +03:00
Nirbheek Chauhan 1e3d03cc09 ninja: Fix C file name for generated Vala sources
The Vala compiler preserves the path components of a Vala source file if
the source file is in a subdir.

Fixes https://github.com/mesonbuild/meson/issues/815
2016-10-02 00:50:45 +05:30
Nirbheek Chauhan f42d0f5063 Add a vala test for generated sources in subdirs
Modified from a test case provided by @benwaffle on
https://github.com/mesonbuild/meson/issues/815
2016-10-02 00:50:21 +05:30
Nirbheek Chauhan 3be01a7e7b Add a test for generated header deps of generated sources 2016-10-02 00:48:12 +05:30
Nirbheek Chauhan d3e73e0dbc tests/7 gnome: Add a dependency on the compiled schemas
The executable needs to pull in the compiled schemas or they won't be
compiled.
2016-10-02 00:48:12 +05:30
Nirbheek Chauhan 9d1aeebc27 ninja: Don't add every CustomTarget to 'all'
Otherwise they are built regardless of whether they are actually used by
anything else. Only build them if they're going to be installed or
always-built.

Ideally, we should also do this with all BuildTargets, and provide
a mechanism for people to specify which targets they want built with
'all', and a way for people to add them to custom targets.. Without
this, things like tests and examples are *always* built with no way to
turn that off.

For now, we just do this because it also with tests that check for
dependency issues. Including all CustomTargets in `all` results in
dangling targets to also be built, which hides the problem and makes it
racy.
2016-10-02 00:48:12 +05:30
Nirbheek Chauhan e713aca1d1 backends: Remove self.dep_rules dead code
self.dep_rules is not set anywhere by anything, so this code always
results in a no-op. If it didn't result in a no-op, it would need to be
seriously rewritten because it has bitrotten and makes no sense anymore.
2016-10-02 00:48:12 +05:30
Sam Thursfield 24e50b2697 Fix missing comma in backend.Backend.dedup_arguments()
This error meant that -I flags passed to the compiler were never
actually deduplicated.
2016-10-01 15:09:25 -04:00
Jussi Pakkanen 08e43e8bfd Revert #830 because it broke the case when the main script is not in path. 2016-10-01 22:06:54 +03:00
Jussi Pakkanen 207cdf2876 Merge pull request #836 from QuLogic/appveyor-artifacts
Upload test logs as artifacts on AppVeyor.
2016-10-01 11:44:50 -04:00
Jussi Pakkanen 295b67df51 Merge pull request #814 from centricular/heavy-cleanup-compilers-buildtargets
Heavy cleanup in compilers and BuildTarget
2016-09-30 15:30:57 -04:00
Emanuele Aina 338dbc964c User argv[0] to internally relaunch meson.py
When installing Meson distutils may choose to put shim scripts in the
PATH that only set up the egg requirements before launching the real
`meson.py` contained in the egg.

This means that __file__ points to the real `meson.py` file, but
launching it directly is doomed to fail as it's missing the metadata
contained in the shim to set up the path egg, resulting in errors when
trying to import the `mesonbuild` module.

A similar issue affects Meson when installed as a zipapp, with the
current code going great lengths to figure out how to relaunch itself.

Using argv[0] avoids these issues as it gives us the way the current
executable has been launched, so we are pretty much guaranteed that
using it will create another instance of the same executable.
2016-09-30 15:30:27 -04:00
Elliott Sales de Andrade b5ea899644 Fix PATH setting in AppVeyor.
Without the trailing semicolon, an errant space is inserted into the
last directory entry.
2016-09-29 04:29:32 -04:00
Elliott Sales de Andrade 063c689a3f Upload test logs as artifacts on AppVeyor. 2016-09-29 04:29:10 -04:00
Elliott Sales de Andrade 2840539a08 Don't overwrite mkenums C file dependencies. 2016-09-28 18:32:56 -04:00
Elliott Sales de Andrade 8f024c0697 Allow running mkenums without templates. 2016-09-28 18:32:46 -04:00
Jussi Pakkanen d61b71fdc2 Converted mkenums to be single invocation. 2016-09-28 18:21:42 -04:00
Elliott Sales de Andrade 1033728c85 Fix mkenums and genmarshal argument names.
Dashes aren't allowed in keyword argument names.
2016-09-28 18:20:18 -04:00
Elliott Sales de Andrade ceee8bc6b2 Generate genmarshal header and body simultaneously.
This follows the same style as gnome.compile_resources, which produces
both files from one invocation.
2016-09-28 18:20:18 -04:00
Elliott Sales de Andrade 2a8a0727fc Add support for glib-genmarshal to gnome module. 2016-09-28 18:20:18 -04:00
Elliott Sales de Andrade ab004ab189 Add support for glib-mkenums to gnome module. 2016-09-28 18:20:17 -04:00
Jussi Pakkanen 0a4957627a Merge pull request #808 from thiblahute/gtkdoc
Fix various gtkdoc issues
2016-09-28 17:03:58 -04:00
Jussi Pakkanen 154763f81b Deduplicate command line arguments. Slight improvement to #671. 2016-09-28 16:18:08 -04:00
Jussi Pakkanen b164ed611b Use Python provided by Appveyor environment. 2016-09-28 14:10:46 -04:00
Jussi Pakkanen 83ea23c052 Zipapp documentation update. 2016-09-28 19:44:00 +03:00
Franz Zapata ac41a45669 Support running Meson as a Python zip application 2016-09-28 12:40:54 -04:00
Nirbheek Chauhan 89753ecc27 Use per-target compilers while generating targets
This is definitely more correct since it takes into account the
cross-compilation status. We also now do the Java and CSharp sanity
checks on the BuildTarget level instead of in the Ninja backend.
2016-09-27 00:27:38 +05:30
Nirbheek Chauhan f85415f0d4 ninjabackend: Remove duplicate vala compiler usage 2016-09-27 00:27:38 +05:30
Nirbheek Chauhan 98e7625c64 Add a list of compilers used to each BuildTarget
When the BuildTarget (executable, shared-library, static-library, etc)
is created, process the source list and assign compilers to this target.
This allows us to do compiler-specific file-naming without resorting to
ugly hacks.

This is one step towards consolidating all the 'what language does this
target use' checks and the 'this target should only have $lang files as
sources' checks we have all over the codebase. All those checks should
be done only when the target is created.
2016-09-27 00:27:38 +05:30
Nirbheek Chauhan a0551d7d6e dependencies/boost: Fix 32-bit vs 64-bit on Windows
Fixes https://github.com/mesonbuild/meson/issues/526

Also removes useless and incorrect mesonlib.is_32bit() function. We
cannot trust that the architecture that Python is built for is the same
as the one we're targetting.
2016-09-27 00:27:38 +05:30
Nirbheek Chauhan c9a7422cc1 dependencies/boost: Require BOOST_ROOT while cross-compiling
Our fallback to the system-provided directories is never going to work
while cross-compiling
2016-09-27 00:27:38 +05:30
Nirbheek Chauhan bcf20af62e environment: Add support for MinGW/GCC to detect_windows_arch() 2016-09-27 00:27:38 +05:30
Nirbheek Chauhan a001fa0fb6 compilers: Make GCC detection more robust on all platforms
Fixes https://github.com/mesonbuild/meson/issues/650

Also adds new has_define and get_define internal API for querying
pre-processor defines provided by GNU compilers.
2016-09-27 00:27:38 +05:30
Thibault Saunier bb3823e6f4 gnome: Allow specifying gtkdoc where to install directory 2016-09-26 15:25:59 -03:00
Thibault Saunier f86fbf6ebf gnome: Run gtkdoc-scanobjs and add a way to get assets working
Allowing the object tree to be generated.

We need to add options to allow copying the ncesseary sources and
assets so the HTML generator can work with them (everything is
relative so we need to copy them in the build directory).

Until now the documentation was not generated from the user provided
main sgml file but it was using a generated one, which lead to a broken
documentation. Starting using it revealed the other bugs fixed in that
commit.
2016-09-26 15:25:59 -03:00
Thibault Saunier 68ae8e1ad0 gnome: Factor out a get_dependencies_flags method
And recurse to make sure that we build against all internal
dependencies dependencies.
2016-09-26 15:25:59 -03:00
Thibault Saunier 52a4b3302e gnome: Make all include paths absolute
The relative computation was broken when using
subprojects.
2016-09-26 15:25:59 -03:00
Nirbheek Chauhan f5caf40f66 ninja: Also add generated sources to the source list
The generated sources should also be used for determining the linker
2016-09-26 23:48:11 +05:30
Nirbheek Chauhan cfbffc6ba1 ninja: Fix header deps of generated source compiles
Because we were iterating over all generated sources of a target in one
go, we weren't adding the correct header_deps for generated source
compiles. We need to aggregate the header_deps first before generating
source compile targets for generated source files.
2016-09-26 23:48:11 +05:30
Nirbheek Chauhan ca507cdcdf ninja: Add a str and repr methods for RawFilename
This aids debugging immensely
2016-09-26 23:44:38 +05:30