summaryrefslogtreecommitdiff
path: root/test cases/linuxlike
AgeCommit message (Collapse)Author
2020-01-23cmake: Always Add C, CXX if no language is specified (fixes #6441)Daniel Mensinger
2020-01-22tests: Add a test case for finding ldDylan Baker
2020-01-21Use python3 in some tests which were still using pythonSebastien Bacher
The unversioned command is deprecated and removed from some distributions
2019-12-09cmake: add project language to cmakelists.txtMichael Hirsch, Ph.D
cmake: get language from Meson project if not specified as depedency(..., langugage: ...) deps: add threads method:cmake dependency('threads', method: 'cmake') is useful for cmake unit tests or those who just want to find threads using cmake. cmake: project(... Fortran) generally also requires C language
2019-11-26Fix crash when checking multi version on subproject depXavier Claessens
Also harminize a bit the logged message.
2019-11-18Use strict function prototypesMichael Hirsch, Ph.D
2019-11-17use '-Werror=unused-parameter' for gcc/clang on project tests and ↵Michael Hirsch, Ph.D
-fimplicit-none on fortran Fortran: check for undeclared variables by forcing implicit none everywhere C/C++: check for unused parameters and return types removed unused variables from test cases ci: do missing return and unused arg check with Github Actions
2019-09-26cmake: Support ALIAS librariesDaniel Mensinger
2019-09-13Fix "test cases/linuxlike/14 static dynamic linkage" on SolarisAlan Coopersmith
Solaris doesn't ship static libraries, so the test can't rely on libz.a existing on Solaris. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2019-07-23cmake: added test case for environment variablesDaniel Mensinger
2019-07-17cmake: Fix empty -D due to empty strings (closes #5522)Daniel Mensinger
2019-07-11cmake: Fix dependencies with try_compile (closes #5605)Daniel Mensinger
2019-04-21Make it work on Cygwin.Jussi Pakkanen
2019-03-11Add static as keyword to find_libraryNiklas Claesson
2019-02-01CMake: Added support for CMAKE_MODULE_PATH and extra CMake args (closes #4779)Daniel Mensinger
2018-12-22Can specify a string to print when dep not found. Closes #2407.Jussi Pakkanen
2018-12-09Skip CMake dependency check if CMake is not installed.Jussi Pakkanen
2018-11-22CMake find_package dependency backend (#4444)Daniel Mensinger
2018-02-23Remove invalid kwarg from test cases/linuxlike/9 compiler checks with ↵Ran Benita
dependencies cc.has_function() does not accept a `name` keyword argument.
2018-02-08Add get_pkgconfig_variable(default:)Jon Turney
Also use that to squelch the warning for internal uses which handle the variable missing case (just gnome at the moment) A follow up to PR #2914
2017-12-22subproject handling: add two testsNiklas Claesson
2017-12-03Merge pull request #2663 from inigomartinez/pkg-config-define-variableJussi Pakkanen
dependencies: Allow pkg-config to define variables
2017-12-01dependencies: Use prefix variable with define_variableIñigo Martínez
The test used by the new define_variable parameter was using the includedir directory. However, in order to get a successful test, the includedir variables needs to be relative to the prefix variable, otherwise the replacemente will not have any effect. This changes uses the prefix variable itself because we can assure that it will be present.
2017-11-26spelling: nonexistentJosh Soref
2017-11-20dependencies: Allow pkg-config to define variablesIñigo Martínez
pkg-config enables to define variables by using the define-variable option. This allows some packages to redefine relative paths, so files can be installed in the same relative paths but under prefix.
2017-08-01Add thread flags to checks if needed. Closes #2106.Jussi Pakkanen
2017-07-21Check for manual attempts to set rpath and update docs.Jussi Pakkanen
2017-06-17valgrind: Fix __init__ callNirbheek Chauhan
Adds a test so that this is catched later. Closes https://github.com/mesonbuild/meson/issues/1937
2017-06-09dependencies: Add a new class ExternalDependencyNirbheek Chauhan
This class now consolidates a lot of the logic that each external dependency was duplicating in its class definition. All external dependencies now set: * self.version * self.compile_args and self.link_args * self.is_found (if found) * self.sources * etc And the abstract ExternalDependency class defines the methods that will fetch those properties. Some classes still override that for various reasons, but those should also be migrated to properties as far as possible. Next step is to consolidate and standardize the way in which we call 'configuration binaries' such as sdl2-config, llvm-config, pkg-config, etc. Currently each class has to duplicate code involved with that even though the format is very similar. Currently only pkg-config supports multiple version requirements, and some classes don't even properly check the version requirement. That will also become easier now.
2017-05-09dependencies: Fix two more edge-cases in dependency searchingNirbheek Chauhan
Includes tests for both of them.
2017-05-09Completely overhaul caching of external dependenciesNirbheek Chauhan
The old caching was a mess of spaghetti code layered over pasta code. The new code is well-commented, is clear about what it's trying to do, and uses a blacklist of keyword arguments instead of a whitelist while generating identifiers for dep caching which makes it much more robust for future changes. The only side-effect of forgetting about a new keyword argument would be that the dependency would not be cached unless the values of that keyword arguments were the same in the cached and new dependency. There are also more tests which identify scenarios that were broken earlier.
2017-05-09dependencies: Fix caching of native/cross dependenciesNirbheek Chauhan
All our cached_dep magic was totally useless since we ended up using the same identifier for native and cross deps. Just nuke all this cached_dep code since it is very error-prone and improve the identifier generation instead. For instance, this is broken *right now* with the `type_name` kwarg. Add a bunch of tests to ensure that all this actually works... Closes https://github.com/mesonbuild/meson/issues/1736
2017-05-08Allow link_depends to take strings, Files or generated objects. Closes #1172Dylan Baker
Currently only strings can be passed to the link_depends argument of executable and *library, which solves many cases, but not every one. This patch allows generated sources and Files to be passed as well. On the implementation side, it uses a helper method to keep the more complex logic separated from the __init__ method. This also requires that Targets set their link_depends paths as Files, and the backend is responsible for converting to strings when it wants them. This adds tests for the following cases: - Using a file in a subdir - Using a configure_file as an input - Using a custom_target as an input It does not support using a generator as an input, since currently that would require calling the generator twice, once for the -Wl argument, and once for the link_depends. Also updates the docs.
2017-04-22Disabled rpath test due to bug #1635.Jussi Pakkanen
2017-04-09Merge pull request #1469 from centricular/install-secondary-outputsJussi Pakkanen
Support multiple install dirs for built/custom targets
2017-04-08Test whether runpath/rpath override LD_LIBRARY_PATHNirbheek Chauhan
For details, see: https://github.com/mesonbuild/meson/issues/1383
2017-04-06Skip some linuxlike tests which don't work on CygwinJon Turney
2017-04-04Don't generate import library for shared modulesNirbheek Chauhan
Also add a test for this on all platforms.
2017-03-10Add UNIX large file support via compiler always-argsNirbheek Chauhan
On 32-bit Linux and BSD, all libcs support this. Musl always enables it, and UClibc behaves like Glibc unless it's built without large file support (which is a terrible idea). http://wiki.musl-libc.org/wiki/FAQ#Q:_do_i_need_to_define_LARGEFILE64_SOURCE_to_get_64bit_off_t_.3F https://git.uclibc.org/uClibc/tree/include/features.h#n326 macOS now only ships 64-bit, so this is irrelevant there. 32-bit Windows and older versions of Bionic do not have transparent large file support and you must use lseek64, etc there, so this won't affect those. Newer Bionic versions behave like Glibc in theory. https://msdn.microsoft.com/en-us/library/1yee101t.aspx http://code.google.com/p/android/issues/detail?id=64613 Includes a linuxlike test for this. Closes https://github.com/mesonbuild/meson/issues/1032
2017-03-05tests: Minor fixes to the library-usage testsNirbheek Chauhan
Actually use the myFunc() symbol from the library, and actually run the built executable on macOS.
2017-03-04Add manual-linking tests to Linux and WindowsNirbheek Chauhan
In this test, we try to manually link against the generated library to create an executable and then run it to verify that it works. Also test for all possible library versioning in the versioning tests on Windows. Even though they yield the same dll naming, we should still test it.
2017-02-13Detect Boost libraries primarily with the C++ compiler's find_library.Jussi Pakkanen
2016-12-23Can specify include directories to compiler tests.Jussi Pakkanen
2016-12-23Add get_version() method to all dependenciesNirbheek Chauhan
We unconditionally check the version of all dependencies, so without this regen will fail if you use that dependency.
2016-12-04tests/linuxlike/1: Improve zlib pkg-config testNirbheek Chauhan
Just checking that the version retrieved from the pkg-config file matches is not enough. It's nearly tautological since it just checks that we aren't returning garbage in dep.version(). Instead, check in the test executable that the pkg-config version retrieved matches the ZLIB_VERSION exported by zlib. Also don't require zlib 1.2.8 since RHEL (EPEL) 7 still has 1.2.7 and we don't really need 1.2.8 anyway.
2016-12-03Allow many version conditions for pkg-config depsNirbheek Chauhan
Sometimes we want to restrict the acceptable versions to a list of versions, or a smallest-version + largest-version, or both. For instance, GStreamer's opencv plugin is only compatible with 3.1.0 >= opencv >= 2.3.0
2016-11-14More robust link check.Jussi Pakkanen
2016-10-19Can query pkg-config variables from the system. Closes #726.Jussi Pakkanen
2016-10-14Try using already setup fallback subprojects before using native dependencyThibault Saunier
In the case the main project set a subproject for a dependency another subprojects uses, that other subproject should rather use the first subproject rather that using native dependency. For example in gst-all we set all GStreamer modules as subprojects and, gst-plugins-base is set after gstreamer core, and we want gst-plugins-base to always use GStreamer core from the subproject and not the possibly avalaible native one.
2016-10-14interpreter: Add a type_name method to DependencyHolderThibault Saunier
And remove the InternalDependencyHolder class. In some cases we need to know the type of dependency we are dealing with. For example in GStreamer if the dependency is not an internal one, then we need to get some env var from pkg-config to know where to find some plugins necessary to run some tests.