'main/egldisplay.h',
'main/egldriver.c',
'main/egldriver.h',
- 'main/eglfallbacks.c',
'main/eglglobals.c',
'main/eglglobals.h',
'main/eglimage.c',
'drivers/dri2/egl_dri2.h',
'drivers/dri2/egl_dri2_fallbacks.h',
)
+ deps_for_egl += idep_xmlconfig
+ link_for_egl += libloader
+ incs_for_egl += inc_loader
+ files_egl += files('drivers/dri2/platform_device.c')
if with_platform_x11
files_egl += files('drivers/dri2/platform_x11.c')
- incs_for_egl += inc_loader
if with_dri3
files_egl += files('drivers/dri2/platform_x11_dri3.c')
link_for_egl += libloader_dri3_helper
endif
if with_platform_drm
files_egl += files('drivers/dri2/platform_drm.c')
- link_for_egl += [libloader, libgbm, libxmlconfig]
- incs_for_egl += [inc_loader, inc_gbm, include_directories('../gbm/main')]
+ link_for_egl += libgbm
+ incs_for_egl += [inc_gbm, include_directories('../gbm/main')]
deps_for_egl += dep_libdrm
endif
if with_platform_surfaceless
files_egl += files('drivers/dri2/platform_surfaceless.c')
- incs_for_egl += [inc_loader]
endif
if with_platform_wayland
deps_for_egl += [dep_wayland_client, dep_wayland_server, dep_wayland_egl_headers]
if with_platform_android
deps_for_egl += dep_android
files_egl += files('drivers/dri2/platform_android.c')
- incs_for_egl += [inc_loader]
endif
elif with_platform_haiku
incs_for_egl += inc_haikugl
endif
if not with_glvnd
- egl_lib_name = 'EGL'
+ egl_lib_name = 'EGL' + get_option('egl-lib-suffix')
egl_lib_version = '1.0.0'
else
egl_lib_name = 'EGL_mesa'
'-D_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_@0@'.format(egl_native_platform.to_upper()),
],
include_directories : incs_for_egl,
- link_with : [link_for_egl, libloader, libxmlconfig, libglapi, libmesa_util],
+ link_with : [link_for_egl, libglapi],
link_args : [ld_args_bsymbolic, ld_args_gc_sections],
- dependencies : [deps_for_egl, dep_dl, dep_libdrm, dep_clock, dep_thread],
+ dependencies : [deps_for_egl, dep_dl, dep_libdrm, dep_clock, dep_thread, idep_mesautil],
install : true,
version : egl_lib_version,
)
# If using glvnd the pkg-config header should not point to EGL_mesa, it should
# point to EGL. glvnd is only available on unix like platforms so adding -l
# should be safe here
-# TODO: in the glvnd case glvnd itself should really be providing this.
-if with_glvnd
+if with_glvnd and glvnd_missing_pc_files
_egl = '-L${libdir} -lEGL'
else
_egl = libegl
extra_cflags : gl_pkgconfig_c_flags,
)
-if with_tests
+if with_tests and prog_nm.found()
if with_glvnd
- # TODO: add glvnd symbol check
+ egl_symbols = files('egl-glvnd-symbols.txt')
else
- test('egl-symbols-check',
- find_program('egl-symbols-check'),
- env : env_test,
- args : libegl,
- suite : ['egl'],
- )
+ egl_symbols = files('egl-symbols.txt')
endif
+ test('egl-symbols-check',
+ symbols_check,
+ args : [
+ '--lib', libegl,
+ '--symbols-file', egl_symbols,
+ '--nm', prog_nm.path(),
+ ],
+ suite : ['egl'],
+ )
test('egl-entrypoint-check',
- find_program('egl-entrypoint-check'),
- env : ['srcdir=' + meson.current_source_dir()],
+ prog_python,
+ args : files('egl-entrypoint-check.py', 'main/eglentrypoint.h'),
suite : ['egl'],
)
endif