diff options
author | Moonchild <moonchild@palemoon.org> | 2021-01-02 13:35:39 +0000 |
---|---|---|
committer | Moonchild <moonchild@palemoon.org> | 2021-01-02 13:35:39 +0000 |
commit | babeb5c556de6f9686f5cd47133d0c40c07bfc2e (patch) | |
tree | 146dd48634e5d44746acdd49dc142e413349054d /layout/media | |
parent | 0bb464bfc13e3a0239fd268de265fc332014b385 (diff) | |
download | uxp-babeb5c556de6f9686f5cd47133d0c40c07bfc2e.tar.gz |
Issue #61 - Reinstate buildability with shared gkmedias dll
This fully works for splitting gkmedias.dll back out from xul with one exception
which is Skia throwing undefined externals when linking gkmedias.
Diffstat (limited to 'layout/media')
-rw-r--r-- | layout/media/Makefile.in | 11 | ||||
-rw-r--r-- | layout/media/moz.build | 17 | ||||
-rw-r--r-- | layout/media/symbols.def.in | 661 |
3 files changed, 684 insertions, 5 deletions
diff --git a/layout/media/Makefile.in b/layout/media/Makefile.in new file mode 100644 index 0000000000..86d9b181df --- /dev/null +++ b/layout/media/Makefile.in @@ -0,0 +1,11 @@ +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +include $(topsrcdir)/config/rules.mk + +ifeq (WINNT,$(OS_TARGET)) +symbols.def: symbols.def.in $(GLOBAL_DEPS) + $(call py_action,preprocessor,$(ACDEFINES) $< -o $@) +endif diff --git a/layout/media/moz.build b/layout/media/moz.build index 8fd0eb9a8e..9ea4653198 100644 --- a/layout/media/moz.build +++ b/layout/media/moz.build @@ -6,16 +6,23 @@ with Files('**'): BUG_COMPONENT = ('Core', 'Video/Audio') -# media/webrtc/signaling/test/common.build uses the gkmedias library, -# expecting at least some of what it contains to be linked, but not libxul, -# so we need to keep an independent pseudo-library, as well as the OS_LIBS -# on Windows for them to propagate there. -Library('gkmedias') +if CONFIG['GKMEDIAS_SHARED_LIBRARY']: + GeckoSharedLibrary('gkmedias', linkage=None) + USE_LIBS += [ + 'nspr', + ] +else: + # media/webrtc/signaling/test/common.build uses the gkmedias library, + # expecting at least some of what it contains to be linked, but not libxul, + # so we need to keep an independent pseudo-library, as well as the OS_LIBS + # on Windows for them to propagate there. + Library('gkmedias') if CONFIG['MOZ_WEBRTC']: DIRS += ['webrtc'] if CONFIG['OS_TARGET'] == 'WINNT': + DEFFILE = 'symbols.def' OS_LIBS += [ 'usp10', 'ole32', diff --git a/layout/media/symbols.def.in b/layout/media/symbols.def.in new file mode 100644 index 0000000000..80ce13b653 --- /dev/null +++ b/layout/media/symbols.def.in @@ -0,0 +1,661 @@ +;+# This Source Code Form is subject to the terms of the Mozilla Public +;+# License, v. 2.0. If a copy of the MPL was not distributed with this +;+# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +LIBRARY gkmedias.dll +EXPORTS +nestegg_destroy +nestegg_duration +nestegg_free_packet +nestegg_init +nestegg_offset_seek +nestegg_packet_count +nestegg_packet_discard_padding +nestegg_packet_data +nestegg_packet_duration +nestegg_packet_encryption +nestegg_packet_has_keyframe +nestegg_packet_iv +nestegg_packet_track +nestegg_packet_tstamp +nestegg_read_packet +nestegg_read_reset +nestegg_track_audio_params +nestegg_track_codec_data +nestegg_track_codec_data_count +nestegg_track_codec_id +nestegg_track_content_enc_key_id +nestegg_track_count +nestegg_get_cue_point +nestegg_track_seek +nestegg_track_type +nestegg_track_video_params +nestegg_tstamp_scale +nestegg_has_cues +nestegg_sniff +#ifdef MOZ_WEBM_ENCODER +writeSimpleBlock +writeHeader +writeSegmentInformation +writeVideoTrack +writeAudioTrack +Ebml_Serialize +Ebml_SerializeUnsigned +Ebml_StartSubElement +Ebml_EndSubElement +#endif +vpx_codec_control_ +vpx_codec_dec_init_ver +vpx_codec_decode +vpx_codec_destroy +vpx_codec_err_to_string +vpx_codec_get_frame +vpx_codec_peek_stream_info +vpx_codec_vp8_dx +vpx_codec_vp9_dx +vpx_img_free +vpx_codec_enc_config_set +vpx_codec_enc_init_ver +vpx_codec_vp8_cx +vpx_codec_vp9_cx +vpx_img_set_rect +vpx_img_wrap +vpx_codec_get_cx_data +vpx_codec_enc_config_default +vpx_img_alloc +vpx_codec_encode +#ifdef MOZ_AV1 +aom_codec_av1_dx +aom_codec_dec_init_ver +aom_codec_decode +aom_codec_destroy +aom_codec_err_to_string +aom_codec_get_frame +aom_codec_peek_stream_info +aom_img_alloc +aom_img_free + +#ifdef MOZ_VORBIS +ogg_page_bos +ogg_page_granulepos +ogg_page_serialno +ogg_set_mem_functions +ogg_stream_check +ogg_stream_clear +ogg_stream_eos +ogg_stream_flush +ogg_stream_init +ogg_stream_packetin +ogg_stream_packetout +ogg_stream_pagein +ogg_stream_pageout +ogg_stream_reset +ogg_sync_buffer +ogg_sync_clear +ogg_sync_init +ogg_sync_pageseek +ogg_sync_reset +ogg_sync_wrote +vorbis_analysis +vorbis_analysis_blockout +vorbis_analysis_buffer +vorbis_analysis_init +vorbis_analysis_headerout +vorbis_analysis_wrote +vorbis_block_clear +vorbis_block_init +vorbis_comment_add_tag +vorbis_comment_clear +vorbis_comment_init +vorbis_dsp_clear +vorbis_encode_init_vbr +vorbis_info_clear +vorbis_info_init +vorbis_packet_blocksize +vorbis_synthesis +vorbis_synthesis_blockin +vorbis_synthesis_headerin +vorbis_synthesis_init +vorbis_synthesis_pcmout +vorbis_synthesis_read +vorbis_synthesis_restart +#endif +moz_speex_resampler_init +moz_speex_resampler_destroy +moz_speex_resampler_process_float +moz_speex_resampler_process_interleaved_float +moz_speex_resampler_process_interleaved_int +moz_speex_resampler_set_rate +moz_speex_resampler_get_rate +moz_speex_resampler_get_ratio +moz_speex_resampler_get_input_latency +moz_speex_resampler_get_output_latency +moz_speex_resampler_skip_zeros +moz_speex_resampler_set_skip_frac_num +moz_speex_resampler_reset_mem +cubeb_destroy +cubeb_init +cubeb_get_backend_id +cubeb_get_max_channel_count +cubeb_get_min_latency +cubeb_get_preferred_sample_rate +cubeb_stream_destroy +cubeb_stream_get_position +cubeb_stream_init +cubeb_stream_start +cubeb_stream_stop +cubeb_stream_get_latency +cubeb_stream_set_volume +cubeb_stream_set_panning +cubeb_stream_get_current_device +cubeb_stream_device_destroy +cubeb_stream_register_device_changed_callback +th_comment_clear +th_comment_init +th_decode_alloc +th_decode_free +th_decode_headerin +th_decode_packetin +th_decode_ycbcr_out +th_granule_frame +th_info_clear +th_info_init +th_packet_isheader +th_packet_iskeyframe +th_setup_free +opus_decoder_create +opus_decoder_destroy +opus_decoder_ctl +opus_decoder_get_nb_samples +opus_decode +opus_decode_float +opus_get_version_string +opus_multistream_decoder_create +opus_multistream_decoder_ctl +opus_multistream_decoder_destroy +opus_multistream_decode_float +opus_multistream_decode +opus_packet_get_nb_frames +opus_packet_get_samples_per_frame +opus_encoder_create +opus_encoder_destroy +opus_encoder_ctl +opus_encode +opus_encode_float +#ifndef MOZ_NATIVE_PNG +MOZ_APNG_get_first_frame_is_hidden +MOZ_APNG_get_next_frame_blend_op +MOZ_APNG_get_next_frame_delay_den +MOZ_APNG_get_next_frame_delay_num +MOZ_APNG_get_next_frame_dispose_op +MOZ_APNG_set_prog_frame_fn +MOZ_APNG_get_next_frame_height +MOZ_APNG_get_next_frame_width +MOZ_APNG_get_next_frame_x_offset +MOZ_APNG_get_next_frame_y_offset +MOZ_APNG_set_acTL +MOZ_APNG_set_first_frame_is_hidden +MOZ_APNG_set_num_plays +MOZ_APNG_write_frame_head +MOZ_APNG_write_frame_tail +MOZ_PNG_cr_info_str +MOZ_PNG_cr_read_str +MOZ_PNG_cr_write_str +MOZ_PNG_dest_read_str +MOZ_PNG_dest_write_str +MOZ_PNG_free_data +MOZ_PNG_get_channels +MOZ_PNG_get_cHRM +MOZ_PNG_get_gAMA +MOZ_PNG_get_IHDR +MOZ_PNG_get_iCCP +MOZ_PNG_get_io_ptr +MOZ_PNG_get_progressive_ptr +MOZ_PNG_get_sRGB +MOZ_PNG_get_tRNS +MOZ_PNG_get_valid +MOZ_PNG_longjmp +MOZ_PNG_process_data +MOZ_PNG_process_data_pause +MOZ_PNG_progressive_combine_row +MOZ_PNG_read_update_info +MOZ_PNG_set_cHRM +MOZ_PNG_set_crc_action +MOZ_PNG_set_gAMA +MOZ_PNG_set_gamma +MOZ_PNG_set_gray_to_rgb +MOZ_PNG_set_expand +MOZ_PNG_set_IHDR +MOZ_PNG_set_interlace_handling +MOZ_PNG_set_longjmp_fn +MOZ_PNG_set_progressive_read_fn +MOZ_PNG_set_scale_16 +MOZ_PNG_set_write_fn +MOZ_PNG_write_end +MOZ_PNG_write_info +MOZ_PNG_write_row +#endif +png_set_option +png_error +#ifndef MOZ_NATIVE_JPEG +jpeg_calc_output_dimensions +jpeg_consume_input +jpeg_CreateCompress +jpeg_CreateDecompress +jpeg_destroy_compress +jpeg_destroy_decompress +jpeg_finish_compress +jpeg_finish_decompress +jpeg_finish_output +jpeg_has_multiple_scans +jpeg_input_complete +jpeg_read_header +jpeg_read_scanlines +jpeg_resync_to_restart +jpeg_save_markers +jpeg_set_defaults +jpeg_set_quality +jpeg_start_compress +jpeg_start_decompress +jpeg_start_output +jpeg_std_error +jpeg_write_scanlines +jpeg_write_raw_data +jpeg_stdio_dest +jpeg_abort +jpeg_abort_decompress +jpeg_read_raw_data +#endif +WebPDemuxDelete +WebPDemuxGetChunk +WebPDemuxGetFrame +WebPDemuxGetI +WebPDemuxInternal +WebPDemuxNextFrame +WebPDemuxReleaseChunkIterator +WebPDemuxReleaseIterator +WebPFreeDecBuffer +WebPIDecGetRGB +WebPIDelete +WebPINewDecoder +WebPIUpdate +WebPInitDecBufferInternal +qcms_enable_iccv4 +qcms_data_from_unicode_path +qcms_data_from_path +qcms_profile_create_rgb_with_gamma +qcms_profile_from_memory +qcms_profile_from_path +qcms_profile_from_unicode_path +qcms_profile_get_color_space +qcms_profile_get_rendering_intent +qcms_profile_is_bogus +qcms_profile_precache_output_transform +qcms_profile_release +qcms_profile_sRGB +qcms_transform_create +qcms_transform_data +qcms_transform_release +MOZ_XMLCheckQName +MOZ_XMLIsLetter +MOZ_XMLIsNCNameChar +MOZ_XMLTranslateEntity +MOZ_XML_ExternalEntityParserCreate +MOZ_XML_GetBase +MOZ_XML_GetCurrentByteIndex +MOZ_XML_GetCurrentColumnNumber +MOZ_XML_GetCurrentLineNumber +MOZ_XML_GetErrorCode +MOZ_XML_GetIdAttributeIndex +MOZ_XML_GetMismatchedTag +MOZ_XML_GetSpecifiedAttributeCount +MOZ_XML_Parse +MOZ_XML_ParserCreate_MM +MOZ_XML_ParserFree +MOZ_XML_ResumeParser +MOZ_XML_SetBase +MOZ_XML_SetCdataSectionHandler +MOZ_XML_SetCharacterDataHandler +MOZ_XML_SetCommentHandler +MOZ_XML_SetDefaultHandlerExpand +MOZ_XML_SetDoctypeDeclHandler +MOZ_XML_SetElementHandler +MOZ_XML_SetExternalEntityRefHandler +MOZ_XML_SetExternalEntityRefHandlerArg +MOZ_XML_SetNamespaceDeclHandler +MOZ_XML_SetNotationDeclHandler +MOZ_XML_SetParamEntityParsing +MOZ_XML_SetProcessingInstructionHandler +MOZ_XML_SetReturnNSTriplet +MOZ_XML_SetUnparsedEntityDeclHandler +MOZ_XML_SetUserData +MOZ_XML_SetXmlDeclHandler +MOZ_XML_StopParser +#ifdef MOZ_TREE_CAIRO +_moz_cairo_append_path +_moz_cairo_arc +_moz_cairo_arc_negative +_moz_cairo_clip +_moz_cairo_clip_extents +_moz_cairo_clip_preserve +_moz_cairo_close_path +_moz_cairo_copy_clip_rectangle_list +_moz_cairo_copy_path +_moz_cairo_copy_path_flat +_moz_cairo_create +_moz_cairo_curve_to +_moz_cairo_d2d_create_device +_moz_cairo_d2d_create_device_from_d3d10device +_moz_cairo_d2d_device_get_device +_moz_cairo_d2d_get_dc +_moz_cairo_d2d_get_image_surface_cache_usage +_moz_cairo_d2d_get_surface_vram_usage +_moz_cairo_d2d_present_backbuffer +_moz_cairo_d2d_release_dc +_moz_cairo_d2d_scroll +_moz_cairo_d2d_surface_create +_moz_cairo_d2d_surface_create_for_handle +_moz_cairo_d2d_surface_create_for_hwnd +_moz_cairo_d2d_surface_create_for_texture +_moz_cairo_d2d_surface_get_height +_moz_cairo_d2d_surface_get_texture +_moz_cairo_d2d_surface_get_width +_moz_cairo_debug_reset_static_data +_moz_cairo_destroy +_moz_cairo_device_to_user +_moz_cairo_device_to_user_distance +_moz_cairo_dwrite_font_face_create_for_dwrite_fontface +_moz_cairo_dwrite_get_cleartype_rendering_mode +_moz_cairo_dwrite_scaled_font_allow_manual_show_glyphs +_moz_cairo_dwrite_scaled_font_get_force_GDI_classic +_moz_cairo_dwrite_scaled_font_set_force_GDI_classic +_moz_cairo_dwrite_set_cleartype_params +_moz_cairo_fill +_moz_cairo_fill_extents +_moz_cairo_fill_preserve +_moz_cairo_font_face_destroy +_moz_cairo_font_options_create +_moz_cairo_font_options_destroy +_moz_cairo_font_options_get_antialias +_moz_cairo_font_options_get_hint_metrics +_moz_cairo_font_options_set_antialias +_moz_cairo_format_stride_for_width +_moz_cairo_get_antialias +_moz_cairo_get_current_point +_moz_cairo_get_dash +_moz_cairo_get_dash_count +_moz_cairo_get_fill_rule +_moz_cairo_get_font_matrix +_moz_cairo_get_font_options +_moz_cairo_get_group_target +_moz_cairo_get_line_cap +_moz_cairo_get_line_join +_moz_cairo_get_line_width +_moz_cairo_get_matrix +_moz_cairo_get_miter_limit +_moz_cairo_get_operator +_moz_cairo_get_scaled_font +_moz_cairo_get_source +_moz_cairo_get_target +_moz_cairo_glyph_extents +_moz_cairo_glyph_path +_moz_cairo_identity_matrix +_moz_cairo_image_surface_create +_moz_cairo_image_surface_create_for_data +_moz_cairo_image_surface_get_data +_moz_cairo_image_surface_get_format +_moz_cairo_image_surface_get_height +_moz_cairo_image_surface_get_stride +_moz_cairo_image_surface_get_width +_moz_cairo_in_fill +_moz_cairo_in_stroke +_moz_cairo_line_to +_moz_cairo_mask +_moz_cairo_mask_surface +_moz_cairo_matrix_init +_moz_cairo_matrix_init_identity +_moz_cairo_matrix_init_scale +_moz_cairo_matrix_init_translate +_moz_cairo_matrix_invert +_moz_cairo_matrix_multiply +_moz_cairo_matrix_rotate +_moz_cairo_matrix_scale +_moz_cairo_matrix_transform_distance +_moz_cairo_matrix_transform_point +_moz_cairo_matrix_translate +_moz_cairo_move_to +_moz_cairo_new_path +_moz_cairo_new_sub_path +_moz_cairo_null_surface_create +_moz_cairo_paint +_moz_cairo_paint_with_alpha +_moz_cairo_path_destroy +_moz_cairo_path_extents +_moz_cairo_pattern_add_color_stop_rgba +_moz_cairo_pattern_create_for_surface +_moz_cairo_pattern_create_linear +_moz_cairo_pattern_create_radial +_moz_cairo_pattern_create_rgba +_moz_cairo_pattern_destroy +_moz_cairo_pattern_get_color_stop_count +_moz_cairo_pattern_get_color_stop_rgba +_moz_cairo_pattern_get_extend +_moz_cairo_pattern_get_filter +_moz_cairo_pattern_get_linear_points +_moz_cairo_pattern_get_matrix +_moz_cairo_pattern_get_radial_circles +_moz_cairo_pattern_get_rgba +_moz_cairo_pattern_get_surface +_moz_cairo_pattern_get_type +_moz_cairo_pattern_reference +_moz_cairo_pattern_set_extend +_moz_cairo_pattern_set_filter +_moz_cairo_pattern_set_matrix +_moz_cairo_pattern_status +_moz_cairo_pdf_surface_create_for_stream +_moz_cairo_pop_group +_moz_cairo_pop_group_to_source +_moz_cairo_push_group +_moz_cairo_push_group_with_content +_moz_cairo_rectangle +_moz_cairo_rectangle_list_destroy +_moz_cairo_reference +_moz_cairo_release_device +_moz_cairo_reset_clip +_moz_cairo_restore +_moz_cairo_rotate +_moz_cairo_save +_moz_cairo_scale +_moz_cairo_scaled_font_create +_moz_cairo_scaled_font_destroy +_moz_cairo_scaled_font_get_font_matrix +_moz_cairo_scaled_font_get_font_options +_moz_cairo_scaled_font_get_type +_moz_cairo_scaled_font_glyph_extents +_moz_cairo_scaled_font_reference +_moz_cairo_scaled_font_status +_moz_cairo_set_antialias +_moz_cairo_set_dash +_moz_cairo_set_fill_rule +_moz_cairo_set_font_face +_moz_cairo_set_font_options +_moz_cairo_set_font_size +_moz_cairo_set_line_cap +_moz_cairo_set_line_join +_moz_cairo_set_line_width +_moz_cairo_set_matrix +_moz_cairo_set_miter_limit +_moz_cairo_set_operator +_moz_cairo_set_scaled_font +_moz_cairo_set_source +_moz_cairo_set_source_rgba +_moz_cairo_set_source_surface +_moz_cairo_show_glyphs +_moz_cairo_status +_moz_cairo_status_to_string +_moz_cairo_stroke +_moz_cairo_stroke_extents +_moz_cairo_stroke_preserve +_moz_cairo_surface_attach_snapshot +_moz_cairo_surface_create_similar +_moz_cairo_surface_destroy +_moz_cairo_surface_finish +_moz_cairo_surface_flush +_moz_cairo_surface_get_content +_moz_cairo_surface_get_device_offset +_moz_cairo_surface_get_reference_count +_moz_cairo_surface_get_subpixel_antialiasing +_moz_cairo_surface_get_type +_moz_cairo_surface_get_user_data +_moz_cairo_surface_mark_dirty +_moz_cairo_surface_mark_dirty_rectangle +_moz_cairo_surface_reference +_moz_cairo_surface_set_device_offset +_moz_cairo_surface_set_fallback_resolution +_moz_cairo_surface_set_subpixel_antialiasing +_moz_cairo_surface_set_user_data +_moz_cairo_surface_show_page +_moz_cairo_surface_status +_moz_cairo_tee_surface_add +_moz_cairo_tee_surface_create +_moz_cairo_tee_surface_index +_moz_cairo_transform +_moz_cairo_translate +_moz_cairo_user_to_device +_moz_cairo_user_to_device_distance +_moz_cairo_win32_font_face_create_for_logfontw +_moz_cairo_win32_font_face_create_for_logfontw_hfont +_moz_cairo_win32_get_dc_with_clip +_moz_cairo_win32_get_system_text_quality +#ifdef NS_PRINTING +_moz_cairo_win32_printing_surface_create +#endif +_moz_cairo_win32_scaled_font_select_font +_moz_cairo_win32_surface_create +_moz_cairo_win32_surface_create_with_alpha +_moz_cairo_win32_surface_create_with_d3dsurface9 +_moz_cairo_win32_surface_create_with_ddb +_moz_cairo_win32_surface_create_with_dib +_moz_cairo_win32_surface_get_dc +_moz_cairo_win32_surface_get_height +_moz_cairo_win32_surface_get_image +_moz_cairo_win32_surface_get_width +_moz_cairo_win32_surface_set_can_convert_to_dib +#ifdef MOZ_TREE_PIXMAN +_moz_pixman_image_composite32 +_moz_pixman_image_create_bits +_moz_pixman_image_set_filter +_moz_pixman_image_set_transform +_moz_pixman_image_unref +_moz_pixman_transform_from_pixman_f_transform +_moz_pixman_transform_invert +_moz_pixman_region32_reset +_moz_pixman_region32_init +_moz_pixman_region32_init_rect +_moz_pixman_region32_init_rects +_moz_pixman_region32_init_with_extents +_moz_pixman_region32_fini +_moz_pixman_region32_translate +_moz_pixman_region32_copy +_moz_pixman_region32_intersect +_moz_pixman_region32_intersect_rect +_moz_pixman_region32_union +_moz_pixman_region32_union_rect +_moz_pixman_region32_subtract +_moz_pixman_region32_inverse +_moz_pixman_region32_contains_point +_moz_pixman_region32_contains_rectangle +_moz_pixman_region32_not_empty +_moz_pixman_region32_extents +_moz_pixman_region32_n_rects +_moz_pixman_region32_rectangles +_moz_pixman_region32_equal +_moz_pixman_region32_selfcheck +_moz_pixman_region32_reset +_moz_pixman_region32_clear +#endif +#endif +hb_blob_create +hb_blob_destroy +hb_blob_get_data +hb_blob_get_empty +hb_blob_get_length +hb_blob_reference +hb_buffer_add_utf16 +hb_buffer_create +hb_buffer_destroy +hb_buffer_get_glyph_infos +hb_buffer_get_glyph_positions +hb_buffer_reverse +hb_buffer_set_cluster_level +hb_buffer_set_direction +hb_buffer_set_language +hb_buffer_set_script +hb_buffer_set_unicode_funcs +hb_face_create_for_tables +hb_face_destroy +hb_face_reference +hb_font_create +hb_font_destroy +hb_font_funcs_create +hb_font_funcs_set_glyph_contour_point_func +hb_font_funcs_set_glyph_extents_func +hb_font_funcs_set_glyph_func +hb_font_funcs_set_glyph_h_advance_func +hb_font_funcs_set_glyph_h_kerning_func +hb_font_funcs_set_glyph_h_origin_func +hb_font_funcs_set_glyph_v_origin_func +hb_font_funcs_set_glyph_v_advance_func +hb_font_funcs_set_nominal_glyph_func +hb_font_funcs_set_variation_glyph_func +hb_font_set_funcs +hb_font_set_ppem +hb_font_set_scale +hb_language_from_string +hb_ot_layout_collect_lookups +hb_ot_layout_feature_get_lookups +hb_ot_layout_has_positioning +hb_ot_layout_has_substitution +hb_ot_layout_language_find_feature +hb_ot_layout_language_get_feature_indexes +hb_ot_layout_language_get_feature_tags +hb_ot_layout_language_get_required_feature_index +hb_ot_layout_lookup_collect_glyphs +hb_ot_layout_script_get_language_tags +hb_ot_layout_table_choose_script +hb_ot_layout_table_find_script +hb_ot_layout_table_get_script_tags +hb_ot_math_get_constant +hb_ot_math_get_glyph_assembly +hb_ot_math_get_glyph_italics_correction +hb_ot_math_get_glyph_variants +hb_ot_math_has_data +hb_ot_tag_to_language +hb_ot_tag_to_script +hb_ot_tags_from_script +hb_set_add +hb_set_clear +hb_set_create +hb_set_destroy +hb_set_get_population +hb_set_has +hb_set_intersect +hb_set_is_empty +hb_set_next +hb_shape +hb_unicode_funcs_create +hb_unicode_funcs_get_empty +hb_unicode_funcs_set_combining_class_func +hb_unicode_funcs_set_compose_func +hb_unicode_funcs_set_decompose_func +hb_unicode_funcs_set_eastasian_width_func +hb_unicode_funcs_set_general_category_func +hb_unicode_funcs_set_mirroring_func +hb_unicode_funcs_set_script_func +BrotliDecoderCreateInstance +BrotliDecoderDecompress +BrotliDecoderDecompressStream +BrotliDecoderDestroyInstance +BrotliDecoderIsFinished +BrotliDecoderStateCleanup +BrotliDecoderStateInit |