summaryrefslogtreecommitdiffstats
path: root/waftools/checks/generic.py
Commit message (Collapse)AuthorAgeFilesLines
* waf: remove waf as a build systemLaserEyess2023-07-231-221/+0
| | | | | | Remove waf entirely in favor of meson as the only supported build system. Waf was officially deprecated in 0.36.0, and has not been preferred over meson since 0.35.0.
* build: add check_preprocessorNiklas Haas2021-11-031-1/+18
| | | | | This can be used to do things like query the values of preprocessor defines like version macros, among other potential uses.
* build: fallback to default pc file locations on rpiJan Palus2020-05-141-1/+6
|
* *.py: cosmetic changesjnozsc2020-02-271-1/+1
|
* build: add check for macOS SDK versionder richter2019-07-211-1/+12
| | | | | this provides an easy way to check for a specific macOS SDK version and with that the availability of features.
* wayland_common: rewrite from scratchRostislav Pehlivanov2017-10-031-2/+6
| | | | | | | | | | | | The wayland code was written more than 4 years ago when wayland wasn't even at version 1.0. This commit rewrites everything in a more modern way, switches to using the new xdg v6 shell interface which solves a lot of bugs and makes mpv tiling-friedly, adds support for drag and drop, adds support for touchscreens, adds support for KDE's server decorations protocol, and finally adds support for the new idle-inhibitor protocol. It does not yet use the frame callback as a main rendering loop driver, this will happen with a later commit.
* waftools/checks/generic: hacks for linking against static/shared libskwkam2017-01-281-5/+18
| | | | | | | | | | | | When mpv is being linked against static libraries which have shared libraries as dependencies, linker will throw error because pkg-config with --static flag will return shared libraries which will be placed under the -Wl,-Bstatic section, while pkg-config without --static flag will omit the private libraries required to link the static library. With this function users can modify the wscript to insert the dependencies when necessary. For example, linking FFmpeg with shared OpenSSL and zlib: 'func': check_pkg_config_mixed(['crypto','ssl','z'], 'libavcodec')
* build: Do not link to libGL for egl-drmQuentin Glidic2016-05-201-2/+8
| | | | Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
* build: remove useless classStefano Pigozzi2015-07-261-12/+8
|
* build: make vdpau and dxva2 checks nicerwm42015-03-061-2/+2
| | | | | | Using check_statement() with an empty statement just to check for the header is quite a hack. Fix check_headers() (so it takes a "use" parameter), and use it for the checks instead.
* build: print pkg-config query on failureStefano Pigozzi2015-02-211-0/+2
|
* build: fix Lua detectionStefano Pigozzi2014-10-251-2/+4
| | | | | | | | | | | | | We need to manually define the flag since we are using a separate identifier for each of the Lua checks. This was done before 9b45b48 by the composed check with a define_key (see waftools/checks/generic.py). The pkg-config check was the only one to not redefine a define key because Waf already does that automatically when we call the generated function with the same identifier as the generator function. Now if they are called with two different arguments we will get two different definitions. Fixes #1218
* build: add a check_program checkStefano Pigozzi2014-09-031-1/+6
| | | | | | | | | | | | | | | | | | | This wraps waf's find_program in our own check boilerplate code so that it can be used in the declarative dependencies section of the wscript. Can be used like this: }, { 'name': 'sed', 'desc': 'sed program', 'func': check_program('sed', 'SED'), }, { First argument is the program name, and the second is the waf variable name where the program path will be stored. In this example we will be able to refer to sed with ${{SED}} when creating waf Tasks in wscript_build. /cc @giselher: I think you need this for wayland-scanner.
* build: support multiple headers in check_statementStefano Pigozzi2013-12-261-4/+7
| | | | This feature will be used in the next commit.
* build: fix regression in cross-compilation [2]Stefano Pigozzi2013-12-061-1/+1
| | | | Fixup commit for 5cb8439015f5. getattr only works on dot notation.
* build: fix regression in cross-compilationStefano Pigozzi2013-12-051-1/+1
| | | | Regression was introduced in bf90317ad in an attempt to fix the Lua check.
* build: remove execute kwarg to check_cc when cross-compilingStefano Pigozzi2013-12-041-2/+9
| | | | | | This prevents waf from running test programs after compilation. A better approach would be to only remove this option if the check actually errors, but we are using this only for Lua anyway.
* build: fix construction of args to pkg-configNatanael Copa2013-11-251-2/+8
| | | | | | This makes it work with pkgconf (https://github.com/pkgconf/pkgconf) Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
* build: make waf append pkgconfig flags as-is [2]Stefano Pigozzi2013-11-241-1/+0
| | | | fixup commit... removes a redundant `return`
* build: make waf append pkgconfig flags as-isStefano Pigozzi2013-11-241-3/+14
| | | | | | | waf apparently only appends a pkgconfig flag if it doesn't already exist in the lib storage. Since our configure often checks for multiple libraries in one call we want to keep the flags as is. This is especially important to always keep stuff like -lm in the right place.
* switch the build system to wafStefano Pigozzi2013-11-211-0/+134
This commit adds a new build system based on waf. configure and Makefile are deprecated effective immediately and someday in the future they will be removed (they are still available by running ./old-configure). You can find how the choice for waf came to be in `DOCS/waf-buildsystem.rst`. TL;DR: we couldn't get the same level of abstraction and customization with other build systems we tried (CMake and autotools). For guidance on how to build the software now, take a look at README.md and the cross compilation guide. CREDITS: This is a squash of ~250 commits. Some of them are not by me, so here is the deserved attribution: - @wm4 contributed some Windows fixes, renamed configure to old-configure and contributed to the bootstrap script. Also, GNU/Linux testing. - @lachs0r contributed some Windows fixes and the bootstrap script. - @Nikoli contributed a lot of testing and discovered many bugs. - @CrimsonVoid contributed changes to the bootstrap script.