| # Copyright 2019 The Flutter Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/toolchain/wasm.gni") |
| |
| wasm_lib("skwasm") { |
| sources = [ |
| "canvas.cpp", |
| "contour_measure.cpp", |
| "data.cpp", |
| "export.h", |
| "filters.cpp", |
| "fonts.cpp", |
| "helpers.h", |
| "image.cpp", |
| "paint.cpp", |
| "path.cpp", |
| "picture.cpp", |
| "shaders.cpp", |
| "skwasm_support.h", |
| "string.cpp", |
| "surface.cpp", |
| "text/line_metrics.cpp", |
| "text/paragraph.cpp", |
| "text/paragraph_builder.cpp", |
| "text/paragraph_style.cpp", |
| "text/strut_style.cpp", |
| "text/text_style.cpp", |
| "vertices.cpp", |
| "wrappers.h", |
| ] |
| |
| ldflags = [ |
| "-std=c++20", |
| "-lGL", |
| "-sUSE_WEBGL2=1", |
| "-sMAX_WEBGL_VERSION=2", |
| "-sOFFSCREENCANVAS_SUPPORT", |
| "-sPTHREAD_POOL_SIZE=1", |
| "-sALLOW_MEMORY_GROWTH", |
| "-sALLOW_TABLE_GROWTH", |
| "-sUSE_PTHREADS=1", |
| "-lexports.js", |
| "-sEXPORTED_FUNCTIONS=[stackAlloc]", |
| "-sEXPORTED_RUNTIME_METHODS=[addFunction,removeFunction,skwasm_registerObject,skwasm_unregisterObject,skwasm_getObject,skwasm_transferObjectToThread]", |
| "-Wno-pthreads-mem-growth", |
| "--js-library", |
| rebase_path("library_skwasm_support.js"), |
| ] |
| |
| inputs = [ rebase_path("library_skwasm_support.js") ] |
| |
| if (is_debug) { |
| ldflags += [ |
| "-sDEMANGLE_SUPPORT=1", |
| "-sASSERTIONS=1", |
| "-sGL_ASSERTIONS=1", |
| ] |
| } |
| |
| deps = [ |
| "//third_party/skia", |
| "//third_party/skia/modules/skparagraph", |
| ] |
| } |