summaryrefslogtreecommitdiff
path: root/meson.build
diff options
context:
space:
mode:
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>2018-01-30 10:31:03 +0100
committerNicolas Dufresne <nicolas.dufresne@collabora.com>2018-01-30 11:10:38 +0000
commit9d37a92a615e54e8ee12f8c65bcfe386ec9de2d0 (patch)
treeb112f731a289e0a85c76ed7ea919c8b2b018a4f1 /meson.build
parent6c57d06ee1905cae936eabbfa0b32faf104f0c39 (diff)
downloadgst-omx-9d37a92a615e54e8ee12f8c65bcfe386ec9de2d0.tar.gz
meson: use include_directories() with external OMX headers path
It seems cleaner to use the proper meson tools to include this path rather than manually tweak the build flags. This also allows us to simplify the OMX extensions detection code. We are now always checking which files are present, even when using our internal copy of OMX, rather than hardcoding the ones present in it. https://bugzilla.gnome.org/show_bug.cgi?id=792043
Diffstat (limited to 'meson.build')
-rw-r--r--meson.build56
1 files changed, 24 insertions, 32 deletions
diff --git a/meson.build b/meson.build
index 8e71c46..4545d1f 100644
--- a/meson.build
+++ b/meson.build
@@ -169,7 +169,9 @@ gst_omx_args = ['-DHAVE_CONFIG_H']
configinc = include_directories('.')
omx_header_path = get_option('with_omx_header_path')
if omx_header_path != ''
- gst_omx_args += ['-I' + omx_header_path]
+ omx_inc = include_directories (omx_header_path)
+else
+ omx_inc = include_directories (join_paths ('omx', 'openmax'))
endif
default_omx_struct_packing = 0
@@ -204,6 +206,7 @@ elif omx_target == 'zynqultrascaleplus'
have_allegro_header = cc.has_header (
'OMX_Allegro.h',
args : gst_omx_args,
+ include_directories : [omx_inc],
required : false)
if not have_allegro_header
error ('Need Allegro OMX headers to build for Zynq UltraScale+. Use with_omx_header_path option to specify the path of those headers.')
@@ -218,46 +221,32 @@ else
error ('Unsupported omx target specified. Use the -Dwith_omx_target option')
endif
-have_external_omx = cc.has_header(
- 'OMX_Core.h',
+extra_video_headers = ''
+# Check for optional OpenMAX extension headers
+
+if cc.has_header (
+ 'OMX_VideoExt.h',
args : gst_omx_args,
+ include_directories : [omx_inc],
required : false)
-extra_video_headers = ''
-# Our internal OpenMAX IL headers have OMX_VideoExt.h, OMX_IndexExt.h and OMX_ComponentExt.h
-have_video_ext = true
-have_index_ext = true
-have_component_ext = true
-
-if have_external_omx
- have_video_ext = cc.has_header (
- 'OMX_VideoExt.h',
- args : gst_omx_args,
- required : false)
- if have_video_ext
- extra_video_headers += '''
+ extra_video_headers += '''
#include <OMX_VideoExt.h>'''
- endif
-
- have_index_ext = cc.has_header (
- 'OMX_IndexExt.h',
- args : gst_omx_args,
- required : false)
-
- have_component_ext = cc.has_header (
- 'OMX_ComponentExt.h',
- args : gst_omx_args,
- required : false)
-endif
-
-if have_video_ext
cdata.set ('HAVE_VIDEO_EXT', 1)
endif
-if have_index_ext
+if cc.has_header (
+ 'OMX_IndexExt.h',
+ args : gst_omx_args,
+ include_directories : [omx_inc],
+ required : false)
cdata.set ('HAVE_INDEX_EXT', 1)
endif
-if have_component_ext
+if cc.has_header (
+ 'OMX_ComponentExt.h',
+ args : gst_omx_args,
+ include_directories : [omx_inc],
+ required : false)
cdata.set ('HAVE_COMPONENT_EXT', 1)
endif
@@ -266,6 +255,7 @@ have_omx_vp8 = cc.has_header_symbol(
'OMX_VIDEO_CodingVP8',
prefix : extra_video_headers,
args : gst_omx_args,
+ include_directories : [omx_inc],
required : false)
if have_omx_vp8
cdata.set('HAVE_VP8', 1)
@@ -276,6 +266,7 @@ have_omx_theora = cc.has_header_symbol(
'OMX_VIDEO_CodingTheora',
prefix : extra_video_headers,
args : gst_omx_args,
+ include_directories : [omx_inc],
required : false)
if have_omx_theora
cdata.set('HAVE_THEORA', 1)
@@ -286,6 +277,7 @@ have_omx_hevc = cc.has_header_symbol(
'OMX_VIDEO_CodingHEVC',
prefix : extra_video_headers,
args : gst_omx_args,
+ include_directories : [omx_inc],
required : false)
if have_omx_hevc
cdata.set('HAVE_HEVC', 1)