aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-04-14🤦🤦🤦Jussi Pakkanen2-8/+9
2018-04-14Merge pull request #2930 from inigomartinez/gdbus-targetsJussi Pakkanen3-19/+93
gnome: Split header and code targets in gdbus_codegen()
2018-04-14improve suite of meson test (#3369)Alberto Sartori3-0/+33
2018-04-14compilers: Cache compiler checks where we don't want the outputNirbheek Chauhan2-8/+28
This caching is only for a single run, so it doesn't help reconfigure. However, it is useful for subproject setups where different subprojects will run the same compiler checks. The cache is also per compiler instance and is not used for functions that want to read or run the outputted object file or binary. For gst-build, this halves the number of compiler checks that are run and reduces configuration time by 20%.
2018-04-14Merge pull request #3396 from mesonbuild/nirbheek/cache-pkgconfigJussi Pakkanen1-3/+15
PkgConfigDependency: Cache the output of pkg-config
2018-04-14pkgconfig module: Fix regression that Requires.private is generated as 'Q, ↵textshell2-1/+15
t, 5, C, o, r, e' instead of Qt5Core. (#3406)
2018-04-14Fix encoding bug on WindowsRobin1-1/+3
2018-04-13Indicate subproject depth in console outputJon Turney2-15/+34
2018-04-13Deduplicate dependencies resolved to absolute pathsDaniel Schulte2-3/+16
If paths are absolute the order of search directories is not relevant as the path is already resolved.
2018-04-13don't create unneeded internal dependency objectsBruce Richardson1-7/+8
when flattening the chained dependencies of an object, we don't need to create any new internal dependencies if all the fields to be added to it are empty. For projects with a lot of libraries and dependency objects this can lead to noticeable performance improvements. fixup
2018-04-13Prune unneeded transitive dependenciesBruce Richardson1-2/+6
When getting dependencies, we don't need to get the same dependencies and dependency chains multiple times. If library a depends on x, y and z, and library b depends on a, then we should not have to iterate through x, y and z multiple times. Pruning at the stage of scanning the dependencies leads to significant time savings when running meson
2018-04-13PkgConfigDependency: dicts aren't hashable, so use frozensetNirbheek Chauhan1-5/+8
2018-04-13PkgConfigDependency: Cache the output of pkg-configNirbheek Chauhan1-1/+10
This halves the configure time in gst-build, the aggregate of all GStreamer repositories. We can't do this to Popen_safe because we can't be sure that other programs have no side-effects and will always return the same output for the same arguments and environment.
2018-04-12docs: Fix syntax highlighting in release notesTingPing1-10/+16
2018-04-12gdbus_codegen: Fix new generated objectsIñigo Martínez1-1/+4
The `ct` variable used in the ModuleReturnValue is created only for versions earlier than 2.55.2. However, in newer versions that variable does not exist.
2018-04-12gdbus_codegen: Fix custom target nameIñigo Martínez1-3/+4
The namebase which is used as the target name, also holds part of the file names. This used in combination generates files with wrong names.
2018-04-12coredata: UserOption subclasses only need to implement validate_value()Xavier Claessens1-49/+24
Implementing set_value() in the base class simplifies the code and ensure validation is always consistent. This fix UserIntegerOption.validate_value() not checking min/max value, and UserArrayOption.validate_value() raising exception because it does not pass a value for user_input argument of validate() method.
2018-04-12Explain the choice of implementation language. [skip ci]Jussi Pakkanen1-0/+37
2018-04-11Fix unit test for Disabler()Xavier Claessens1-2/+2
2018-04-11introspect: default builddir to . to prevent a crashAndrei Alexeyev1-1/+1
Fixes #3250
2018-04-11vala: Don't pass -o and -C at the same timeRico Tzschichholz1-2/+2
Fixes "warning: --output and -o have no effect when -C or --ccode is set" get_always_args() adds -C which is already disabling the direct compilation ability of valac for which -o is used.
2018-04-11Trivial update to meson vim syntax + typo in snippet [skip ci]Nirbheek Chauhan2-1/+2
2018-04-11gdbus_codegen: Return 2 targets when docbook is disabledNirbheek Chauhan3-13/+29
Also document this behaviour, test it, and fix the return value from the module -- we create one target and return it thrice to the build file
2018-04-11gnome: Validate docbook parameter is a stringIñigo Martínez1-2/+10
The `docbook` parameter used in `gdbus_codegen` should contain the prefix string in `PREFIX-NAME.xml`. Therefore it has to be validated as a string.
2018-04-11gnome: Split header and code targets in gdbus_codegen()Iñigo Martínez2-19/+65
The development version of `glib` (2.55.2) has acquired support for generating gdbus header and source code files separately. This allows dependencies to be more fine grained on those targets depending only on the header.
2018-04-09Never install the glib-mkenums generated C source (#3374)Emmanuele Bassi3-0/+8
* Never install the glib-mkenums generated C source When using gnome.mkenums_simple() we end up installing the generated C source file alongside the C header file, if `install_header` is set to True. This is caused by mkenums_simple() acting as a wrapper for mkenums() without template files; mkenums() won't be able to know if we're generating the header or the source, and will use the presence of `install_header` as the deciding factor as to whether the generated file should be installed. When generating the C source file, we should always unset the `install_header` option to False, just like mkenums() expects. Closes #3373 * Verify that mkenums_simple() does not install C sources When asked to installed the generated C header file.
2018-04-08add support for cmakedefine in configure_file()David Fort6-10/+78
The added format argument for configure_file allows to specify the kind of file that is treated. It defaults to 'meson', but can also have the 'cmake' or 'cmake@' value to treat config.h.in files in the cmake format with #cmakedefine statements.
2018-04-08Update depfixer to fix rpaths also on OSX.Jussi Pakkanen2-11/+52
2018-04-08Merge pull request #3326 from jeandet/generated_qrcJussi Pakkanen6-15/+108
[Qt module] Add File object support for generated or not qrc files
2018-04-08Remove arbitrary [-1024,1024] limit in cross_compute_int()Xavier Claessens5-18/+65
Copy the algorithm used by autoconf. It computes the upper and lower limits by starting at [-1,1] and multiply by 2 at each iteration. This is even faster for small numbers (the common case), for example it finds value 0 in just 2 compilations where old algorithm would check for 1024, 512, ..., 0.
2018-04-08Merge pull request #3366 from xclaesse/pkgconfig-dup-versionJussi Pakkanen2-5/+10
Remove duplicates in generated pkgconfig required versions
2018-04-07pkgconfig generator: Remove duplicates in required versionsXavier Claessens2-4/+8
2018-04-08Merge pull request #3312 from MathieuDuponchelle/alwaysfallbackJussi Pakkanen11-6/+76
new wrap-mode: forcefallback
2018-04-08VS backend: dedup AdditionalDependenciesPaul I1-1/+2
2018-04-08Move entry in build_funct_dict to correct position.Christoph Behle1-2/+2
The entry 'subdir_done' is now at its right place.
2018-04-07[fixup]: rename test after rebaseMathieu Duponchelle6-1/+1
2018-04-07[fixup]: export symbols explicitlyMathieu Duponchelle3-2/+21
2018-04-07Remove commit_zero recommendation from wrap documentation, use action commit ↵Aleksey Filippov1-3/+2
[skip ci]
2018-04-06pkgconfig generator: Fix crash when passing a SharedModuleXavier Claessens1-1/+2
2018-04-06[fixup]: Add testMathieu Duponchelle6-0/+34
2018-04-06[fixup]: add since to FAQMathieu Duponchelle1-1/+1
2018-04-06new wrap-mode: forcefallbackMathieu Duponchelle5-6/+23
This can be useful to make sure that a project builds when its fallbacks are used on systems where external dependencies satisfy the version requirements, or to easily hack on the sources of a dependency for which a fallback exists.
2018-04-04Merge pull request #2711 from xclaesse/both-libraryJussi Pakkanen12-196/+295
Add both_library() to build both shared and static library
2018-04-04gnome.gtkdoc: Fix generated files used as content filesIñigo Martínez1-1/+1
The `gtkdoc` function in the `gnome` module is able to use generated files as content files, but the path to these is wrong in the used command line.
2018-04-04[Qt module] refactor b4cd949c48ab67891e4bc6b14a8f9f247e28777dAlexis Jeandet1-3/+5
Since relative path in qrc files are always relative to qrc file itself then we just need to check that normpath(qrc file + resource) doesn't start with build dir path, this would mean that the resource is generated. Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
2018-04-04[Qt module] More qrc fixesAlexis Jeandet4-19/+28
When several qrc files are given all qrc files dependencies were mixed. Fixed non working use case: When user try to guess build dir layout and add use a relative path between a generated qrc file and a generated resource. Signed-off-by: Alexis Jeandet <alexis.jeandet@member.fsf.org>
2018-04-03Add both_libraries() to build both shared and static librariesXavier Claessens8-9/+140
Also support default_library='both' to make library() build both shared and static libraries. Closes #484
2018-04-03extract_all_objects: Also extract generated sourcesXavier Claessens2-4/+19
2018-04-03pkgconfig generator: Only skip dependencies when using shared_library()Xavier Claessens2-13/+15
It is weird and inconsistent to have different pc file depending on default_library value when using library() or build_target(). We should skip dependencies only when user explicitly want shared library only.
2018-04-03Remove duplicated list of known kwargs for build targetsXavier Claessens3-172/+123