# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
-incs_for_egl = [inc_include, inc_drm_uapi, inc_src, inc_egl]
+incs_for_egl = [inc_include, inc_src, inc_egl]
'generate/egl.xml', 'generate/egl_other.xml'
],
output : 'g_egldispatchstubs.c',
command : [
'generate/egl.xml', 'generate/egl_other.xml'
],
output : 'g_egldispatchstubs.c',
command : [
- prog_python, '@INPUT0@', 'source', '@INPUT1@', '@INPUT2@', '@INPUT3@'
+ prog_python, '@INPUT0@', 'source', '@INPUT1@', '@INPUT2@',
'generate/egl.xml', 'generate/egl_other.xml'
],
output : 'g_egldispatchstubs.h',
command : [
'generate/egl.xml', 'generate/egl_other.xml'
],
output : 'g_egldispatchstubs.h',
command : [
- prog_python, '@INPUT0@', 'header', '@INPUT1@', '@INPUT2@', '@INPUT3@'
+ prog_python, '@INPUT0@', 'header', '@INPUT1@', '@INPUT2@',
'drivers/dri2/egl_dri2.h',
'drivers/dri2/egl_dri2_fallbacks.h',
)
'drivers/dri2/egl_dri2.h',
'drivers/dri2/egl_dri2_fallbacks.h',
)
- 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')
deps_for_egl += dep_libdrm
endif
if with_platform_surfaceless
files_egl += files('drivers/dri2/platform_surfaceless.c')
'-D_EGL_NATIVE_PLATFORM=_EGL_PLATFORM_@0@'.format(egl_native_platform.to_upper()),
],
include_directories : incs_for_egl,
'-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],
- 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],
# 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
# 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
- _egl = '-L${libdir} -lEGL'
-else
- _egl = libegl
-endif
+if not with_glvnd or not glvnd_has_headers_and_pc_files
+ if not glvnd_has_headers_and_pc_files
+ _egl = '-L${libdir} -lEGL'
+ else
+ _egl = libegl
+ endif
-pkg.generate(
- name : 'egl',
- description : 'Mesa EGL Library',
- version : meson.project_version(),
- libraries : _egl,
- libraries_private: gl_priv_libs,
- requires_private : gl_priv_reqs,
- extra_cflags : gl_pkgconfig_c_flags,
-)
+ pkg.generate(
+ name : 'egl',
+ description : 'Mesa EGL Library',
+ version : meson.project_version(),
+ libraries : _egl,
+ libraries_private: gl_priv_libs,
+ requires_private : gl_priv_reqs,
+ extra_cflags : gl_pkgconfig_c_flags,
+ )
+endif
+ test('egl-symbols-check',
+ symbols_check,
+ args : [
+ '--lib', libegl,
+ '--symbols-file', egl_symbols,
+ '--nm', prog_nm.path(),
+ ],
+ suite : ['egl'],
+ )
- find_program('egl-entrypoint-check'),
- env : [ 'srcdir=' + meson.current_source_dir() ]
+ prog_python,
+ args : files('egl-entrypoint-check.py', 'main/eglentrypoint.h'),
+ suite : ['egl'],