summaryrefslogtreecommitdiff
path: root/mesonbuild/build.py
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #696 from mesonbuild/depfileJussi Pakkanen2016-08-271-1/+24
|\ | | | | Add support for dependency files in custom targets.
| * Add depfile support to generators.Jussi Pakkanen2016-08-211-1/+15
| |
| * Add support for dependency files in custom targets.Jussi Pakkanen2016-08-201-0/+9
| |
* | Flatten isinstance calls. (#715)Elliott Sales de Andrade2016-08-271-12/+9
| | | | | | | | That is, isinstance(x, y) or isinstance(x, z) can be flattened with a tuple to isinstance(x, (y, z)).
* | Check for embedded @OUTPUT@s in commands.Jussi Pakkanen2016-08-271-3/+4
| |
* | Don't allow @OUTPUT@ when capturing output.Elliott Sales de Andrade2016-08-261-0/+3
| |
* | Allow capturing command output of a custom target.Elliott Sales de Andrade2016-08-261-0/+5
| | | | | | | | | | | | For commands that always output to stdout and don't have a "-o" or "--output" or some other similar option, this 'capture' setting allows the build to capture the result and place it in the output file.
* | Merge pull request #680 from centricular/osx-dylib-soversionJussi Pakkanen2016-08-211-6/+4
|\ \ | | | | | | Add a test to find libfoo.X.dylib via -lfoo
| * | Don't add the soversion to the dylib filename on OS XNirbheek Chauhan2016-08-161-6/+4
| | | | | | | | | | | | | | | Doing so messes up library search with -lfoo. See: https://github.com/mesonbuild/meson/pull/680
* | | Merge pull request #685 from ximion/masterJussi Pakkanen2016-08-211-1/+4
|\ \ \ | |_|/ |/| | Implement D support
| * | trivial: Use stringlistifyMatthias Klumpp2016-08-211-4/+2
| | |
| * | Implement D supportMatthias Klumpp2016-08-191-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for the D programming language[1] to Meson. The following compilers are supported: * LDC * GDC * DMD [1]: http://dlang.org/
* | | shared_library: Add vs_module_defs to link_dependsNirbheek Chauhan2016-08-181-0/+2
|/ / | | | | | | | | | | | | With this, if the module definitions file is edited, the shared library and all reverse-dependencies will be re-linked. Fixes #643
* | BuildTarget: Print a better message when passing GeneratedList to 'objects' ↵Nirbheek Chauhan2016-08-151-2/+10
|/ | | | (#681)
* Ninja now supports backslash in command args, so we can tooNirbheek Chauhan2016-07-291-24/+0
| | | | | | | | | | At the same time, this also adds a bunch of tests that document and keep track of how we expect quoting to pass through via Ninja to the compiler. We need at least Ninja 1.6.0 for this. This fixes https://github.com/mesonbuild/meson/issues/489
* Merge pull request #417 from nirbheek/dll-pathsJussi Pakkanen2016-07-131-73/+237
|\ | | | | Fix filenames and paths used in DLL shared library generation
| * build: Fix implementation of sources_are_suffixNirbheek Chauhan2016-07-051-2/+5
| | | | | | | | | | | | | | | | The first file might be a header file, in which case this test will fail, so check all the files till a match is found instead. Also remove duplicate and incorrect can_compile check. It just checks the suffix and we already check that above.
| * Add repr() implementations for build targets and FileNirbheek Chauhan2016-07-011-0/+25
| | | | | | | | This aids debugging
| * CustomTarget: Use mesonlib.File objects as-is in the command to be runNirbheek Chauhan2016-07-011-3/+1
| | | | | | | | | | | | This allows us to output either the relative or absolute path as requested. Fixes usage of configure_file inside CustomTarget commands with the VS backends.
| * Overhaul versioning and naming of librariesNirbheek Chauhan2016-07-011-70/+208
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit contains several changes to the naming and versioning of shared and static libraries. The details are documented at: https://github.com/mesonbuild/meson/pull/417 Here's a brief summary: * The results of binary and compiler detection via environment functions are now cached so that they can be called repeatedly without performance penalty. This is necessary because every build.SharedLibrary object has to know whether the compiler is MSVC or not (output filenames depend on that), and so the compiler detection has to be called for each object instantiation. * Linux shared libraries don't always have a library version. Sometimes only soversions are specified (and vice-versa), so support both. * Don't use versioned filenames when generating DLLs, DLLs are never versioned using the suffix in the way that .so libraries are. Hence, they don't use "aliases". Only Linux shared libraries use those. * OS X dylibs do not use filename aliases at all. They only use the soversion in the dylib name (libfoo.X.dylib), and that's it. If there's no soversion specified, the dylib is called libfoo.dylib. Further versioning in dylibs is supposed to be done with the -current_version argument to clang, but this is TBD. https://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/DynamicLibraries/100-Articles/DynamicLibraryDesignGuidelines.html#//apple_ref/doc/uid/TP40002013-SW23 * Install DLLs into bindir and import libraries into libdir * Static libraries are now always called libfoo.a, even with MSVC * .lib import libraries are always generated when building with MSVC * .dll.a import libraries are always generated when building with MinGW/GCC or MinGW/clang * TODO: Use dlltool if available to generate .dll.a when .lib is generated and vice-versa. * Library and executable suffix/prefixes are now always correctly overriden by the values of the 'name_prefix' and 'name_suffix' keyword arguments.
* | Changed run_target to take command as kwarg and add depends. This makes it ↵Jussi Pakkanen2016-06-241-2/+3
|/ | | | behave the same as custom_target.
* Can use generator outputs in custom targets. Closes #587.Jussi Pakkanen2016-06-131-1/+1
|
* Can query version strings of dependencies.Jussi Pakkanen2016-05-291-1/+2
|
* Can set global linker arguments. Closes #536.Jussi Pakkanen2016-05-281-0/+4
|
* Merge pull request #542 from mesonbuild/ownstdlibJussi Pakkanen2016-05-251-0/+1
|\ | | | | Build transparently with a custom standard library
| * Can specify a stdlib subproject that is used implicitly on all targets with ↵Jussi Pakkanen2016-05-211-0/+1
| | | | | | | | said language.
* | Merge pull request #479 from mesonbuild/i18nJussi Pakkanen2016-05-251-1/+0
|\ \ | | | | | | Moved gettext into i18n module.
| * | Remove all special casing for gettext and use elementary operations instead.Jussi Pakkanen2016-05-211-7/+0
| | |
| * | Moved gettext into i18n module.Jussi Pakkanen2016-03-281-0/+6
| | |
* | | CustomTarget: require install_dir only when install is true (#519)Nirbheek Chauhan2016-04-171-5/+6
| |/ |/|
* | Merge pull request #438 from trhd/testing_optionsJussi Pakkanen2016-04-061-4/+4
|\ \ | | | | | | New options for controlling test output.
| * | Move MesonException from coredata to mesonlib.Hemmo Nieminen2016-04-011-4/+4
| |/
* | Merge pull request #390 from nirbheek/msvc-module-defsJussi Pakkanen2016-04-031-1/+8
|\ \ | |/ |/| Add support for passing a module definitions file for exporting symbols while linking
| * Add shared_library argument for a Visual Studio module definitions fileNirbheek Chauhan2016-03-301-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | On MSVC, shared libraries only export symbols that have been explicitly exported either as part of the symbol prototype or via a module definitions file. On compilers other than MSVC, all symbols are exported in the shared library by default and the format for the list of symbols to export is different, so this is only used with the VisualStudio compiler. The module defs file path can either be relative to the current source directory or an absolute path using meson.source_root() + '/some/path'
* | Error out if using a not found binary in the build. Closes #469.Jussi Pakkanen2016-03-231-0/+2
|/
* vs2010: fix dependencies of CustomTargetNicolas Schneider2016-03-161-0/+10
|
* Can add postconfigure script.Nicolas Schneider2016-03-011-0/+1
|
* Can specify compile and link args for internal deps.Jussi Pakkanen2016-02-291-0/+8
|
* Refix Linux.Jussi Pakkanen2016-02-221-3/+4
|
* Can build Python extension on OSX.Jussi Pakkanen2016-02-211-5/+20
|
* Can build a Python extension module.Jussi Pakkanen2016-02-211-4/+14
|
* build.CustomTarget: Also accept mesonlib.File types as 'command' argumentsNirbheek Chauhan2016-02-171-0/+2
|
* Renamed meson package to mesonbuild so that we can have a script named meson ↵Jussi Pakkanen2016-01-161-0/+969
in the same toplevel dir.