Commit Graph

332 Commits

Author SHA1 Message Date
Jussi Pakkanen 06ce41b525 Merge pull request #601 from Ippytraxx/master
Add custom_install_dir to ld path in pkgconfig module
2016-06-18 19:55:54 +03:00
Nirbheek Chauhan b1077dded7 vs backends: Translate unix link and compile flags (#603) 2016-06-17 22:24:43 +03:00
Nirbheek Chauhan 9e5a2c5e26 Use add_target() for adding targets returned from module functions
Without this, the target isn't added to self.coredata.target_guids and
the VS backends fail to parse the list of targets
2016-06-17 16:46:57 +05:30
Ippytraxx 8ea17322e4 Add custom_install_dir to ld path in pkgconfig module 2016-06-17 10:08:59 +02:00
Jussi Pakkanen 68dbbeb78f Octopus merged cross fixes and genetor custom because why not. 2016-06-16 21:03:57 +03:00
Noam Meltzer 3a2334be1b be more resilient for identifying gcc compilers 2016-06-16 20:52:03 +03:00
Noam Meltzer 038e575d78 determine_linker(): choose static cross linker for cross compiling
somewhere after 0.29.0 a bug was introduced where the LINK_ARGS of the
native static linker were used instead of the cross static linker
2016-06-16 20:52:03 +03:00
Jussi Pakkanen 24f2a6bf02 Merge pull request #586 from centricular/c_args-compiler_checks
Use cross-info c_args, c_link_args, etc for compiler checks
2016-06-16 20:46:31 +03:00
Nirbheek Chauhan b2fb4f9d66 scripts: Use destdir_join fix for all DESTDIR prefixing (#598) 2016-06-16 20:43:23 +03:00
Sam Thursfield a661708b54 Use target name to decide generated Vala .h & .vapi filenames
Previously Meson would use the name of the first .vala source file. This
doesn't work for some projects. Tracker is one example: it has
several libraries that mix Vala and C code. In such cases, none of the
.vala files tend to bear the name of the library we actually want to
generate.
2016-06-15 15:15:58 +01:00
Nirbheek Chauhan abf81aab77 Use cross-info c_args, c_link_args, etc for all compiler checks
This allows the user to specify custom arguments to the compiler to be used
while performing cross-compiler checks. For example, passing a GCC specs file as
c_link_args so that a "prefix" filled with libraries that are to be compiled
against can be found with cc.find_library, or an `-mcpu` c_arg that is required
for compilation.

Also ensure that unix_link_flags_to_native() and unix_compile_flags_to_native()
always return a copy of the original arguments and not a reference to the
original arguments. We never want to modify the original arguments.
2016-06-15 13:13:06 +05:30
Nirbheek Chauhan 777c1e9c19 compilers: Fix usage of cross tools args in sanity checks
The cross-extra-flags were being overwritten and ignored. Also, we don't
link while doing a cross-compiled sanity check even with ObjC++
2016-06-15 11:03:28 +05:30
Jussi Pakkanen f7eef79c0d Merge pull request #591 from textshell/ninja-quote
ninjabackend: Add missing ninja_quote for cross compilation rule.
2016-06-14 22:40:12 +03:00
Jussi Pakkanen 475175f4b5 Can use generator outputs in custom targets. Closes #587. 2016-06-13 21:17:13 +03:00
Martin Hostettler 4979b4c84f compiler: Use cross tools args in sanity check. 2016-06-13 00:41:19 +02:00
Martin Hostettler 7bd424fea6 ninjabackend: Add missing ninja_quote for cross compilation rule. 2016-06-13 00:12:15 +02:00
Jussi Pakkanen 5384a203f3 Merge pull request #585 from mesonbuild/hasarg
Added functionality to check for supported compiler arguments.
2016-06-11 23:14:30 +03:00
Jussi Pakkanen d4adf0983b Add special casing for VS which ignores unknown arguments. 2016-06-11 13:27:04 +03:00
Jussi Pakkanen 1d70940021 Merge pull request #582 from trhd/master
Valgrind fixes
2016-06-09 23:18:10 +03:00
Jussi Pakkanen f9910d2c11 Ensure cargs and libs variables always exist. Closes #581. 2016-06-09 21:48:27 +03:00
Jussi Pakkanen beef7cb291 Added functionality to pick the first supported argument from a list. Closes #583. 2016-06-09 21:36:58 +03:00
Jussi Pakkanen d8d989d9b8 Add a has_arg method to compiler to check whether it supports a given argument. 2016-06-09 21:19:58 +03:00
Hemmo Nieminen 1f76b76a84 Add support for running specific test suites with valgrind. 2016-06-06 10:28:00 +03:00
Hemmo Nieminen fac6f869e0 Change test suite separator character from '-' to ':'.
This allows defining test suites for test-valgrind target without the risk
of e.g. being unable to differentiate the targets test-valgrind (testing
with valgrind) from test-valgrind (testing the valgrind subproject).
2016-06-06 10:28:00 +03:00
Hemmo Nieminen 30bbcded23 meson_test: Fix a bug in valgrind argument handling.
Do not modify the wrap command argument from the calling function.
Appending the valgrind arguments to the wrap list argument will cause all
the valgrind arguments to cumulate from all the tests to the wrapper
command itself.
2016-06-06 10:28:00 +03:00
Jussi Pakkanen 50609054ec Bump version number for new development. 2016-06-05 23:13:25 +03:00
Jussi Pakkanen 3d1c1b84e2 Update version number for release. 2016-06-05 20:48:49 +03:00
Jussi Pakkanen 205037047f Try to delete target files before installing. Closes #578. 2016-06-05 14:16:01 +03:00
Jussi Pakkanen bcec44b93b Merge pull request #573 from centricular/dependency-versions
Several fixes to how versioned dependencies are handled + tests
2016-06-05 13:51:03 +03:00
Jussi Pakkanen 0bc0056064 Merge pull request #577 from nioncode/vs2015
Implement vs2015 backend
2016-06-05 13:00:57 +03:00
Jussi Pakkanen 177e286b3c Can generate config headers without an input file. Closes #549. 2016-06-01 20:25:14 +03:00
Jussi Pakkanen 0482635c12 Handle case of install_subdirring a subdir. 2016-05-30 23:08:24 +03:00
Nicolas Schneider fba749fcb7 extract vs2015backend into own file 2016-05-30 22:00:20 +02:00
Nicolas Schneider d34d85b0f5 vs2015: fix object generators 2016-05-30 21:49:37 +02:00
Nicolas Schneider 3bedca0257 add vs2015 backend 2016-05-30 21:49:35 +02:00
Jussi Pakkanen 8e734a8c9f Set Gnu fortran type based on platform. 2016-05-30 22:42:11 +03:00
Nirbheek Chauhan 71f18226d1 Remove unmaintained and broken PyQt5 GUI (#574) 2016-05-30 21:58:26 +03:00
Nirbheek Chauhan 9f4d963bd9 compilers: Add the buildtype args for checks that perform linking (#543)
This is required for checking for compiler checks that involve linking
to a static library with MSVC. Without this, MSVC errors out since no
CRT is specified.
2016-05-30 21:57:58 +03:00
Jussi Pakkanen beb6827413 Installing subdirs now merges with existing files in the target dir. 2016-05-30 21:48:03 +03:00
Jussi Pakkanen 144565fabf Added method to get current project name. 2016-05-30 20:29:35 +03:00
Jussi Pakkanen 16e032c289 Fix installing manpages from subdirs. 2016-05-30 20:26:31 +03:00
Jussi Pakkanen a6712b7f20 Can haz next revision of C++ standard. 2016-05-30 20:13:56 +03:00
Jussi Pakkanen 92dfc4eb0b Pch disabling works now. 2016-05-30 20:11:36 +03:00
Nirbheek Chauhan 8c34ea645d interpreter: Compare the version of a cached dependency() before using it
Without this, checks with incompatible versions but the same library would
return true. Example:

dependency('zlib', version : '>=1.2')
dependency('zlib', version : '<1.0') # this will return the same dep again!

Example: https://github.com/mesonbuild/meson/issues/568
2016-05-30 03:40:30 +05:30
Nirbheek Chauhan 0096c51035 interpretor: Correctly check the version of a fallback dependency
Previously the check was always done with the project version--which is wrong.
It should always check against the version of the dependency requested.
2016-05-30 03:40:18 +05:30
Nirbheek Chauhan acdd4bd523 interpreter: Set declare_dependency version from the project version if missing
This simply sets the default version to be the same as the project version.
Useful for dependency version checks when using fallback subproject internal
dependencies.
2016-05-30 03:40:08 +05:30
Nirbheek Chauhan d3e1fe6e1a mesonlib: Fix typo in version_compare error 2016-05-30 03:35:02 +05:30
Nirbheek Chauhan c33e7a68a1 Also reuse subproject-based fallback dependencies
This allows a project to use the same fallbacks dependency from the same
subproject multiple times in the same way that external dependencies can be.

Also change the format of the dependency identifier to ensure that fallback
checks with different dirname/varname aren't mistakenly reused. We now use
a tuple for this because the format is simpler to construct and it gives us the
same immutability guarantees as a string which is needed for using it as
a dictionary key.
2016-05-30 03:35:02 +05:30
Nirbheek Chauhan f2256ba098 interpreter: Check if subproject version is defined before comparing
Without this Meson gives a cryptic error emitted from inside
mesonlib.version_compare()
2016-05-30 03:35:02 +05:30
Jussi Pakkanen 76d88259bd Make sure outputs do not contain stray path segments. 2016-05-30 00:24:17 +03:00