summaryrefslogtreecommitdiffstats
path: root/wscript
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2017-08-15 18:41:16 +0200
committerwm4 <wm4@nowhere>2017-08-15 18:41:16 +0200
commit72a8120daac8136b8db7c720621bbe09e43cfe6c (patch)
tree48322c0afafd24b97acf1cf162cc8943fd85bb9c /wscript
parent16d22ea02a66f0f80c0e568381d8d9a4342362c5 (diff)
downloadmpv-72a8120daac8136b8db7c720621bbe09e43cfe6c.tar.bz2
mpv-72a8120daac8136b8db7c720621bbe09e43cfe6c.tar.xz
Revert "build: rpi: rely on pkgconfig for compiler flags"
This reverts commit ea40fa36eef15384b4c0218fb102f92f5cd1cdff. This caused strange runtime failure on Raspbian (when running mpv, vc_dispmanx_display_open() returned 0, while other dispmanx using programs were fine). The problem must have been something about the compiler flags, maybe linking order or set of include paths.
Diffstat (limited to 'wscript')
-rw-r--r--wscript22
1 files changed, 21 insertions, 1 deletions
diff --git a/wscript b/wscript
index feb20851a3..2fb995041f 100644
--- a/wscript
+++ b/wscript
@@ -721,9 +721,29 @@ video_output_features = [
'deps': [ 'win32-desktop' ],
'func': check_cc(header_name='d3d9.h'),
}, {
+ 'name': '--android',
+ 'desc': 'Android support',
+ 'func': check_statement('android/api-level.h', '(void)__ANDROID__'), # arbitrary android-specific header
+ }, {
+ # We need MMAL/bcm_host/dispmanx APIs. Also, most RPI distros require
+ # every project to hardcode the paths to the include directories. Also,
+ # these headers are so broken that they spam tons of warnings by merely
+ # including them (compensate with -isystem and -fgnu89-inline).
'name': '--rpi',
'desc': 'Raspberry Pi support',
- 'func': check_rpi,
+ 'func': compose_checks(
+ check_cc(cflags="-isystem/opt/vc/include/ "+
+ "-isystem/opt/vc/include/interface/vcos/pthreads " +
+ "-isystem/opt/vc/include/interface/vmcs_host/linux " +
+ "-fgnu89-inline",
+ linkflags="-L/opt/vc/lib",
+ header_name="bcm_host.h",
+ lib=['mmal_core', 'mmal_util', 'mmal_vc_client', 'bcm_host']),
+ # We still need all OpenGL symbols, because the vo_opengl code is
+ # generic and supports anything from GLES2/OpenGL 2.1 to OpenGL 4 core.
+ check_cc(lib="EGL"),
+ check_cc(lib="GLESv2"),
+ ),
} , {
'name': '--ios-gl',
'desc': 'iOS OpenGL ES hardware decoding interop support',