1*61046927SAndroid Build Coastguard Worker# Copyright © 2017 Intel Corporation 2*61046927SAndroid Build Coastguard Worker# SPDX-License-Identifier: MIT 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard Workeres2_glapi_mapi_tmp_h = custom_target( 5*61046927SAndroid Build Coastguard Worker 'es2_glapi_mapi_tmp.h', 6*61046927SAndroid Build Coastguard Worker input : [glapi_gen_mapi_py, glapi_gen_gl_xml], 7*61046927SAndroid Build Coastguard Worker output : 'glapi_mapi_tmp.h', 8*61046927SAndroid Build Coastguard Worker command : [prog_python, '@INPUT0@', 'glesv2', '@INPUT1@'], 9*61046927SAndroid Build Coastguard Worker depend_files : glapi_gen_mapi_deps, 10*61046927SAndroid Build Coastguard Worker capture : true, 11*61046927SAndroid Build Coastguard Worker) 12*61046927SAndroid Build Coastguard Worker 13*61046927SAndroid Build Coastguard Worker_es2_c_args = [] 14*61046927SAndroid Build Coastguard Workerif with_platform_windows 15*61046927SAndroid Build Coastguard Worker _es2_c_args += ['-D_GDI32_'] 16*61046927SAndroid Build Coastguard Workerendif 17*61046927SAndroid Build Coastguard Worker 18*61046927SAndroid Build Coastguard Workergles2_def = custom_target( 19*61046927SAndroid Build Coastguard Worker 'gles2.def', 20*61046927SAndroid Build Coastguard Worker input: 'gles2.def.in', 21*61046927SAndroid Build Coastguard Worker output : 'gles2.def', 22*61046927SAndroid Build Coastguard Worker command : gen_vs_module_defs_normal_command, 23*61046927SAndroid Build Coastguard Worker) 24*61046927SAndroid Build Coastguard Worker 25*61046927SAndroid Build Coastguard Workerlibgles2 = shared_library( 26*61046927SAndroid Build Coastguard Worker 'GLESv2' + get_option('gles-lib-suffix'), 27*61046927SAndroid Build Coastguard Worker ['../entry.c', es2_glapi_mapi_tmp_h], 28*61046927SAndroid Build Coastguard Worker vs_module_defs : gles2_def, 29*61046927SAndroid Build Coastguard Worker c_args : [ 30*61046927SAndroid Build Coastguard Worker c_msvc_compat_args, 31*61046927SAndroid Build Coastguard Worker _es2_c_args, 32*61046927SAndroid Build Coastguard Worker '-DMAPI_MODE_BRIDGE', 33*61046927SAndroid Build Coastguard Worker '-DMAPI_ABI_HEADER="@0@"'.format(es2_glapi_mapi_tmp_h.full_path()), 34*61046927SAndroid Build Coastguard Worker gcc_lto_quirk, 35*61046927SAndroid Build Coastguard Worker ], 36*61046927SAndroid Build Coastguard Worker gnu_symbol_visibility : 'hidden', 37*61046927SAndroid Build Coastguard Worker link_args : [ld_args_gc_sections], 38*61046927SAndroid Build Coastguard Worker include_directories : [inc_src, inc_include, inc_mapi], 39*61046927SAndroid Build Coastguard Worker link_with : libglapi, 40*61046927SAndroid Build Coastguard Worker dependencies : [dep_thread, dep_libdrm, dep_m, dep_dl, idep_mesautilc11], 41*61046927SAndroid Build Coastguard Worker soversion : host_machine.system() == 'windows' ? '' : '2', 42*61046927SAndroid Build Coastguard Worker version : '2.0.0', 43*61046927SAndroid Build Coastguard Worker darwin_versions : '3.0.0', 44*61046927SAndroid Build Coastguard Worker name_prefix : host_machine.system() == 'windows' ? 'lib' : [], # always use lib, but avoid warnings on !windows 45*61046927SAndroid Build Coastguard Worker install : true, 46*61046927SAndroid Build Coastguard Worker) 47*61046927SAndroid Build Coastguard Worker 48*61046927SAndroid Build Coastguard Workerpkg.generate( 49*61046927SAndroid Build Coastguard Worker name : 'glesv2', 50*61046927SAndroid Build Coastguard Worker filebase : 'glesv2', 51*61046927SAndroid Build Coastguard Worker description : 'Mesa OpenGL ES 2.0 library', 52*61046927SAndroid Build Coastguard Worker version : meson.project_version(), 53*61046927SAndroid Build Coastguard Worker libraries : libgles2, 54*61046927SAndroid Build Coastguard Worker libraries_private : gl_priv_libs, 55*61046927SAndroid Build Coastguard Worker) 56*61046927SAndroid Build Coastguard Worker 57*61046927SAndroid Build Coastguard Workerif with_symbols_check 58*61046927SAndroid Build Coastguard Worker test( 59*61046927SAndroid Build Coastguard Worker 'es2-ABI-check', 60*61046927SAndroid Build Coastguard Worker symbols_check, 61*61046927SAndroid Build Coastguard Worker args : [ 62*61046927SAndroid Build Coastguard Worker '--lib', libgles2, 63*61046927SAndroid Build Coastguard Worker '--symbols-file', files('gles2-symbols.txt'), 64*61046927SAndroid Build Coastguard Worker symbols_check_args, 65*61046927SAndroid Build Coastguard Worker ], 66*61046927SAndroid Build Coastguard Worker suite : ['mapi'], 67*61046927SAndroid Build Coastguard Worker ) 68*61046927SAndroid Build Coastguard Workerendif 69